Fix previous change in filestuff.c
[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         (O_NOINHERIT): Define if not defined.
7
8 2018-11-19  John Darrington <john@darrington.wattle.id.au>
9
10         *s12z-tdep.c (s12z_frame_cache): Add an assertion.
11
12 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
13
14         * infrun.c (displaced_step_inferior_state) <next>: Remove.
15
16 2018-11-19  Tom Tromey  <tom@tromey.com>
17
18         * source.c (get_filename_and_charpos): Return void.
19
20 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
21
22         * skip.c (_initialize_step_skip): Fix "info skip" help.
23
24 2018-11-16  Tom Tromey  <tom@tromey.com>
25
26         PR rust/23625:
27         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
28
29 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
30
31         * infrun.c (displaced_step_inferior_states): Change type to
32         std::forward_list.
33         (get_displaced_stepping_state): Adjust.
34         (displaced_step_in_progress_any_inferior): Adjust.
35         (add_displaced_stepping_state): Adjust.
36         (remove_displaced_stepping_state): Adjust.
37
38 2018-11-18  Tom Tromey  <tom@tromey.com>
39
40         PR build/23814:
41         * target-delegates.c: Rebuild.
42         * ia64-linux-nat.c (class ia64_linux_nat_target)
43         <have_steppable_watchpoint>: Use override.  Return true, not 1.
44         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
45         "self" argument.
46         (ia64_linux_nat_target::low_new_thread): Rename.
47         (class ia64_linux_nat_target) <read_description>: Don't declare.
48         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
49         bool.
50
51 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
52
53         PR gdb/22736:
54         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
55         lang_struct_return code.
56
57 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
58
59         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
60         return_method.
61         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
62         * amd64-tdep.c (amd64_push_arguments): Likewise.
63         (amd64_push_dummy_call): Likewise.
64         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
65         * arc-tdep.c (arc_push_dummy_call): Likewise.
66         * arm-tdep.c (arm_push_dummy_call): Likewise.
67         * avr-tdep.c (avr_push_dummy_call): Likewise.
68         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
69         * cris-tdep.c (cris_push_dummy_call): Likewise.
70         * csky-tdep.c (csky_push_dummy_call): Likewise.
71         * frv-tdep.c (frv_push_dummy_call): Likewise.
72         * gdbarch.c: Regenerate.
73         * gdbarch.h: Regenerate.
74         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
75         return_method.
76         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
77         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
78         (hppa64_push_dummy_call): Likewise.
79         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
80         * i386-tdep.c (i386_push_dummy_call): Likewise.
81         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
82         * infcall.c (call_function_by_hand_dummy): Likewise.
83         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
84         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
85         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
86         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
87         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
88         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
89         * mep-tdep.c (mep_push_dummy_call): Likewise.
90         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
91         (mips_n32n64_push_dummy_call): Likewise.
92         (mips_o32_push_dummy_call): Likewise.
93         (mips_o64_push_dummy_call): Likewise.
94         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
95         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
96         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
97         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
98         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
99         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
100         (ppc64_sysv_abi_push_dummy_call): Likewise.
101         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
102         (ppc64_sysv_abi_push_dummy_call): Likewise.
103         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
104         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
105         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
106         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
107         * rx-tdep.c (rx_push_dummy_call): Likewise.
108         * s390-tdep.c (s390_push_dummy_call): Likewise.
109         * score-tdep.c (score_push_dummy_call): Likewise.
110         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
111         (sh_push_dummy_call_nofpu): Likewise.
112         * sparc-tdep.c (sparc32_store_arguments): Likewise.
113         (sparc32_push_dummy_call): Likewise.
114         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
115         (sparc64_push_dummy_call): Likewise.
116         * spu-tdep.c (spu_push_dummy_call): Likewise.
117         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
118         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
119         * v850-tdep.c (v850_push_dummy_call): Likewise.
120         * vax-tdep.c (vax_push_dummy_call): Likewise.
121         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
122         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
123
124 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
125
126         * gdbarch.sh (enum function_call_return_method): Add enum.
127         * gdbarch.h: Regenerate.
128         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
129
130 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
131
132         * unittests/copy_bitwise-selftests.c: New file.
133         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
134         (selftests::copy_bitwise_tests): Delete, moving this code to
135         unittests/copy_bitwise-selftests.c instead.
136         (_initialize_utils): Do not register copy_bitwise tests.
137         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
138         unittests/copy_bitwise-selftests.c.
139
140 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
141
142         * ada-lang.c (move_bits): Delete. Update all callers to use
143         copy_bitwise instead.
144         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
145         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
146         Move from here to utils.c.
147         (_initialize_dwarf2loc): Remove call to register copy_bitwise
148         selftests.
149         * utils.h (copy_bitwise): Add declaration.
150         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
151         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
152         Moved here from dwarf2loc.c.
153         (_initialize_utils): Register copy_bitwise selftests.
154
155 2018-11-14  Jim Wilson  <jimw@sifive.com>
156
157         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
158         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
159         then increment next_regnum if odd.
160         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
161         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
162         function type.  Pass new arg to riscv_arg_location based on function
163         type.
164         (riscv_return_value): Pass new arg to riscv_arg_location.
165
166         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
167         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
168         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
169
170         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
171         setting len.  New local align, set to max of arg align and xlen,
172         and pass to first riscv_assign_stack_location call.
173
174 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
175
176         * skip.c (complete_skip_number): New function.
177         (_initialize_step_skip): Add completers to some skip commands.
178
179 2018-11-09  Tom Tromey  <tom@tromey.com>
180
181         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
182         (struct remote_g_packet_data): Derive from allocate_on_obstack.
183         <guesses>: Now a std::vector.
184         (remote_g_packet_data_init, register_remote_g_packet_guess):
185         Update.
186         (remote_read_description_p): Update.  Return bool.
187         (remote_target::read_description): Update.
188         (struct remote_g_packet_guess): Add constructor.
189
190 2018-11-09  Tom Tromey  <tom@tromey.com>
191
192         * common/scoped_fd.h (class scoped_fd): Add move constructor and
193         move assignment operator.
194         * psymtab.c (psymtab_to_fullname): Update.
195         * source.h (open_source_file): Return scoped_fd.
196         (find_and_open_source): Likewise.
197         * source.c (open_source_file): Return scoped_fd.
198         (get_filename_and_charpos): Update.
199         (print_source_lines_base): Update.  Use scoped_fd::to_file.
200         (forward_search_command): Likewise.
201         (reverse_search_command): Likewise.
202         (find_and_open_source): Return scoped_fd.
203         * tui/tui-source.c (tui_set_source_content): Update.  Use
204         gdb_file_up.
205
206 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
207
208         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
209         overflow.
210
211 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
212
213         * configure: Regenerate.
214
215 2018-11-09  Tom de Vries  <tdevries@suse.de>
216
217         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
218         unconditionally, to set the language of the symbol.  Manage freeing
219         returned pointer using gdb::unique_xmalloc_ptr.
220
221 2018-11-08  Tom Tromey  <tom@tromey.com>
222
223         * record.c (require_record_target): Upper-case "<TAB>".
224
225 2018-11-08  Tom Tromey  <tom@tromey.com>
226
227         * python/lib/gdb/command/pretty_printers.py
228         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
229
230 2018-11-08  Tom Tromey  <tom@tromey.com>
231
232         PR gdb/23555:
233         PR gdb/23838:
234         * target.h (target_supports_terminal_ours): Return bool.
235         * target.c (target_supports_terminal_ours): Handle case where
236         current_top_target returns nullptr.  Return bool.
237
238 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
239
240         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
241         return the correct count for potential HFAs.
242
243 2018-11-08  Jan Beulich  <jbeulich@suse.com>
244
245         * i387-tdep.c (i387_supply_xsave): Split handling of
246         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
247         (i387_collect_xsave): Likewise.
248
249 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
250
251         * riscv-tdep.c (riscv_insn::decode): Update header comment.
252         (riscv_frame_this_id): Catch errors thrown while building the
253         frame cache, leave the frame id as the default, which is the outer
254         frame id.
255
256 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
257
258         * ada-lang.c (read_atcb): Only set task_info->called_task if
259         task_info->state == Entry_Caller_Sleep.
260         (print_ada_task_info): Do not check task_info->state before
261         checking task_info->called_task.
262         (info_task): Likewise.
263
264 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
265
266         * ada-tasks.c (read_atcb): Clear task_info before computing
267         the value of each of its fields.
268
269 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
270
271         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
272         NULL before dereferencing it.
273
274 2018-11-06  Tom de Vries  <tdevries@suse.de>
275
276         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
277         program headers.
278
279 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
280
281         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
282         so that it applies to uclinux as well.
283
284 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
285
286         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
287         when on AAPCS.
288
289 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
290
291         * riscv-fbsd-nat.c (getregs_supplies): Return true for
292         RISCV_CSR_SSTATUS_REGNUM.
293
294 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
295
296         * source.c (open_source_file): Fix leak by transferring the
297         current s->fullname to the unique_xmalloc_ptr fullname given
298         to find_and_open_source.
299
300 2018-11-04  Tom Tromey  <tom@tromey.com>
301
302         * varobj.c (install_default_visualizer): Update.
303         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
304         Return gdbpy_ref.
305         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
306         (find_pretty_printer_from_progspace)
307         (find_pretty_printer_from_gdb, find_pretty_printer)
308         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
309         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
310         Update.
311
312 2018-11-04  Tom Tromey  <tom@tromey.com>
313
314         * python/python.c (gdbpy_parameter_value): Update.
315         * python/python-internal.h (python_string_to_unicode)
316         (python_string_to_target_python_string)
317         (host_string_to_python_string): Return gdbpy_ref.
318         * python/py-utils.c (python_string_to_unicode)
319         (unicode_to_encoded_python_string)
320         (unicode_to_target_python_string)
321         (python_string_to_target_string)
322         (python_string_to_target_python_string): Return gdbpy_ref.
323         (python_string_to_host_string): Update.
324         (host_string_to_python_string): Return gdbpy_ref.
325         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
326         (stpy_fullname): Update.
327         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
328         Update.
329         * python/py-prettyprint.c (print_string_repr): Update.
330         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
331         (objfpy_get_build_id): Update.
332         * python/py-breakpoint.c (bppy_get_location)
333         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
334         Update.
335
336 2018-11-04  Tom Tromey  <tom@tromey.com>
337
338         * python/python-internal.h (gdb_py_object_from_longest)
339         (gdb_py_object_from_ulongest): Return gdbpy_ref.
340         * python/py-value.c (valpy_int): Update.
341         * python/py-utils.c (gdb_py_object_from_longest): Return
342         gdbpy_ref.
343         (gdb_py_object_from_ulongest): Likewise.
344         * python/py-type.c (typy_get_alignof): Update.
345         * python/py-linetable.c (ltpy_get_all_source_lines)
346         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
347         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
348
349 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
350
351         * ada-lang.c (_initialize_ada_language): Fix typo.
352
353 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
354
355         * language.c (type): Remove.
356         (_initialize_language): Remove assignment to type.
357
358 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
359
360         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
361         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
362         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
363         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
364         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
365         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
366         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
367         and aarch64-ravenscar-thread.o.
368         * NEWS: Add entry documenting Ravenscar tasking support
369         on AArch64 ELF.
370
371 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
372
373         * symtab.c (info_functions_command): Initialize quiet flag.
374         * stack.c (info_args_command): Likewise.
375
376 2018-11-01  Jim Wilson  <jimw@sifive.com>
377
378         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
379         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
380         debugging messages.
381
382 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
383
384         * ada-lang.c (ada_watch_location_expression): New function.
385         (ada_language_defn): Set la_watch_location_expression to
386         ada_watch_location_expression.
387
388 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
389
390         * print-utils.c (int_string): Remove unnecessary trailing spaces.
391
392 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
393
394         * rs6000-tdep.c (skip_prologue): Fix potential negative left
395         shifting.
396
397 2018-11-01  Jerome Guitton  <guitton@adacore.com>
398             Joel Brobecker  <brobecker@adacore.com>
399
400         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
401         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
402         * arm-pikeos-tdep.c: New file.
403         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
404         embedded system.
405         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
406
407 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
408
409         * common/pathstuff.c (get_standard_temp_dir): New.
410         * common/pathstuff.h (get_standard_temp_dir): New.
411         * config.in: Re-generate.
412         * configure: Re-generate.
413         * configure.ac: Don't check for mkdtemp.
414         * gnulib/aclocal-m4-deps.mk: Re-generate.
415         * gnulib/aclocal.m4: Re-generate.
416         * gnulib/config.in: Re-generate.
417         * gnulib/configure: Re-generate.
418         * gnulib/import/Makefile.am: Re-generate.
419         * gnulib/import/Makefile.in: Re-generate.
420         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
421         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
422         * gnulib/import/m4/mkdtemp.m4: New file.
423         * gnulib/import/mkdtemp.c: New file.
424         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
425         Add mkdtemp module.
426         * unittests/mkdir-recursive-selftests.c (test): Use
427         get_standard_temp_dir.
428         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
429         ifdef.
430         * compile/compile.c (get_compile_file_tempdir): Likewise.
431
432 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
433
434         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
435         (SIG_FRAME_LR_OFFSET64): New define.
436         (SIG_FRAME_FP_OFFSET64): New define.
437         (aix_sighandle_frame_cache): New Function.
438         (aix_sighandle_frame_this_id): New Function.
439         (aix_sighandle_frame_prev_register): New Function.
440         (aix_sighandle_frame_sniffer): New Function.
441         (aix_sighandle_frame_unwind): New global variable.
442         (rs6000_aix_init_osabi): Install new frame unwinder.
443
444 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
445
446         PR gdb/23835
447         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
448         already defined.
449
450 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
451
452         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
453
454 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
455
456         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
457         (producer_is_icc): New function.
458         (check_producer): Set producer_is_icc field on dwarf2_cu.
459         (dwarf2_init_integer_type): New function.
460         (read_base_type): Call dwarf2_init_integer_type instead of
461         init_integer_type in all cases.
462         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
463         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
464         LEN is greater than 0.
465
466 2018-10-30  Tom Tromey  <tom@tromey.com>
467
468         * main.c (captured_main_1): Check return value of bfd_init.
469
470 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
471
472         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
473         Adjust comments.
474
475 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
476
477         * procfs.c: Include common/pathstuff.h.
478
479 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
480
481         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
482         Add missing braces.  No functional change.
483
484 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
485
486         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
487         to report a bad option and fix indentation.
488         * demangle.c (demangle_command): Use report_unrecognized_option_error
489         to report a bad option and correctly report the bad option.
490
491 2018-10-27  Tom Tromey  <tom@tromey.com>
492
493         PR cli/23364:
494         * darwin-nat.c (copied_shell): New global.
495         (may_have_sip): Rename from should_disable_startup_with_shell.
496         (copy_shell_to_cache, maybe_cache_shell): New functions.
497         (darwin_nat_target::create_inferior): Update.  Use
498         copied_shell.
499
500 2018-10-27  Tom Tromey  <tom@tromey.com>
501
502         * unittests/scoped_fd-selftests.c (test_to_file): New function.
503         (run_tests): Call test_to_file.
504         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
505         temporary files.
506         * common/scoped_fd.h (scoped_fd::to_file): New method.
507
508 2018-10-27  Tom Tromey  <tom@tromey.com>
509
510         * unittests/scoped_mmap-selftests.c (test_normal): Use
511         gdb_mkostemp_cloexec.
512         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
513         Use gdb_mkostemp_cloexec.
514         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
515         gnulib/config.in, gnulib/configure,
516         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
517         gnulib/import/m4/gnulib-cache.m4,
518         gnulib/import/m4/gnulib-comp.m4: Update.
519         * gnulib/import/m4/mkostemp.m4: New file.
520         * gnulib/import/m4/mkstemp.m4: Remove.
521         * gnulib/import/mkostemp.c: New file.
522         * gnulib/import/mkstemp.m4: Remove.
523         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
524         mkstemp, add mkostemp.  Apply new patch.
525         * gnulib/import/stdlib.in.h: Apply patch.
526         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
527         New file.
528         * dwarf-index-write.c (write_psymtabs_to_index): Use
529         gdb_mkostemp_cloexec.
530         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
531
532 2018-10-27  Tom Tromey  <tom@tromey.com>
533
534         * unittests/mkdir-recursive-selftests.c: New file.
535         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
536         unittests/mkdir-recursive-selftests.c.
537         * dwarf-index-cache.c (mkdir_recursive): Move to
538         common/filestuff.c.
539         (index_cache::store): Check return value of mkdir_recursive.
540         (create_dir_and_check, test_mkdir_recursive): Move to new file.
541         (_initialize_index_cache): Don't register test.
542         * common/filestuff.h (mkdir_recursive): Declare.
543         * common/filestuff.c (mkdir_recursive): Move from
544         dwarf-index-cache.c.  Return bool.
545
546 2018-10-27  Tom Tromey  <tom@tromey.com>
547
548         * dwarf-index-write.c (write_psymtabs_to_index): Move
549         make_temp_filename to common/pathstuff.c.
550         * common/pathstuff.h (make_temp_filename): Declare.
551         * common/pathstuff.c (make_temp_filename): New function, moved
552         from dwarf-index-write.c.
553
554 2018-10-27  Tom Tromey  <tom@tromey.com>
555
556         * procfs.c (procfs_target::create_inferior): Use get_shell.
557         * cli/cli-cmds.c (shell_escape): Use get_shell.
558         * windows-nat.c (windows_nat_target::create_inferior): Use
559         get_shell.
560         * common/pathstuff.c (get_shell): New function.
561         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
562         (fork_inferior): Use get_shell.
563         * common/pathstuff.h (get_shell): Declare.
564
565 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
566
567         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
568
569 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
570
571         * stack.c (print_variable_and_value_data): Add preg and treg.
572         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
573         and update callers.
574         (print_frame_arg_vars): Likewise.
575         (prepare_reg): New function.
576         (info_locals_command): Extract info print args and use them.
577         (info_args_command): Likewise.
578         (_initialize_stack): Modify on-line help.
579         * symtab.c (treg_matches_sym_type_name): New function.
580         (search_symbols): New arg t_regexp.
581         (symtab_symbol_info): New args quiet, regexp, t_regexp.
582         (info_variables_command): Extract info print args and use them.
583         (info_functions_command): Likewise.
584         (info_types_command): Update call to symtab_symbol_info.
585         (_initialize_symtab): Modify on-line help.
586         * symtab.h (treg_matches_sym_type_name): New function.
587         (search_symbols): New t_regexp arg.
588
589 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
590
591         * cli-utils.c (extract_arg_maybe_quoted): New function.
592         (extract_info_print_args): New function.
593         (info_print_args_help): New function.
594         (report_unrecognized_option_error): New function.
595         * cli-utils.h (extract_arg_maybe_quoted): New function.
596         (extract_info_print_args): New function.
597         (info_print_args_help): New function.
598         (report_unrecognized_option_error): New function.
599
600 2018-10-26  Tom Tromey  <tom@tromey.com>
601
602         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
603         (compute_compunit_symtab_includes): Update.
604         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
605         (compunit_symtab_ptr): Likewise.
606
607 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
608
609         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
610         default_print_auxv_entry for specific tag values.
611
612 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
613
614         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
615
616 2018-10-26  Jim Wilson  <jimw@sifive.com>
617
618         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
619         (riscv_linux_sigframe_init): Declare.
620         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
621         (riscv_linux_sigframe): New.
622         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
623         (riscv_linux_sigframe_init): Define.
624         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
625
626         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
627         (riscv_isa_flen): Likewise.  Drop static.
628         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
629         (riscv_isa_flen): Likewise.  Declare.
630
631 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
632             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
633
634         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
635         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
636         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
637         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
638         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
639         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
640         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
641         Define.
642         (struct ppc_linux_features) <htm>: New field.
643         (ppc_linux_no_features): Add initializer for htm field.
644         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
645         new tdescs.
646         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
647         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
648         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
649         Define if not already defined.
650         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
651         and rs6000/powerpc-isa207-htm-vsx64l.
652         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
653         rs6000/powerpc-isa207-htm-vsx64l.xml.
654         * features/rs6000/power-htm-spr.xml: New file.
655         * features/rs6000/power-htm-core.xml: New file.
656         * features/rs6000/power64-htm-core.xml: New file.
657         * features/rs6000/power-htm-fpu.xml: New file.
658         * features/rs6000/power-htm-altivec.xml: New file.
659         * features/rs6000/power-htm-vsx.xml: New file.
660         * features/rs6000/power-htm-ppr.xml: New file.
661         * features/rs6000/power-htm-dscr.xml: New file.
662         * features/rs6000/power-htm-tar.xml: New file.
663         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
664         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
665         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
666         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
667         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
668         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
669         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
670         fetch_regset with HTM regsets.
671         (store_register, store_ppc_registers): Call store_regset with HTM
672         regsets.
673         (ppc_linux_nat_target::read_description): Set htm field in the
674         features struct if needed.
675         * ppc-linux-tdep.c: Include
676         features/rs6000/powerpc-isa207-htm-vsx32l.c and
677         features/rs6000/powerpc-isa207-htm-vsx64l.c.
678         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
679         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
680         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
681         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
682         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
683         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
684         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
685         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
686         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
687         (ppc32_linux_ctarregset): New globals.
688         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
689         (ppc_linux_collect_core_cpgrregset): New function.
690         (ppc_linux_iterate_over_regset_sections): Call back with the htm
691         regsets.
692         (ppc_linux_core_read_description): Check if the tm spr section is
693         present and set htm in the features struct.
694         (_initialize_ppc_linux_tdep): Call
695         initialize_tdesc_powerpc_isa207_htm_vsx32l and
696         initialize_tdesc_powerpc_isa207_htm_vsx64l.
697         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
698         Declare.
699         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
700         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
701         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
702         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
703         New fields.
704         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
705         Likewise.
706         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
707         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
708         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
709         New enum fields.
710         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
711         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
712         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
713         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
714         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
715         <PPC_CTAR_REGNUM>: Likewise.
716         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
717         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
718         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
719         (IS_CEFP_PSEUDOREG): Define.
720         (rs6000_register_name): Hide the upper halves of checkpointed VSX
721         registers.  Return names for the checkpointed DFP, VSX, and EFP
722         pseudo registers.
723         (rs6000_pseudo_register_type): Remove initial assert and raise an
724         internal error in the else clause instead.  Return types for the
725         checkpointed DFP, VSX, and EFP pseudo registers.
726         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
727         checkpointed DFP pseudo registers.
728         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
729         checkpointed VSX pseudo registers.
730         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
731         from efpr_pseudo_register_read and
732         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
733         registers.
734         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
735         Handle checkpointed DFP, VSX, and EFP registers.
736         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
737         (efp_ax_pseudo_register_collect): New functions.
738         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
739         register logic to new functions.  Handle checkpointed DFP, VSX,
740         and EFP pseudo registers.
741         (rs6000_gdbarch_init): Look for and validate the htm features.
742         Include checkpointed DFP, VSX and EFP pseudo-registers.
743         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
744         HTM registers.
745
746 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
747
748         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
749         without altivec or fpu.
750
751 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
752             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
753
754         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
755         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
756         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
757         Define if not already defined.
758         * features/rs6000/power-ebb.xml: New file.
759         * features/rs6000/power-linux-pmu.xml: New file.
760         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
761         features.
762         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
763         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
764         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
765         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
766         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
767         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
768         fetch_regset with ebb and pmu regsets.
769         (store_register, store_ppc_registers): Call store_regset with ebb
770         and pmu regsets.
771         (ppc_linux_nat_target::read_description): Set isa207 field in the
772         features struct if ebb and pmu are avaiable.
773         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
774         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
775         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
776         and pmu regsets.
777         (ppc_linux_core_read_description): Check if the pmu section is
778         present and set isa207 in the features struct.
779         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
780         (ppc32_linux_pmuregset): Declare.
781         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
782         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
783         <ppc_sier_regnum>: New field.
784         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
785         New enum values.
786         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
787         values.
788         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
789         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
790         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
791         ebb and pmu features.
792
793 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
794             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
795
796         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
797         (tdesc_powerpc_isa207_vsx64l): Declare.
798         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
799         (struct ppc_linux_features) <isa207>: New field.
800         (ppc_linux_no_features): Add initializer for isa207 field.
801         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
802         new tdescs.
803         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
804         (NT_PPC_TAR): Define if not already defined.
805         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
806         rs6000/powerpc-isa207-vsx64l.
807         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
808         rs6000/powerpc-isa207-vsx64l.xml.
809         * features/rs6000/power-tar.xml: New file.
810         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
811         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
812         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
813         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
814         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
815         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
816         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
817         fetch_regset with the TAR regset.
818         (store_register, store_ppc_registers): Call store_regset with the
819         TAR regset.
820         (ppc_linux_nat_target::read_description): Set isa207 field in the
821         features struct if needed.
822         * ppc-linux-tdep.c: Include
823         features/rs6000/powerpc-isa207-vsx32l.c and
824         features/rs6000/powerpc-isa207-vsx64l.c.
825         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
826         (ppc_linux_iterate_over_regset_sections): Call back with the tar
827         regset.
828         (ppc_linux_core_read_description): Check if the tar section is
829         present and set isa207 in the features struct.
830         (_initialize_ppc_linux_tdep): Call
831         initialize_tdesc_powerpc_isa207_vsx32l and
832         initialize_tdesc_powerpc_isa207_vsx64l.
833         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
834         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
835         (enum) <PPC_TAR_REGNUM>: New enum value.
836         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
837         feature.
838         (ppc_process_record_op31): Record changes to TAR.
839
840 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
841             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
842
843         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
844         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
845         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
846         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
847         (struct ppc_linux_features) <ppr_dscr>: New field.
848         (ppc_linux_no_features): Add initializer for ppr_dscr field.
849         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
850         new tdescs.
851         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
852         Define if not already defined.
853         * features/Makefile (WHICH): Add
854         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
855         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
856         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
857         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
858         * features/rs6000/power-dscr.xml: New file.
859         * features/rs6000/power-ppr.xml: New file.
860         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
861         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
862         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
863         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
864         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
865         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
866         * ppc-linux-nat.c: Include <sys/uio.h>.
867         (fetch_regset, store_regset, check_regset): New functions.
868         (fetch_register, fetch_ppc_registers): Call fetch_regset with
869         DSCR and PPR regsets.
870         (store_register, store_ppc_registers): Call store_regset with
871         DSCR and PPR regsets.
872         (ppc_linux_get_hwcap2): New function.
873         (ppc_linux_nat_target::read_description): Call
874         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
875         features struct if needed.
876         * ppc-linux-tdep.c: Include
877         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
878         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
879         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
880         (ppc32_linux_dscrregset): New globals.
881         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
882         and dscr regsets.
883         (ppc_linux_core_read_description): Check if the ppr and dscr
884         sections are present and set ppr_dscr in the features struct.
885         (_initialize_ppc_linux_tdep): Call
886         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
887         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
888         * ppc-linux-tdep.h (ppc32_linux_pprregset)
889         (ppc32_linux_dscrregset): Declare.
890         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
891         <ppc_dscr_regnum>: New field.
892         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
893         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
894         and dscr features.
895         (ppc_process_record_op31): Record changes to PPR and DSCR.
896
897 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
898
899         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
900         second initializer line for the have_* variables.  Initialize
901         have_fpu to 0 instead of 1.
902
903 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
904
905         * arch/ppc-linux-common.c (ppc_linux_match_description):
906         Parenthesize tdesc assignements and indent them properly.
907
908 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
909
910         * ppc-linux-nat.c (fetch_register): Change if statement to else
911         if.
912         (store_register): Likewise.
913
914 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
915
916         * rs6000-tdep.c: Remove reggroups.h include.
917         (rs6000_pseudo_register_reggroup_p): Remove.
918         (rs6000_gdbarch_init): Remove call to
919         set_tdesc_pseudo_register_reggroup_p.
920
921 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
922
923         * reggroups.c (default_register_reggroup_p): Return true for
924         decfloat registers and float_reggroup.
925
926 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
927
928         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
929         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
930         ppc_linux_collect_vrregset by regcache_collect_regset.
931
932 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
933
934         * linux-tdep.c (linux_collect_regset_section_cb): Use
935         std::vector<gdb_byte> instead of char * and malloc for buf.
936         Remove xfree.
937
938 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
939
940         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
941         symtab_start instead of always using language_unknown.
942
943 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
944
945         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
946         READ_P parameter, catch and ignore register access errors from
947         either the old or new MISA location.
948         (riscv_has_feature): Update call to riscv_read_misa_reg.
949
950 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
951
952         * python/py-function.c (convert_values_to_python): Return
953         gdbpy_ref<>.  Add header comment.
954         (fnpy_call): Adjust.
955
956 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
957
958         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
959         (cmdpy_completer_handle_brkchars): Adjust.
960         (cmdpy_completer): Adjust.
961
962 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
963
964         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
965         Pass correct regnum to raw_supply_zeroed.
966
967 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
968
969         * regcache.c (cooked_read_test): Add CSKY to the list of
970         architectures with a save_reggroup
971
972 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
973
974         PR gdb/23368
975         * infrun.c (follow_exec): In the follow_exec_mode_new case,
976         transfer terminal state from old new new inferior.
977         * terminal.h (swap_terminal_info): New function.
978         * inflow.c (swap_terminal_info): New function.
979
980 2018-10-23  Tom Tromey  <tom@tromey.com>
981
982         * record-btrace.c (get_thread_current_frame_id): Rename from
983         get_thread_current_frame.  Return a frame_id.
984         (record_btrace_start_replaying): Update.
985
986 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
987
988         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
989         for CSRs.
990
991 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
992
993         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
994         have_nonsteppable_watchpoint attribute to 1.
995
996 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
997
998         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
999         register names.
1000         (struct register_alias): Rename to...
1001         (struct riscv_register_alias): ...this, and update comment.
1002         (riscv_register_aliases): Update type, and alias names.  Remove
1003         CSR names from this list.
1004         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1005         register names.  Add an extra assertion.
1006         (riscv_is_regnum_a_named_csr): New function.
1007         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1008
1009 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1010
1011         * configure.tgt: Add configuration for s12z.
1012         * s12z-tdep.c:  New file.
1013         * NEWS: Mention new target.
1014
1015 2018-10-22  Jim Wilson  <jimw@sifive.com>
1016
1017         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1018         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1019
1020         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1021         (riscv_register_type): Use them.
1022         (riscv_print_one_register_info): Handle union of floats same as float.
1023         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1024         riscv_fpreg_q_type fields.
1025
1026 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1027
1028         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1029         * gdbarch.h: Re-generate.
1030         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1031         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1032         * eval.c (evaluate_subexp_standard): Likewise.
1033         * findvar.c (value_of_register): Likewise.
1034         (value_of_register_lazy): Likewise.
1035         (address_from_register): Likewise.
1036         * frame.c (get_frame_register_bytes): Likewise.
1037         * gdbarch-selftests.c (register_to_value_test): Likewise.
1038         * h8300-tdep.c (h8300_register_type): Likewise.
1039         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1040         (i386_svr4_reg_to_regnum): Likewise.
1041         * infcmd.c (default_print_registers_info): Likewise.
1042         (registers_info): Likewise.
1043         (print_vector_info): Likewise.
1044         (default_print_float_info): Likewise.
1045         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1046         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1047         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1048         (mi_cmd_data_list_changed_registers): Likewise.
1049         (mi_cmd_data_list_register_values): Likewise.
1050         (mi_cmd_data_write_register_values): Likewise.
1051         (mi_cmd_trace_frame_collected): Likewise.
1052         * mips-tdep.c (print_gp_register_row): Likewise.
1053         (mips_print_registers_info): Likewise.
1054         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1055         * regcache.c (init_regcache_descr): Likewise.
1056         (register_size): Likewise.
1057         (register_dump::dump): Likewise.
1058         (cooked_read_test): Likewise.
1059         (cooked_write_test): Likewise.
1060         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1061         (rs6000_gdbarch_init): Likewise.
1062         * stabsread.c (stab_reg_to_regnum): Likewise.
1063         * stack.c (info_frame_command): Likewise.
1064         * target-descriptions.c (tdesc_register_name): Likewise.
1065         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1066         * tui/tui-regs.c (tui_show_register_group): Likewise.
1067         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1068         (user_reg_map_regnum_to_name): Likewise.
1069         (value_of_user_reg): Likewise.
1070         (maintenance_print_user_registers): Likewise.
1071         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1072         (xtensa_register_name): Likewise.
1073         (xtensa_register_type): Likewise.
1074         (xtensa_reg_to_regnum): Likewise.
1075         (xtensa_pseudo_register_read): Likewise.
1076         (xtensa_pseudo_register_write): Likewise.
1077
1078 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1079
1080         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1081         correctly-sized buffer with raw_read.
1082         (amd64_pseudo_register_write): Use correctly-sized buffer for
1083         raw_read/raw_write.
1084
1085 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1086
1087         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1088         in add_prefix_cmd of set print type.
1089
1090 2018-10-19  Tom Tromey  <tom@tromey.com>
1091
1092         PR tui/18388:
1093         * NEWS: Mention tabset deprecation.
1094         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1095         (update_tab_width): New function.
1096         (tui_set_tab_width, tui_show_tab_width): New functions.
1097         (tui_set_tab_width_command): Use update_tab_width.
1098         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1099         Add new "set tui tab-width" command.
1100         * tui/tui-source.c (tui_set_source_content): Update.
1101         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1102         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1103         Don't declare.
1104         (tui_tab_width): Declare.
1105         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1106         (tui_set_default_tab_len): Remove.
1107
1108 2018-10-19  Tom Tromey  <tom@tromey.com>
1109
1110         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1111         (key_is_backspace, tui_getc): Don't declare.
1112         * tui/tui-io.c (key_is_start_sequence): Now static.
1113         (key_is_end_sequence, key_is_backspace): Remove.
1114         (tui_getc): Now static.
1115
1116 2018-10-19  Tom Tromey  <tom@tromey.com>
1117
1118         * symfile.c (reread_symbols): Clear "static_links".
1119
1120 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1121
1122         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1123         define.
1124         (aarch64_linux_sigframe_init): Extra boundary checks.
1125
1126 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1127
1128         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1129         the possibly non-existent tdesc type 'vec128', but the type of raw
1130         register v16 instead.
1131
1132 2018-10-19  Gary Benson <gbenson@redhat.com>
1133
1134         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1135
1136 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1137
1138         PR cli/23785
1139         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1140         NULL.
1141
1142 2018-10-17  Paul Koning  <paul_koning@dell.com>
1143
1144         * charset.c (convert_between_encodings): Fix unsigned overflow.
1145
1146 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1147
1148         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1149         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1150         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1151         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1152         New functions.
1153         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1154         and fbsd_info_proc_mappings_header.
1155         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1156         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1157         New.
1158
1159 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1160
1161         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1162         Solaris Maintainer.
1163
1164 2018-10-15  Tom Tromey  <tom@tromey.com>
1165
1166         * tui/tui.c (strcat_to_buf): Remove casts.
1167         * tui/tui-winsource.c (tui_show_source_line)
1168         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1169         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1170         * tui/tui-windata.c (tui_first_data_item_displayed)
1171         (tui_delete_data_content_windows, tui_erase_data_content)
1172         (tui_display_all_data, tui_display_data_from)
1173         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1174         * tui/tui-win.c (tui_set_win_height)
1175         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1176         casts.
1177         * tui/tui-win.c (tui_resize_all): Remove casts.
1178         (tui_scroll_backward_command, tui_set_focus)
1179         (tui_set_tab_width_command): Likewise.
1180         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1181         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1182         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1183         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1184         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1185         Remove casts.
1186
1187 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1188
1189         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1190         AArch64/ARM maintainer.
1191
1192 2018-10-11  Gary Benson <gbenson@redhat.com>
1193
1194         * interps.h (interp::m_name): Make private and mutable.
1195         * interps.c (interp::~interp): Free m_name.
1196
1197 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1198             Simon Marchi <simark@simark.ca>
1199
1200         * README (`configure' options): Add documentation for new
1201         "--enable-unit-tests" option.
1202         * acinclude.m4: Include "selftest.m4".
1203         * configure: Regenerate.
1204         * configure.ac: Use "GDB_AC_SELFTEST".
1205         * maint.c (maintenance_selftest): Update message informing
1206         that selftests have been disabled.
1207         (maintenance_info_selftests): Likewise.
1208         * selftest.m4: New file.
1209
1210 2018-10-10  Gary Benson <gbenson@redhat.com>
1211
1212         * remote.c (remote_target::remote_send_printf): Add
1213         missing va_end found by Coverity.
1214
1215 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1216
1217         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1218
1219 2018-10-09  Tom Tromey  <tom@tromey.com>
1220
1221         * configure: Rebuild.
1222         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1223         * NEWS: Update --enable-ubsan documentation.
1224
1225 2018-10-09  Gary Benson <gbenson@redhat.com>
1226
1227         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1228         found by Coverity.
1229
1230 2018-10-08  Tom Tromey  <tom@tromey.com>
1231
1232         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1233         variable.
1234         (riscv_fbsd_init_abi): Likewise.
1235
1236 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1237         * valops.c (value_struct_elt_for_reference): Rename local variable
1238         to work around the shadowing a previous local warning.
1239
1240 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1241
1242         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1243         * NEWS: Mention new FreeBSD/riscv native configuration.
1244         * configure.host: Add riscv*-*-freebsd*.
1245         * configure.nat: Likewise.
1246         * riscv-fbsd-nat.c: New file.
1247
1248 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1249
1250         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1251         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1252         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1253         * NEWS: Mention new FreeBSD/riscv target.
1254         * configure.tgt: Add riscv*-*-freebsd*.
1255         * riscv-fbsd-tdep.c: New file.
1256         * riscv-fbsd-tdep.h: New file.
1257
1258 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1259
1260         * regcache.h (struct regcache_map_entry): Note that this type can
1261         be used with traditional frame caches.
1262         * trad-frame.c (trad_frame_set_reg_regmap): New.
1263         * trad-frame.h (trad_frame_set_reg_regmap): New.
1264
1265 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1266
1267         PR c++/16841
1268         * valops.c (get_virtual_base_offset): New function.
1269         (value_struct_elt_for_reference): Use it to get virtual base offset
1270         and add it in calculating class member address.
1271
1272 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1273
1274     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1275       (check_producer): Check if the producer is codewarrior.
1276       (producer_is_codewarrior): New function.
1277       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1278        produced by codewarrior.
1279       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1280
1281 2018-10-06  Tom Tromey  <tom@tromey.com>
1282
1283         PR python/19399:
1284         * python/py-inferior.c: Add "architecture" entry.
1285         (infpy_architecture): New function.
1286
1287 2018-10-06  Tom Tromey  <tom@tromey.com>
1288
1289         PR python/21765:
1290         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1291         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1292         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1293         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1294
1295 2018-10-06  Tom Tromey  <tom@tromey.com>
1296
1297         PR build/17077:
1298         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1299         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1300         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1301         #include.
1302
1303 2018-10-06  Tom Tromey  <tom@tromey.com>
1304
1305         * python/py-breakpoint.c (bppy_get_location): Handle a
1306         bp_breakpoint without a location.
1307
1308 2018-10-06  Tom Tromey  <tom@tromey.com>
1309
1310         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1311         (_RegEx): Reformat help text.
1312         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1313         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1314         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1315         text.
1316         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1317         (EnableXMethod, DisableXMethod): Remove help indentation.
1318         Capitalize meta-syntactic variables.
1319         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1320         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1321         Capitalize meta-syntactic variables.
1322         * python/lib/gdb/command/explore.py (ExploreCommand)
1323         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1324         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1325         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1326         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1327         Remove help indentation.
1328         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1329         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1330         (DisableFrameFilter, SetFrameFilterPriority)
1331         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1332
1333 2018-10-06  Tom Tromey  <tom@tromey.com>
1334
1335         PR tui/28819:
1336         * tui/tui-io.c (gdb_wgetch): New function.
1337         (tui_mld_getc, tui_getc): Use it.
1338
1339 2018-10-05  Tom Tromey  <tom@tromey.com>
1340
1341         * sol-thread.c (sol_thread_target::wait): Rename inner
1342         "save_ptid".
1343
1344 2018-10-04  Tom Tromey  <tom@tromey.com>
1345
1346         * configure: Rebuild.
1347         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1348
1349 2018-10-04  Tom Tromey  <tom@tromey.com>
1350
1351         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1352         declaration of "block".
1353
1354 2018-10-04  Tom Tromey  <tom@tromey.com>
1355
1356         * common/filestuff.c (fdwalk): Remove inner declaration of
1357         "result".
1358
1359 2018-10-04  Tom Tromey  <tom@tromey.com>
1360
1361         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1362         "structs_addr" and hoist declaration.
1363
1364 2018-10-04  Tom Tromey  <tom@tromey.com>
1365
1366         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1367         variable "size".
1368
1369 2018-10-04  Tom Tromey  <tom@tromey.com>
1370
1371         * mdebugread.c (parse_partial_symbols): Use std::string.
1372
1373 2018-10-04  Tom Tromey  <tom@tromey.com>
1374
1375         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1376         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1377         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1378         header.
1379         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1380         more inner scope.
1381         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1382         * varobj.c (varobj_update): Rename inner "newobj",
1383         "type_changed".
1384         * valprint.c (generic_emit_char): Rename inner "buf".
1385         * valops.c (find_overload_match): Rename inner "temp".
1386         (value_struct_elt_for_reference): Declare "v" in more inner
1387         scope.
1388         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1389         * unittests/array-view-selftests.c (run_tests): Rename inner
1390         "vec".
1391         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1392         header.
1393         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1394         "tsv" in more inner scope.
1395         (print_one_static_tracepoint_marker): Rename inner
1396         "tuple_emitter".
1397         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1398         (tic6x_push_dummy_call): Don't redeclare "addr".
1399         * target-float.c: Declare "dto" lower.
1400         * symtab.c (lookup_local_symbol): Rename inner "sym".
1401         (find_pc_sect_line): Rename inner "pc".
1402         * stack.c (print_frame): Don't redeclare "gdbarch".
1403         (return_command): Rename inner "gdbarch".
1404         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1405         "sp".
1406         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1407         header.
1408         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1409         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1410         scope.
1411         * remote.c (remote_target::update_thread_list): Don't redeclare
1412         "tp".
1413         (remote_target::process_initial_stop_replies): Rename inner
1414         "thread".
1415         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1416         (remote_target::wait_as): Don't redeclare "stop_reply".
1417         (remote_target::get_thread_local_address): Rename inner
1418         "result".
1419         (remote_target::get_tib_address): Likewise.
1420
1421         * regcache.c (cooked_read_test): Rename "regnum".
1422         * record-btrace.c (cmd_record_btrace_start): Rename inner
1423         "exception".
1424         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1425         loop header.
1426         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1427         header.
1428         (ppu2spu_sniffer): Rename inner "buf".
1429         * parse.c (operator_check_standard): Rename inner "type",
1430         "objfile".
1431         * p-valprint.c (pascal_val_print): Introduce new scope for
1432         "low_bound", "high_bound".
1433         * p-exp.y (yylex): Declare "i" in loop header.
1434         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1435         Lower declaration of "s".
1436         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1437         header.
1438         (nios2_push_dummy_call): Rename "len".
1439         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1440         "buf".
1441         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1442         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1443         (linux_xfer_osdata_modules): Likewise.
1444         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1445         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1446         (mips_o64_push_dummy_call): Likewise.
1447         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1448         "op".
1449         * mi/mi-main.c (list_available_thread_groups): Rename inner
1450         "tuple_emitter".
1451         (mi_cmd_data_read_memory): Rename inner "opts".
1452         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1453         "tuple_emitter".
1454         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1455         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1456         more inner scope.
1457         (parse_partial_symbols): Rename inner "pst", "p", "name"
1458         * main.c (captured_main_1): Rename inner "i"s.
1459         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1460         "oso2".
1461         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1462         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1463         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1464         (handle_signal_stop): Rename inner "gdbarch".
1465         (handle_command): Declare "signum" in loop header.
1466         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1467         "status".
1468         (examine_prologue): Rename inner "sol" and "sof".
1469         (ia64_extract_return_value): Rename inner "val".  Declare another
1470         "val" in a more inner scope.
1471         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1472         inner scope.
1473         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1474         "except".
1475         * findvar.c (default_read_var_value): Don't redeclare "addr".
1476         * f-exp.y (yylex): Declare "i" in loop header.
1477         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1478         Rename inner "type", "expect_type".
1479         (evaluate_subexp_for_sizeof): Rename inner "pc".
1480         * elfread.c (elf_symfile_read): Rename inner "abfd".
1481         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1482         "bytes_read".
1483         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1484         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1485         (dwarf_decode_line_header): Rename inner "lh".
1486         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1487         "offset".  Declare "i" in loop header.
1488         (disassemble_dwarf_expression): Rename inner "addr_size".
1489         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1490         inner "result".
1491         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1492         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1493         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1494         "inner_list_emitter".
1495         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1496         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1497         declaration in a block.
1498         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1499         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1500         "obstack_final_size".
1501         * cp-support.c (inspect_type): Declare "i" in loop header.
1502         * compile/compile.c (compile_instance::insert_symbol_error):
1503         Rename inner "e".
1504         * common/agent.c (agent_run_command): Remove inner "ret"
1505         declaration.
1506         * coffread.c (coff_symfile_read): Rename inner "name".
1507         (coff_symfile_read): Rename inner "abfd".
1508         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1509         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1510         "high".
1511         * c-exp.y (lex_one_token): Move "len" declaration lower.
1512         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1513         "gdbarch".
1514         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1515         "b".
1516         (watch_command_1): Declare "mark" later.
1517         (clear_command): Don't shadow "a" or "b".
1518         (delete_command): Rename inner "b".
1519         (delete_trace_command): Likewise.
1520         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1521         "op".
1522         (arm_gdbarch_init): Remove inner "e_flags".
1523         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1524         "offset" in inner blocks.
1525
1526 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1527
1528         * dwarf-index-write.c (file_write): Don't write if the vector is
1529         empty.
1530
1531 2018-10-05  Tom de Vries  <tdevries@suse.de>
1532
1533         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1534         PyArg_ParseTuple call.
1535
1536 2018-10-05  Tom de Vries  <tdevries@suse.de>
1537
1538         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1539         PyArg_ParseTuple call.
1540
1541 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1542
1543         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1544         to avoid exceeding 80 characters per line limit.
1545
1546 2018-10-04  Tom Tromey  <tom@tromey.com>
1547
1548         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1549         (reread_symbols): Update.
1550         * complaints.h (clear_complaints): Remove argument.
1551         * complaints.c (enum complaint_series): Remove.
1552         (series): Remove global.
1553         (complaint_internal): Update.
1554         (clear_complaints): Remove argument.
1555
1556 2018-10-04  Tom Tromey  <tom@tromey.com>
1557
1558         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1559         debugging symbols" message if there is a separate debug objfile.
1560
1561 2018-10-04  Tom Tromey  <tom@tromey.com>
1562
1563         PR cli/19551:
1564         * symfile.c (symbol_file_add_with_addrs): Update output.
1565         * psymtab.c (require_partial_symbols): Update output.
1566
1567 2018-10-04  Tom Tromey  <tom@tromey.com>
1568
1569         PR cli/22234:
1570         * complaints.c: Emit \n.
1571
1572 2018-10-04  Tom Tromey  <tom@tromey.com>
1573
1574         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1575         (separate_debug_file_exists, find_separate_debug_file)
1576         (add_symbol_file_command, reread_symbols, allocate_symtab)
1577         (allocate_compunit_symtab): Use filtered printing, not
1578         unfiltered.
1579         * psymtab.c (require_partial_symbols, dump_psymtab)
1580         (allocate_psymtab): Use filtered printing, not unfiltered.
1581
1582 2018-10-04  Tom Tromey  <tom@tromey.com>
1583
1584         * complaints.c (complaint_internal): Correctly check complaint
1585         count.
1586
1587 2018-10-04  Tom Tromey  <tom@tromey.com>
1588
1589         * complaints.h (struct complaints): Remove declaration.
1590         * complaints.c (clear_complaints): Remove an unused variable.
1591
1592 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1593
1594         * MAINTAINERS (Write After Approval): Add self.
1595
1596 2018-10-03  Tom Tromey  <tom@tromey.com>
1597
1598         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1599         "buffer_contents".
1600         * coffread.c (coff_symtab_read): Initialize "newobj".
1601
1602 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1603
1604         * dwarf2read.c (read_func_scope): Remove struct keyword in
1605         range-based for.
1606
1607 2018-10-03  Tom Tromey  <tom@tromey.com>
1608
1609         * README: Mention --enable-ubsan.
1610         * NEWS: Mention --enable-ubsan.
1611         * acinclude.m4: Include sanitize.m4.
1612         * configure: Rebuild.
1613         * configure.ac: Call AM_GDB_UBSAN.
1614         * sanitize.m4: New file.
1615
1616 2018-10-03  Tom Tromey  <tom@tromey.com>
1617
1618         * expression.h (enum exp_opcode): Use uint8_t as base type.
1619         * expprint.c (op_name): Handle invalid opcodes.
1620
1621 2018-10-03  Tom Tromey  <tom@tromey.com>
1622
1623         * parse.c (prefixify_expression): Add assert.
1624         (parse_exp_in_context_1): Throw exception if the expression is
1625         empty.
1626
1627 2018-10-03  Tom Tromey  <tom@tromey.com>
1628
1629         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1630
1631 2018-10-03  Tom Tromey  <tom@tromey.com>
1632
1633         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1634
1635 2018-10-03  Tom Tromey  <tom@tromey.com>
1636
1637         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1638         unsigned.
1639
1640 2018-10-03  Tom Tromey  <tom@tromey.com>
1641
1642         * findvar.c (extract_integer): Do work in an unsigned type.
1643
1644 2018-10-03  Tom Tromey  <tom@tromey.com>
1645
1646         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1647         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1648         base type.
1649         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1650         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1651         type.
1652         * c-lang.h (enum c_string_type_values): Use unsigned as base
1653         type.
1654         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1655
1656 2018-10-03  Tom Tromey  <tom@tromey.com>
1657
1658         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1659         <~dwarf2_frame_state_reg_info>: Update.
1660         <dwarf2_frame_state_reg_info>: Update.
1661         <alloc_regs>: Add assertion.  Update.
1662         <reg>: Now a std::vector.
1663         <num_regs>: Remove.
1664         <swap>: Update.
1665         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1666         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1667
1668 2018-10-03  Tom Tromey  <tom@tromey.com>
1669
1670         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1671
1672 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1673
1674         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1675
1676 2018-10-02  Tom Tromey  <tom@tromey.com>
1677
1678         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1679
1680 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1681
1682         * NEWS: Mention changed commands.
1683         * ser-uds.c: New file.
1684         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1685         * configure: Regenerate.
1686         * Makefile.in: Add new file.
1687         * serial.c (serial_open): Check if filename is a socket
1688           and lookup the appropriate interface accordingly.
1689
1690 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1691
1692         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1693         define.
1694         (AARCH64_EXTRA_MAGIC): Likewise.
1695         (AARCH64_FPSIMD_MAGIC): Likewise.
1696         (AARCH64_SVE_MAGIC): Likewise.
1697         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1698         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1699         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1700         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1701         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1702         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1703         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1704         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1705         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1706         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1707         (read_aarch64_ctx): Add function.
1708         (aarch64_linux_sigframe_init): Detect FP registers.
1709
1710 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1711
1712         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1713         (AARCH64_D0_REGNUM): Likewise.
1714         (AARCH64_S0_REGNUM): Likewise.
1715         (AARCH64_H0_REGNUM): Likewise.
1716         (AARCH64_B0_REGNUM): Likewise.
1717         (AARCH64_SVE_V0_REGNUM): Likewise.
1718         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1719         (AARCH64_D0_REGNUM): Likewise.
1720         (AARCH64_S0_REGNUM): Likewise.
1721         (AARCH64_H0_REGNUM): Likewise.
1722         (AARCH64_B0_REGNUM): Likewise.
1723         (AARCH64_SVE_V0_REGNUM): Likewise.
1724
1725 2018-10-01  Gary Benson <gbenson@redhat.com>
1726
1727         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1728         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1729         prfpregset_t instead of gdb_prfpregset_t.
1730         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1731         * configure, config.in: Rebuild.
1732
1733 2018-10-01  Gary Benson <gbenson@redhat.com>
1734
1735         * common/gdb_proc_service.h: New file, factored out from...
1736         * gdb_proc_service.h: Moved common code to the above file.
1737         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1738
1739 2018-10-01  Gary Benson <gbenson@redhat.com>
1740
1741         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1742         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1743
1744 2018-10-01  Gary Benson <gbenson@redhat.com>
1745
1746         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1747         (AC_CHECK_HEADERS): Check for linux/elf.h.
1748         * configure, config.in: Rebuild.
1749         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1750         doesn't define elf_fpregset_t.
1751
1752 2018-10-01  Gary Benson <gbenson@redhat.com>
1753
1754         * gdb_proc_service.h: Whitespace change.
1755
1756 2018-10-01  Tom Tromey  <tom@tromey.com>
1757
1758         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1759         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1760         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1761
1762 2018-10-01  Tom Tromey  <tom@tromey.com>
1763
1764         * README: Minor change.
1765
1766 2018-09-30  Pedro Alves  <palves@redhat.com>
1767
1768         * darwin-nat-info.c (darwin_debug_regions_recurse)
1769         (info_mach_exceptions_command): Remove unused local variables.
1770         * darwin-nat.c (darwin_decode_notify_message)
1771         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1772         (darwin_stop_inferior, darwin_setup_exceptions)
1773         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1774         (darwin_nat_target::attach, darwin_nat_target::detach)
1775         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1776         local variables.
1777         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1778         variables.
1779
1780 2018-09-29  Tom Tromey  <tom@tromey.com>
1781
1782         * README: Remove some leftover text.
1783
1784 2018-09-29  Tom Tromey  <tom@tromey.com>
1785
1786         * PROBLEMS: Rewrite.
1787         * README: Update.
1788
1789 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1790
1791         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1792         case with explicit breakpoint kind.
1793         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1794         'additional_info' and related logic.
1795         (riscv_debug_breakpoints): New variable.
1796         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1797         instruction to determine the breakpoint kind.
1798         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1799         flag.  Update description of 'set/show riscv
1800         use-compressed-breakpoints' flag.
1801
1802 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1803
1804         (NEWS): Mention changes to frame related commands.
1805         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1806         (add_prefix_cmd_suppress_notification): New function.
1807         (add_com_suppress_notification): Call
1808         add_cmd_suppress_notification.
1809         * command.h (add_cmd_suppress_notification): Declare.
1810         (add_prefix_cmd_suppress_notification): Declare.
1811         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1812         (parse_frame_specification): Moved from stack.c, with
1813         simplification to handle a single argument.
1814         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1815         switch to the selected frame.  Add a header comment.
1816         * stack.c: Remove 'safe-ctype.h' include.
1817         (find_frame_for_function): Add declaration.
1818         (find_frame_for_address): New function.
1819         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1820         (frame_selection_by_function_completer): New function.
1821         (info_frame_command): Rename to...
1822         (info_frame_command_core): ...this, and update parameter types.
1823         (select_frame_command): Rename to...
1824         (select_frame_command_core): ...this, and update parameter types.
1825         (frame_command): Rename to...
1826         (frame_command_core): ...this, and update parameter types.
1827         (class frame_command_helper): New class to wrap implementations of
1828         frame related sub-commands.
1829         (frame_apply_cmd_list): New static global.
1830         (frame_cmd_list): Make static.
1831         (select_frame_cmd_list): New global for sub-commands.
1832         (info_frame_cmd_list): New global for sub-commands.
1833         (_initialize_stack): Register sub-commands for 'frame',
1834         'select-frame', and 'info frame'.  Update 'frame apply' commands
1835         to use frame_apply_cmd_list.  Move function local static
1836         frame_apply_list to file static frame_apply_cmd_list for
1837         consistency.
1838         * stack.h (select_frame_command): Delete declarationn.
1839         (select_frame_for_mi): Declare new function.
1840
1841 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1842
1843         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1844         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1845         and NOP.
1846
1847 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1848
1849         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1850
1851 2018-09-26  Tom Tromey  <tom@tromey.com>
1852
1853         * valops.c (auto_abandon): Remove dead code.
1854
1855 2018-09-26  Tom Tromey  <tom@tromey.com>
1856
1857         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1858
1859 2018-09-24  Tom Tromey  <tom@tromey.com>
1860
1861         * common/pathstuff.c (get_standard_cache_dir): Make
1862         "xdg_cache_home" and "home" const.
1863         * top.c (init_history): Make "tmpenv" const.
1864         * main.c (get_init_files): Make "homedir" const.
1865
1866 2018-09-23  Tom Tromey  <tom@tromey.com>
1867
1868         PR python/18852:
1869         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1870
1871 2018-09-23  Tom Tromey  <tom@tromey.com>
1872
1873         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1874         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1875         * python/python-internal.h (gdbpy_handle_exception): Declare.
1876         * python/py-utils.c (gdbpy_handle_exception): New function.
1877
1878 2018-09-23  Tom Tromey  <tom@tromey.com>
1879
1880         PR python/17284:
1881         * python/py-type.c (typy_template_argument): Check for negative
1882         argument number.
1883
1884 2018-09-23  Tom Tromey  <tom@tromey.com>
1885
1886         PR python/14062:
1887         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1888
1889 2018-09-23  Tom Tromey  <tom@tromey.com>
1890
1891         PR python/18170:
1892         * python/py-value.c (valpy_int): Allow conversion from pointer
1893         type.
1894
1895 2018-09-23  Tom Tromey  <tom@tromey.com>
1896
1897         PR python/20126:
1898         * python/py-value.c (valpy_int): Respect type sign.
1899
1900 2018-09-23  Tom Tromey  <tom@tromey.com>
1901
1902         PR python/18352;
1903         * python/py-value.c (valpy_float): Allow conversions from int or
1904         char.
1905         (valpy_int, valpy_long): Allow conversions from float.
1906
1907 2018-09-23  Tom Tromey  <tom@tromey.com>
1908
1909         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1910         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1911
1912 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1913
1914         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1915         __sighndlr.
1916         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1917
1918 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1919
1920         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1921         target_terminal::ours().
1922
1923 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1924
1925         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1926         of vl to ULONGEST.
1927
1928 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1929
1930         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1931         redundant condition.
1932
1933 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1934
1935         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1936
1937         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1938         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1939         * sol-thread.c (ps_pdmodel): Don't guard definition.
1940
1941         * procfs.c: Fix formatting.
1942
1943         * procfs.c (sysset_t_alloc): Remove.
1944         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1945         (procfs_debug_inferior): Likewise.
1946         (procfs_set_exec_trap): Likewise.
1947         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1948         (proc_set_traced_sysexit): Likewise.
1949
1950         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1951         (dead_procinfo): Likewise.
1952         (proc_warn): Likewise.
1953         (proc_error): Likewise.
1954         (proc_get_LDT_entry): Likewise.
1955         (do_attach): Likewise.
1956         (procfs_target::pid_to_str): Likewise.
1957         (iterate_over_mappings): Likewise.
1958
1959         * procfs.c (create_procinfo): Fix ARI warning.
1960         (proc_get_status): Likewise.
1961         (proc_stop_process): Likewise.
1962         (proc_run_process): Likewise.
1963         (proc_kill): Likewise.
1964         (proc_get_LDT_entry): Likewise.
1965         (procfs_find_LDT_entry): Likewise.
1966         (proc_update_threads): Likewise.
1967         (proc_iterate_over_threads): Likewise.
1968         (do_attach): Likewise.
1969         (procfs_xfer_memory): Likewise.
1970         (invalidate_cache): Likewise.
1971         (procfs_target::resume): Likewise.
1972         (procfs_init_inferior): Likewise.
1973         (procfs_set_exec_trap): Likewise.
1974         (procfs_target::thread_alive): Likewise.
1975         (procfs_target::pid_to_exec_file): Likewise.
1976         (iterate_over_mappings): Likewise.
1977         (procfs_target::make_corefile_notes): Likewise.
1978         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1979
1980         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1981         (procfs_find_LDT_entry): Likewise.
1982         * sol-thread.c (ps_lgetLDT): Likewise.
1983
1984 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1985
1986         PR tdep/17903
1987         * procfs.c (procfs_target): Declare pid_to_exec_file.
1988         (procfs_target::pid_to_exec_file): New.
1989
1990 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1991
1992         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1993         renaming.
1994         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1995         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1996
1997 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1998
1999         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2000         (supply_fpregset, fill_fpregset): Move ...
2001         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2002         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2003         Remove references to ioctl-based procfs.
2004         Include <sys/reg.h>.
2005         Remove PR_MODEL_NATIVE guards.
2006         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2007         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2008
2009 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2010
2011         PR gdb/20981:
2012         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2013         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2014         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2015
2016 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2017
2018         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2019         (fbsd_print_sockaddr_in6): Likewise.
2020
2021 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2022             Chris January  <chris.january@arm.com>
2023
2024         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2025         (evaluate_subexp_standard): Return a dummy type when
2026         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2027         OP_F77_UNDETERMINED_ARGLIST case.
2028         * expression.h (enum noside): Update comment.
2029
2030 2018-09-19  George Vasick <george.vasick@oracle.com>
2031
2032         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2033
2034 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2035             April Chin <april.chin@oracle.com>
2036             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2037
2038         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2039         uint_t lwpid_t.
2040         (create_procinfo): Print pids in /proc without leading zeros.
2041
2042 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2043
2044         * nios2-tdep.c (nios2_gcc_target_options): New.
2045         (nios2_gdb_arch_init): Install new hook.
2046
2047 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2048
2049         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2050         New file.
2051         * update-gnulib.sh: Apply patch.
2052         * configure: Re-generate.
2053
2054 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2055
2056         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2057         description.  Make "info proc" command descriptions more
2058         consistent.
2059
2060 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2061
2062         * NEWS: Mention 'info proc files' command.
2063
2064 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2065
2066         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2067         descriptors for IP_FILES and IP_ALL.
2068
2069 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2070
2071         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2072         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2073         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2074         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2075         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2076         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2077         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2078         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2079         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2080         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2081         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2082         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2083         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2084         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2085         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2086         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2087         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2088         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2089         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2090         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2091         (struct fbsd_sockaddr_un): New types.
2092         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2093         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2094         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2095         (fbsd_core_info_proc_files): New functions.
2096         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2097         IP_ALL.
2098         * fbsd-tdep.h (fbsd_info_proc_files_header)
2099         (fbsd_info_proc_files_entry): New.
2100
2101 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2102
2103         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2104         * infcmd.c (info_proc_cmd_files): New function.
2105         (_initialize_infcmd): Register 'info proc files' command.
2106
2107 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2108
2109         * gnulib/aclocal-m4-deps.mk: Re-generate.
2110         * gnulib/aclocal.m4: Re-generate.
2111         * gnulib/config.in: Re-generate.
2112         * gnulib/configure: Re-generate.
2113         * gnulib/import/Makefile.am: Re-generate.
2114         * gnulib/import/Makefile.in: Re-generate.
2115         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2116         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2117         * gnulib/import/arpa_inet.in.h: New file.
2118         * gnulib/import/inet_ntop.c: New file.
2119         * gnulib/import/m4/arpa_inet_h.m4: New file.
2120         * gnulib/import/m4/inet_ntop.m4: New file.
2121         * gnulib/import/m4/netinet_in_h.m4: New file.
2122         * gnulib/import/m4/socklen.m4: New file.
2123         * gnulib/import/m4/sockpfaf.m4: New file.
2124         * gnulib/import/m4/stdalign.m4: New file.
2125         * gnulib/import/m4/sys_uio_h.m4: New file.
2126         * gnulib/import/netinet_in.in.h: New file.
2127         * gnulib/import/stdalign.in.h: New file.
2128         * gnulib/import/sys_socket.c: New file.
2129         * gnulib/import/sys_socket.in.h: New file.
2130         * gnulib/import/sys_uio.in.h: New file.
2131         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2132         module.
2133
2134 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2135
2136         * gnulib/aclocal-m4-deps.mk: New file.
2137         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2138         deterministically.
2139
2140 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2141
2142         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2143         KVE_PATH.
2144
2145 2018-09-18  Tom Tromey  <tom@tromey.com>
2146
2147         * compile/compile-object-load.c (struct
2148         link_hash_table_cleanup_data): Add constructor and destructor.
2149         Use DISABLE_COPY_AND_ASSIGN.
2150         (~link_hash_table_cleanup_data): Rename from
2151         link_hash_table_free.  Now a destructor.
2152         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2153
2154 2018-09-18  Tom Tromey  <tom@tromey.com>
2155
2156         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2157         * compile/compile-object-load.c (struct munmap_list): Move to
2158         header file.
2159         (munmap_list::add): Rename from munmap_list_add; rewrite.
2160         (munmap_list::~munmap_list): Rename from munmap_list_free.
2161         (munmap_listp_free_cleanup): Remove.
2162         (compile_object_load): Update.
2163         * compile/compile-object-load.h (struct munmap_list): Move from
2164         compile-object-load.c.  Rewrite.
2165
2166 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2167
2168         * aarch64-tdep.c (pass_in_v): Use register size.
2169         (aarch64_extract_return_value): Likewise.
2170         (aarch64_store_return_value): Likewise.
2171
2172 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2173
2174         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2175         rlim_t.
2176
2177 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2178
2179         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2180         Fix short help line.
2181
2182 2018-09-17  Tom Tromey  <tom@tromey.com>
2183
2184         PR python/20445:
2185         * configure: Rebuild.
2186         * configure.ac: Conditionally use -DNDEBUG for Python.
2187
2188 2018-09-17  Tom Tromey  <tom@tromey.com>
2189
2190         * configure: Rebuild.
2191         * configure.ac: Use gmp as a library dependency when checking for
2192         mpfr.
2193
2194 2018-09-17  Pedro Alves  <palves@redhat.com>
2195
2196         * python/py-inferior.c (find_inferior_object): Delete.
2197
2198 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2199
2200         * compile/compile-cplus-types.c
2201         (compile_cplus_instance::enter_scope): Don't use new_scope after
2202         std::move.
2203
2204 2018-09-17  Tom Tromey  <tom@tromey.com>
2205
2206         * common/pathstuff.c (get_standard_cache_dir): Use
2207         ~/Library/Caches on macOS.
2208         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2209
2210 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2211
2212         PR python/23669
2213         * breakpoint.c (commands_cmd_element): New.
2214         (_initialize_breakpoint): Assign commands_cmd_element.
2215         * breakpoint.h (commands_cmd_element): New.
2216         * cli/cli-script.c (while_cmd_element, if_command,
2217         define_cmd_element): New.
2218         (command_name_equals): Remove.
2219         (process_next_line): Compare commands by pointer, not by name.
2220         (_initialize_cli_script): Assign the various cmd_list_element
2221         variables.
2222         * compile/compile.c (compile_cmd_element): New.
2223         (_initialize_compile): Assign compile_cmd_element.
2224         * compile/compile.h (compile_cmd_element): New.
2225         * guile/guile.c (guile_cmd_element): New.
2226         (install_gdb_commands): Assign guile_cmd_element.
2227         * guile/guile.h (guile_cmd_element): New.
2228         * python/python.c (python_cmd_element): New.
2229         (_initialize_python): Assign python_cmd_element.
2230         * python/python.h (python_cmd_element): New.
2231         * tracepoint.c (while_stepping_cmd_element): New.
2232         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2233         * tracepoint.h (while_stepping_cmd_element): New.
2234
2235 2018-09-17  Tom Tromey  <tom@tromey.com>
2236
2237         * infrun.c (save_infcall_suspend_state): Return
2238         infcall_suspend_state_up.
2239         (save_infcall_control_state): Return infcall_control_state_up.
2240         * inferior.h (save_infcall_suspend_state)
2241         (save_infcall_control_state): Declare later.  Return unique
2242         pointers.
2243
2244 2018-09-17  Tom Tromey  <tom@tromey.com>
2245
2246         * infrun.c (struct stop_context): Declare constructor,
2247         destructor, "changed" method.
2248         (stop_context::stop_context): Rename from save_stop_context.
2249         (stop_context::~stop_context): Rename from
2250         release_stop_context_cleanup.
2251         (normal_stop): Update.
2252         (stop_context::changed): Rename from stop_context_changed.  Return
2253         bool.
2254
2255 2018-09-17  Tom Tromey  <tom@tromey.com>
2256
2257         * inferior.h (struct infcall_suspend_state_deleter): New.
2258         (infcall_suspend_state_up): New typedef.
2259         (struct infcall_control_state_deleter): New.
2260         (infcall_control_state_up): New typedef.
2261         (make_cleanup_restore_infcall_suspend_state)
2262         (make_cleanup_restore_infcall_control_state): Don't declare.
2263         * infcall.c (call_function_by_hand_dummy): Update.
2264         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2265         (make_cleanup_restore_infcall_suspend_state): Remove.
2266         (do_restore_infcall_control_state_cleanup)
2267         (make_cleanup_restore_infcall_control_state): Remove.
2268
2269 2018-09-17  Tom Tromey  <tom@tromey.com>
2270
2271         * gdbthread.h (struct thread_control_state): Add initializer.
2272         (class thread_info) <control>: Remove initializer.
2273         * inferior.h (struct inferior_control_state): Add initializer.
2274         (class inferior) <control>: Remove initializer.
2275         (exit_inferior_1): Update.
2276         * infrun.c (struct infcall_control_state): Add constructors.
2277         (save_infcall_control_state): Use new.
2278         (restore_infcall_control_state, discard_infcall_control_state):
2279         Use delete.
2280
2281 2018-09-17  Tom Tromey  <tom@tromey.com>
2282
2283         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2284         unique_ptr.
2285         <siginfo_data>: Now a unique_xmalloc_ptr.
2286         (save_infcall_suspend_state, restore_infcall_suspend_state)
2287         (discard_infcall_suspend_state)
2288         (get_infcall_suspend_state_regcache): Update.
2289
2290 2018-09-17  Tom Tromey  <tom@tromey.com>
2291
2292         * gdbthread.h (struct thread_suspend_state): Add initializers.
2293         (class thread_info) <suspend>: Remove initializer.
2294         * infrun.c (struct infcall_suspend_state): Add initializers.
2295         (save_infcall_suspend_state): Use new.
2296         (discard_infcall_suspend_state): Use delete.
2297
2298 2018-09-16  Tom Tromey  <tom@tromey.com>
2299
2300         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2301         Remove.
2302         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2303         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2304         (py_varobj_iter_new): Likewise.
2305         (py_varobj_get_iterator): Use gdbpy_ref.
2306
2307 2018-09-16  Tom Tromey  <tom@tromey.com>
2308
2309         * python/py-threadevent.c (py_get_event_thread): Simplify.
2310         * python/py-inferior.c (infpy_thread_from_thread_handle):
2311         Return immediately after calling thread_to_thread_object.  Use
2312         Py_RETURN_NONE.
2313         (thread_to_thread_object): Set the exception on a NULL return.
2314
2315 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2316
2317         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2318
2319 2018-09-16  Tom Tromey  <tom@tromey.com>
2320
2321         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2322         Remove.
2323
2324 2018-09-16  Tom Tromey  <tom@tromey.com>
2325
2326         * python/python-internal.h (thread_to_thread_object): Change
2327         return type.
2328         * python/py-inferior.c (thread_to_thread_object): Return a new
2329         reference.
2330         (infpy_thread_from_thread_handle): Update.
2331         * python/py-infthread.c (gdbpy_selected_thread): Update.
2332         * python/py-stopevent.c (create_stop_event_object): Update.
2333         * python/py-threadevent.c (py_get_event_thread): Return a new
2334         reference.
2335         (py_get_event_thread): Update.
2336         * python/py-event.h (py_get_event_thread): Change return type.
2337         * python/py-continueevent.c (create_continue_event_object):
2338         Update.
2339
2340 2018-09-16  Tom Tromey  <tom@tromey.com>
2341
2342         * python/py-progspace.c (pspy_get_objfiles): Update.
2343         * python/python-internal.h (objfile_to_objfile_object): Change
2344         return type.
2345         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2346         Update.
2347         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2348         Update.
2349         * python/python.c (gdbpy_get_current_objfile): Update.
2350         (gdbpy_objfiles): Update.
2351         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2352         Update.
2353         (objfile_to_objfile_object): Return a new reference.
2354         * python/py-symtab.c (stpy_get_objfile): Update.
2355         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2356         Update.
2357
2358 2018-09-16  Tom Tromey  <tom@tromey.com>
2359
2360         * python/py-inferior.c (infpy_get_progspace): Update.
2361         * python/python-internal.h (pspace_to_pspace_object): Change
2362         return type.
2363         * python/py-newobjfileevent.c
2364         (create_clear_objfiles_event_object): Update.
2365         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2366         Update.
2367         * python/python.c (gdbpy_get_current_progspace): Update.
2368         (gdbpy_progspaces): Update.
2369         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2370         reference.
2371         * python/py-objfile.c (objfpy_get_progspace): Update.
2372         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2373         Update.
2374
2375 2018-09-16  Tom Tromey  <tom@tromey.com>
2376
2377         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2378         (solib_name, block_for_pc, find_pc_line): New functions.
2379         (execute_unwinders): Update.
2380         * python/py-block.c (gdbpy_block_for_pc): Remove.
2381         * python/py-inferior.c (infpy_get_progspace): New function.
2382         (inferior_object_getset) <progspace>: Add.
2383         * python/py-progspace.c (pspy_objfiles): Rewrite.
2384         (pspy_solib_name, pspy_block_for_pc)
2385         (pspy_find_pc_line, pspy_is_valid): New functions.
2386         (progspace_object_methods): Add entries for solib_name,
2387         block_for_pc, find_pc_line, is_valid.
2388         * python/python-internal.h (gdbpy_block_for_pc)
2389         (build_objfiles_list): Don't declare.
2390         * python/python.c: Don't include solib.h.
2391         (gdbpy_solib_name, gdbpy_find_pc_line)
2392         (gdbpy_get_current_progspace, build_objfiles_list)
2393         (gdbpy_objfiles): Remove.
2394         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2395         solib_name, find_pc_line>: Remove entries.
2396
2397 2018-09-16  Tom Tromey  <tom@tromey.com>
2398
2399         * top.c (new_ui_command): Use GNU style for metasyntactic
2400         variables.
2401         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2402         variables.
2403         * maint.c (maintenance_translate_address): Remove "<>" around
2404         text.
2405         * interps.c (interpreter_exec_cmd): Use GNU style for
2406         metasyntactic variables.
2407         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2408         metasyntactic variables.
2409         * tracepoint.c (tfind_range_command): Use GNU style for
2410         metasyntactic variables.
2411         (tfind_outside_command): Likewise.
2412         (_initialize_tracepoint): Likewise.
2413         * remote.c (extended_remote_target::create_inferior): Use GNU
2414         style for metasyntactic variables.
2415         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2416         metasyntactic variables.
2417         (adi_assign_command): Likewise.
2418
2419 2018-09-16  Tom Tromey  <tom@tromey.com>
2420
2421         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2422         metasyntactic variables.  Print message if no disassembler options
2423         are available.
2424
2425 2018-09-15  Tom Tromey  <tom@tromey.com>
2426
2427         * infcmd.c (get_inferior_args): Return const char *.
2428         * inferior.h (get_inferior_args): Return type now const.
2429         * linux-tdep.c (linux_fill_prpsinfo): Update.
2430         * procfs.c (procfs_target::make_corefile_notes): Update.
2431
2432 2018-09-07  Tom Tromey  <tom@tromey.com>
2433
2434         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2435         inside the TRY.
2436
2437 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2438
2439         * nios2-tdep.c (nios2_type_align): New.
2440         (nios2_gdb_arch_init): Install type_align hook.
2441
2442 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2443
2444         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2445         type that is neither object file owned, nor gdbarch owned.
2446         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2447         gdbarch is non-NULL.
2448         (alloc_type_instance): Allocate non-objfile owned types on the
2449         gdbarch obstack.
2450         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2451         using TYPE_ALLOC to ensure memory is allocated on the correct
2452         obstack.
2453         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2454         obstack, or the gdbarch obstack.
2455         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2456
2457 2018-09-14  Tom Tromey  <tom@tromey.com>
2458
2459         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2460         block.
2461
2462 2018-09-14  Tom Tromey  <tom@tromey.com>
2463
2464         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2465
2466 2018-09-13  Tom Tromey  <tom@tromey.com>
2467
2468         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2469         static.
2470
2471 2018-09-13  Tom Tromey  <tom@tromey.com>
2472
2473         * exec.c (try_open_exec_file): Use std::string.
2474
2475 2018-09-13  Tom Tromey  <tom@tromey.com>
2476
2477         * utils.h (gdb_bfd_errmsg): Return std::string.
2478         * exec.c (exec_file_attach): Update.
2479         * compile/compile-object-load.c (compile_object_load): Update.
2480         * utils.c (gdb_bfd_errmsg): Return std::string.
2481
2482 2018-09-13  Tom Tromey  <tom@tromey.com>
2483
2484         * procfs.c (struct procinfo_deleter): New.
2485         (procinfo_up): New typedef.
2486         (do_destroy_procinfo_cleanup): Remove.
2487         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2488
2489 2018-09-13  Tom Tromey  <tom@tromey.com>
2490
2491         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2492
2493 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2494 2018-09-13  Tom Tromey  <tom@tromey.com>
2495
2496         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2497         (pspy_get_objfiles): New function.
2498         (progspace_object_methods): New.
2499         (pspace_object_type): Add tp_methods callback.
2500         * python/python-internal.h (build_objfiles_list): New
2501         declaration.
2502         * python/python.c (build_objfiles_list): New function.
2503         (gdbpy_objfiles): Implement using build_objfiles_list.
2504         * NEWS: Mention the Progspace.objfiles method.
2505
2506 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2507
2508         * python/py-inferior.c (infpy_get_progspace): New function.
2509         (inferior_object_getset): Add progspace property.
2510         * NEWS: Mention the new property.
2511
2512 2018-09-13  Tom Tromey  <tom@tromey.com>
2513
2514         PR rust/23650:
2515         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2516
2517 2018-09-13  Tom Tromey  <tom@tromey.com>
2518
2519         PR rust/23626:
2520         * rust-lang.c (rust_enum_variant): Now static.
2521         (rust_empty_enum_p): New function.
2522         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2523         Handle empty enum.
2524
2525 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2526
2527         * python/py-inferior.c (infpy_repr): New.
2528         (inferior_object_type): Register infpy_repr.
2529         * python/py-objfile.c (objfpy_repr): New.
2530         (objfile_object_type): Register objfpy_repr.
2531
2532 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2533
2534         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2535
2536 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2537
2538         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2539         typo.
2540
2541 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2542
2543         * common/common-utils.c: Don't include '<sys/stat.h>'.
2544         (is_regular_file): Move to...
2545         * common/filestuff.c (is_regular_file): ... here.
2546         * common/common-utils.h (is_regular_file): Move to...
2547         * common/filestuff.h (is_regular_file): ... here.
2548
2549 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2550
2551         * skip.c (debug_skip): New variable.
2552         (skiplist_entry::do_skip_file_p): Add debug output.
2553         (skiplist_entry::do_skip_gfile_p): Likewise.
2554         (skiplist_entry::skip_function_p): Likewise.
2555         (_initialize_step_skip): Create debug command.
2556         * NEWS: Mention set/show debug skip.
2557
2558 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2559
2560         * darwin-nat.c (should_disable_startup_with_shell):
2561         New function.
2562         (darwin_nat_target::create_inferior): Add call.
2563
2564 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2565
2566         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2567         inf_port, msg_state>: Initialize.
2568         (struct darwin_thread_info) <signaled, single_step>: Change
2569         type and initialize.
2570         (struct darwin_thread_info) <event>: Initialize.
2571
2572 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2573
2574         PR gdb/23555
2575         PR gdb/23558
2576         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2577         guesses.
2578
2579 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2580
2581         Revert:
2582         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2583
2584         PR gdb/23555
2585         PR gdb/23558
2586         * gnulib/aclocal.m4: Regenerate.
2587         * gnulib/config.in: Regenerate.
2588         * gnulib/configure: Regenerate.
2589         * gnulib/import/Makefile.am: Update.
2590         * gnulib/import/Makefile.in: Update.
2591         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2592         * gnulib/import/_Noreturn.h: ... this.
2593         * gnulib/import/alloca.in.h: Update.
2594         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2595         * gnulib/import/arg-nonnull.h: ... this.
2596         * gnulib/import/assure.h: Update.
2597         * gnulib/import/at-func.c: Update.
2598         * gnulib/import/basename-lgpl.c: Update.
2599         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2600         * gnulib/import/c++defs.h: ... this.
2601         * gnulib/import/canonicalize-lgpl.c: Update.
2602         * gnulib/import/cdefs.h: Update.
2603         * gnulib/import/chdir-long.c: Update.
2604         * gnulib/import/chdir-long.h: Update.
2605         * gnulib/import/cloexec.c: Update.
2606         * gnulib/import/cloexec.h: Update.
2607         * gnulib/import/close.c: Update.
2608         * gnulib/import/closedir.c: Update.
2609         * gnulib/import/config.charset: Update.
2610         * gnulib/import/dirent-private.h: Update.
2611         * gnulib/import/dirent.in.h: Update.
2612         * gnulib/import/dirfd.c: Update.
2613         * gnulib/import/dirname-lgpl.c: Update.
2614         * gnulib/import/dirname.h: Update.
2615         * gnulib/import/dosname.h: Update.
2616         * gnulib/import/dup-safer-flag.c: Update.
2617         * gnulib/import/dup-safer.c: Update.
2618         * gnulib/import/dup.c: Update.
2619         * gnulib/import/dup2.c: Update.
2620         * gnulib/import/errno.in.h: Update.
2621         * gnulib/import/error.c: Update.
2622         * gnulib/import/error.h: Update.
2623         * gnulib/import/exitfail.c: Update.
2624         * gnulib/import/exitfail.h: Update.
2625         * gnulib/import/extra/update-copyright: Update.
2626         * gnulib/import/fchdir.c: Update.
2627         * gnulib/import/fcntl.c: Update.
2628         * gnulib/import/fcntl.in.h: Update.
2629         * gnulib/import/fd-hook.c: Update.
2630         * gnulib/import/fd-hook.h: Update.
2631         * gnulib/import/fd-safer-flag.c: Update.
2632         * gnulib/import/fd-safer.c: Update.
2633         * gnulib/import/fdopendir.c: Update.
2634         * gnulib/import/filename.h: Update.
2635         * gnulib/import/filenamecat-lgpl.c: Update.
2636         * gnulib/import/filenamecat.h: Update.
2637         * gnulib/import/flexmember.h: Update.
2638         * gnulib/import/float+.h: Update.
2639         * gnulib/import/float.c: Update.
2640         * gnulib/import/float.in.h: Update.
2641         * gnulib/import/fnmatch.c: Update.
2642         * gnulib/import/fnmatch.in.h: Update.
2643         * gnulib/import/fnmatch_loop.c: Update.
2644         * gnulib/import/fpucw.h: Update.
2645         * gnulib/import/frexp.c: Update.
2646         * gnulib/import/frexpl.c: Update.
2647         * gnulib/import/fstat.c: Update.
2648         * gnulib/import/fstatat.c: Update.
2649         * gnulib/import/getcwd-lgpl.c: Update.
2650         * gnulib/import/getcwd.c: Update.
2651         * gnulib/import/getdtablesize.c: Update.
2652         * gnulib/import/getlogin_r.c: Update.
2653         * gnulib/import/getprogname.c: Update.
2654         * gnulib/import/getprogname.h: Update.
2655         * gnulib/import/gettext.h: Update.
2656         * gnulib/import/gettimeofday.c: Update.
2657         * gnulib/import/glob-libc.h: Update.
2658         * gnulib/import/glob.c: Update.
2659         * gnulib/import/glob.in.h: Update.
2660         * gnulib/import/glob_internal.h: Update.
2661         * gnulib/import/glob_pattern_p.c: Update.
2662         * gnulib/import/globfree.c: Update.
2663         * gnulib/import/hard-locale.c: Update.
2664         * gnulib/import/hard-locale.h: Update.
2665         * gnulib/import/intprops.h: Update.
2666         * gnulib/import/inttypes.in.h: Update.
2667         * gnulib/import/isnan.c: Update.
2668         * gnulib/import/isnand-nolibm.h: Update.
2669         * gnulib/import/isnand.c: Update.
2670         * gnulib/import/isnanl-nolibm.h: Update.
2671         * gnulib/import/isnanl.c: Update.
2672         * gnulib/import/itold.c: Update.
2673         * gnulib/import/libc-config.h: Update.
2674         * gnulib/import/limits.in.h: Update.
2675         * gnulib/import/localcharset.c: Update.
2676         * gnulib/import/localcharset.h: Update.
2677         * gnulib/import/localtime-buffer.c: Update.
2678         * gnulib/import/localtime-buffer.h: Update.
2679         * gnulib/import/lstat.c: Update.
2680         * gnulib/import/m4/00gnulib.m4: Update.
2681         * gnulib/import/m4/__inline.m4: Update.
2682         * gnulib/import/m4/absolute-header.m4: Update.
2683         * gnulib/import/m4/alloca.m4: Update.
2684         * gnulib/import/m4/builtin-expect.m4: Update.
2685         * gnulib/import/m4/canonicalize.m4: Update.
2686         * gnulib/import/m4/chdir-long.m4: Update.
2687         * gnulib/import/m4/close.m4: Update.
2688         * gnulib/import/m4/closedir.m4: Update.
2689         * gnulib/import/m4/configmake.m4: Update.
2690         * gnulib/import/m4/d-ino.m4: Update.
2691         * gnulib/import/m4/d-type.m4: Update.
2692         * gnulib/import/m4/dirent_h.m4: Update.
2693         * gnulib/import/m4/dirfd.m4: Update.
2694         * gnulib/import/m4/dirname.m4: Update.
2695         * gnulib/import/m4/double-slash-root.m4: Update.
2696         * gnulib/import/m4/dup.m4: Update.
2697         * gnulib/import/m4/dup2.m4: Update.
2698         * gnulib/import/m4/eealloc.m4: Update.
2699         * gnulib/import/m4/environ.m4: Update.
2700         * gnulib/import/m4/errno_h.m4: Update.
2701         * gnulib/import/m4/error.m4: Update.
2702         * gnulib/import/m4/exponentd.m4: Update.
2703         * gnulib/import/m4/exponentl.m4: Update.
2704         * gnulib/import/m4/extensions.m4: Update.
2705         * gnulib/import/m4/extern-inline.m4: Update.
2706         * gnulib/import/m4/fchdir.m4: Update.
2707         * gnulib/import/m4/fcntl-o.m4: Update.
2708         * gnulib/import/m4/fcntl.m4: Update.
2709         * gnulib/import/m4/fcntl_h.m4: Update.
2710         * gnulib/import/m4/fdopendir.m4: Update.
2711         * gnulib/import/m4/filenamecat.m4: Update.
2712         * gnulib/import/m4/flexmember.m4: Update.
2713         * gnulib/import/m4/float_h.m4: Update.
2714         * gnulib/import/m4/fnmatch.m4: Update.
2715         * gnulib/import/m4/fnmatch_h.m4: Update.
2716         * gnulib/import/m4/fpieee.m4: Update.
2717         * gnulib/import/m4/frexp.m4: Update.
2718         * gnulib/import/m4/frexpl.m4: Update.
2719         * gnulib/import/m4/fstat.m4: Update.
2720         * gnulib/import/m4/fstatat.m4: Update.
2721         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2722         * gnulib/import/m4/getcwd-path-max.m4: Update.
2723         * gnulib/import/m4/getcwd.m4: Update.
2724         * gnulib/import/m4/getdtablesize.m4: Update.
2725         * gnulib/import/m4/getlogin.m4: Update.
2726         * gnulib/import/m4/getlogin_r.m4: Update.
2727         * gnulib/import/m4/getpagesize.m4: Update.
2728         * gnulib/import/m4/getprogname.m4: Update.
2729         * gnulib/import/m4/gettimeofday.m4: Update.
2730         * gnulib/import/m4/glibc21.m4: Update.
2731         * gnulib/import/m4/glob.m4: Update.
2732         * gnulib/import/m4/glob_h.m4: Update.
2733         * gnulib/import/m4/gnulib-cache.m4: Update.
2734         * gnulib/import/m4/gnulib-common.m4: Update.
2735         * gnulib/import/m4/gnulib-comp.m4: Update.
2736         * gnulib/import/m4/gnulib-tool.m4: Update.
2737         * gnulib/import/m4/hard-locale.m4: Update.
2738         * gnulib/import/m4/include_next.m4: Update.
2739         * gnulib/import/m4/inttypes-pri.m4: Update.
2740         * gnulib/import/m4/inttypes.m4: Update.
2741         * gnulib/import/m4/isnand.m4: Update.
2742         * gnulib/import/m4/isnanl.m4: Update.
2743         * gnulib/import/m4/largefile.m4: Update.
2744         * gnulib/import/m4/limits-h.m4: Update.
2745         * gnulib/import/m4/localcharset.m4: Update.
2746         * gnulib/import/m4/locale-fr.m4: Update.
2747         * gnulib/import/m4/locale-ja.m4: Update.
2748         * gnulib/import/m4/locale-zh.m4: Update.
2749         * gnulib/import/m4/localtime-buffer.m4: Update.
2750         * gnulib/import/m4/longlong.m4: Update.
2751         * gnulib/import/m4/lstat.m4: Update.
2752         * gnulib/import/m4/malloc.m4: Update.
2753         * gnulib/import/m4/malloca.m4: Update.
2754         * gnulib/import/m4/math_h.m4: Update.
2755         * gnulib/import/m4/mbrtowc.m4: Update.
2756         * gnulib/import/m4/mbsinit.m4: Update.
2757         * gnulib/import/m4/mbsrtowcs.m4: Update.
2758         * gnulib/import/m4/mbstate_t.m4: Update.
2759         * gnulib/import/m4/memchr.m4: Update.
2760         * gnulib/import/m4/memmem.m4: Update.
2761         * gnulib/import/m4/mempcpy.m4: Update.
2762         * gnulib/import/m4/memrchr.m4: Update.
2763         * gnulib/import/m4/mkdir.m4: Update.
2764         * gnulib/import/m4/mkstemp.m4: Update.
2765         * gnulib/import/m4/mmap-anon.m4: Update.
2766         * gnulib/import/m4/mode_t.m4: Update.
2767         * gnulib/import/m4/msvc-inval.m4: Update.
2768         * gnulib/import/m4/msvc-nothrow.m4: Update.
2769         * gnulib/import/m4/multiarch.m4: Update.
2770         * gnulib/import/m4/nocrash.m4: Update.
2771         * gnulib/import/m4/off_t.m4: Update.
2772         * gnulib/import/m4/onceonly.m4: Update.
2773         * gnulib/import/m4/open-cloexec.m4: Update.
2774         * gnulib/import/m4/open.m4: Update.
2775         * gnulib/import/m4/openat.m4: Update.
2776         * gnulib/import/m4/opendir.m4: Update.
2777         * gnulib/import/m4/pathmax.m4: Update.
2778         * gnulib/import/m4/rawmemchr.m4: Update.
2779         * gnulib/import/m4/readdir.m4: Update.
2780         * gnulib/import/m4/readlink.m4: Update.
2781         * gnulib/import/m4/realloc.m4: Update.
2782         * gnulib/import/m4/rename.m4: Update.
2783         * gnulib/import/m4/rewinddir.m4: Update.
2784         * gnulib/import/m4/rmdir.m4: Update.
2785         * gnulib/import/m4/save-cwd.m4: Update.
2786         * gnulib/import/m4/secure_getenv.m4: Update.
2787         * gnulib/import/m4/setenv.m4: Update.
2788         * gnulib/import/m4/signal_h.m4: Update.
2789         * gnulib/import/m4/ssize_t.m4: Update.
2790         * gnulib/import/m4/stat-time.m4: Update.
2791         * gnulib/import/m4/stat.m4: Update.
2792         * gnulib/import/m4/std-gnu11.m4: Update.
2793         * gnulib/import/m4/stdbool.m4: Update.
2794         * gnulib/import/m4/stddef_h.m4: Update.
2795         * gnulib/import/m4/stdint.m4: Update.
2796         * gnulib/import/m4/stdio_h.m4: Update.
2797         * gnulib/import/m4/stdlib_h.m4: Update.
2798         * gnulib/import/m4/strchrnul.m4: Update.
2799         * gnulib/import/m4/strdup.m4: Update.
2800         * gnulib/import/m4/strerror.m4: Update.
2801         * gnulib/import/m4/string_h.m4: Update.
2802         * gnulib/import/m4/strstr.m4: Update.
2803         * gnulib/import/m4/strtok_r.m4: Update.
2804         * gnulib/import/m4/sys_socket_h.m4: Update.
2805         * gnulib/import/m4/sys_stat_h.m4: Update.
2806         * gnulib/import/m4/sys_time_h.m4: Update.
2807         * gnulib/import/m4/sys_types_h.m4: Update.
2808         * gnulib/import/m4/tempname.m4: Update.
2809         * gnulib/import/m4/time_h.m4: Update.
2810         * gnulib/import/m4/unistd-safer.m4: Update.
2811         * gnulib/import/m4/unistd_h.m4: Update.
2812         * gnulib/import/m4/warn-on-use.m4: Update.
2813         * gnulib/import/m4/wchar_h.m4: Update.
2814         * gnulib/import/m4/wchar_t.m4: Update.
2815         * gnulib/import/m4/wctype_h.m4: Update.
2816         * gnulib/import/m4/wint_t.m4: Update.
2817         * gnulib/import/malloc.c: Update.
2818         * gnulib/import/malloc/scratch_buffer.h: Update.
2819         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2820         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2821         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2822         * gnulib/import/malloca.c: Update.
2823         * gnulib/import/malloca.h: Update.
2824         * gnulib/import/malloca.valgrind: Update.
2825         * gnulib/import/math.in.h: Update.
2826         * gnulib/import/mbrtowc.c: Update.
2827         * gnulib/import/mbsinit.c: Update.
2828         * gnulib/import/mbsrtowcs-impl.h: Update.
2829         * gnulib/import/mbsrtowcs-state.c: Update.
2830         * gnulib/import/mbsrtowcs.c: Update.
2831         * gnulib/import/memchr.c: Update.
2832         * gnulib/import/memmem.c: Update.
2833         * gnulib/import/mempcpy.c: Update.
2834         * gnulib/import/memrchr.c: Update.
2835         * gnulib/import/mkdir.c: Update.
2836         * gnulib/import/mkstemp.c: Update.
2837         * gnulib/import/msvc-inval.c: Update.
2838         * gnulib/import/msvc-inval.h: Update.
2839         * gnulib/import/msvc-nothrow.c: Update.
2840         * gnulib/import/msvc-nothrow.h: Update.
2841         * gnulib/import/open.c: Update.
2842         * gnulib/import/openat-die.c: Update.
2843         * gnulib/import/openat-priv.h: Update.
2844         * gnulib/import/openat-proc.c: Update.
2845         * gnulib/import/openat.c: Update.
2846         * gnulib/import/openat.h: Update.
2847         * gnulib/import/opendir.c: Update.
2848         * gnulib/import/pathmax.h: Update.
2849         * gnulib/import/pipe-safer.c: Update.
2850         * gnulib/import/rawmemchr.c: Update.
2851         * gnulib/import/readdir.c: Update.
2852         * gnulib/import/readlink.c: Update.
2853         * gnulib/import/realloc.c: Update.
2854         * gnulib/import/ref-add.sin: Update.
2855         * gnulib/import/ref-del.sin: Update.
2856         * gnulib/import/rename.c: Update.
2857         * gnulib/import/rewinddir.c: Update.
2858         * gnulib/import/rmdir.c: Update.
2859         * gnulib/import/same-inode.h: Update.
2860         * gnulib/import/save-cwd.c: Update.
2861         * gnulib/import/save-cwd.h: Update.
2862         * gnulib/import/scratch_buffer.h: Update.
2863         * gnulib/import/secure_getenv.c: Update.
2864         * gnulib/import/setenv.c: Update.
2865         * gnulib/import/signal.in.h: Update.
2866         * gnulib/import/stat-time.c: Update.
2867         * gnulib/import/stat-time.h: Update.
2868         * gnulib/import/stat-w32.c: Update.
2869         * gnulib/import/stat-w32.h: Update.
2870         * gnulib/import/stat.c: Update.
2871         * gnulib/import/stdbool.in.h: Update.
2872         * gnulib/import/stddef.in.h: Update.
2873         * gnulib/import/stdint.in.h: Update.
2874         * gnulib/import/stdio.in.h: Update.
2875         * gnulib/import/stdlib.in.h: Update.
2876         * gnulib/import/str-two-way.h: Update.
2877         * gnulib/import/strchrnul.c: Update.
2878         * gnulib/import/strdup.c: Update.
2879         * gnulib/import/streq.h: Update.
2880         * gnulib/import/strerror-override.c: Update.
2881         * gnulib/import/strerror-override.h: Update.
2882         * gnulib/import/strerror.c: Update.
2883         * gnulib/import/string.in.h: Update.
2884         * gnulib/import/stripslash.c: Update.
2885         * gnulib/import/strnlen1.c: Update.
2886         * gnulib/import/strnlen1.h: Update.
2887         * gnulib/import/strstr.c: Update.
2888         * gnulib/import/strtok_r.c: Update.
2889         * gnulib/import/sys_stat.in.h: Update.
2890         * gnulib/import/sys_time.in.h: Update.
2891         * gnulib/import/sys_types.in.h: Update.
2892         * gnulib/import/tempname.c: Update.
2893         * gnulib/import/tempname.h: Update.
2894         * gnulib/import/time.in.h: Update.
2895         * gnulib/import/unistd--.h: Update.
2896         * gnulib/import/unistd-safer.h: Update.
2897         * gnulib/import/unistd.in.h: Update.
2898         * gnulib/import/unsetenv.c: Update.
2899         * gnulib/import/verify.h: Update.
2900         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2901         * gnulib/import/wchar.in.h: Update.
2902         * gnulib/import/wctype.in.h: Update.
2903         * gnulib/import/xalloc-oversized.h: Update.
2904         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2905         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2906
2907 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2908
2909         * record-btrace.c (get_thread_current_frame): Remove
2910         old_inferior_ptid.
2911
2912 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2913
2914         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2915         with check_tag to 1 if and only if the type is tagged and the
2916         component being searched cannot been found in the current
2917         view. Otherwise, always call ada_to_fixed_type with
2918         check_tag to 0.
2919
2920 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2921
2922         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2923         declaration.
2924         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2925         * ada-varobj.c (ada_varobj_get_number_of_children,
2926         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2927
2928 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2929
2930         * ada-valprint.c (ada_value_print): Use type instead of
2931         enclosing type.
2932
2933 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2934
2935         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2936         an array of access to unconstrained array.
2937
2938 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2939
2940         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2941         (ada_check_typedef): Use it.
2942
2943 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2944
2945         * ada-varobj.c (ada_varobj_describe_struct_child)
2946         (ada_varobj_describe_child): Handle union case like struct one.
2947
2948 2018-09-10  Tom Tromey  <tom@tromey.com>
2949
2950         PR python/18380:
2951         * python/python.c (_initialize_python): Make example in "python"
2952         help work in Python 3.
2953
2954 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2955
2956         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2957         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2958         $(EXEEXT) to the script, as it is not a program.
2959
2960 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2961
2962         * python/py-prettyprint.c (pretty_print_one_value): Return
2963         gdbpy_ref<>.
2964         (print_string_repr): Adjust.
2965         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2966         * python/python-internal.h (apply_varobj_pretty_printer): Return
2967         gdbpy_ref<>.
2968         * varobj.c (varobj_value_get_print_value): Adjust.
2969
2970 2018-09-08  Tom Tromey  <tom@tromey.com>
2971
2972         PR python/16047:
2973         * python/py-prettyprint.c (pretty_print_one_value): Check for
2974         to_string method.
2975
2976 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2977
2978         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2979         replace_operator_with_call.
2980
2981 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2982
2983         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2984
2985 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2986
2987         * ada-typeprint.c (print_range): Print the bounds using TYPE
2988         rather than its TYPE_TARGET_TYPE.
2989
2990 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2991
2992         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2993         call to ada_to_fixed_value_create.
2994
2995 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2996
2997         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2998
2999 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3000
3001         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3002         by calls to error.
3003
3004 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3005
3006         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3007         Move update of loop variable "fi".
3008
3009 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3010
3011         * ada-lang.c (value_assign_to_component): In the case of
3012         big-endian targets, extract the bits of the given VAL
3013         using an src_offset of zero if container is not a scalar.
3014
3015 2018-09-06  Simon Ser  <contact@emersion.fr>
3016
3017         PR gdb/23105
3018         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3019         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3020         * fbsd-tdep.c (fbsd_make_note_desc): New.
3021         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3022         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3023         * target.h (enum target_object) Add FreeBSD-specific
3024         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3025
3026 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3027
3028         * compile/compile-c.h (generate_c_for_variable_locations):
3029         Change reference to pointer.
3030         * compile/compile-c-support.c (compile_program) <compute>:
3031         Likewise.
3032         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3033         (generate_c_for_for_one_variable): Likewise
3034         (generate_c_for_variable_locations): Likewise
3035         * compile/compile-c-types.c (compile_c_instance::convert_type):
3036         Likewise
3037         * compile/compile-cplus-symbols.c (convert_one_symbol):
3038         std::move the scope passed to enter_scope.
3039         * compile/compile-cplus-types.c
3040         (compile_cplus_instance::enter_scope): Make parameter
3041         rvalue-reference.
3042         (compile_cplus_instance::new_scope): Change reference to
3043         pointer.
3044         (compile_cplus_instance::convert_type): Likewise
3045         (compile_cplus_convert_typedef): std::move the scope passed to
3046         enter_scope.
3047         (compile_cplus_convert_struct_or_union): Likewise.
3048         (compile_cplus_convert_enum): Likewise.
3049         (compile_cplus_convert_namespace): Likewise.
3050         * compile/compile-cplus.h (compile_cplus_instance)
3051         <enter_scope>: Make parameter rvalue-reference.
3052         * compile/compile-internal.h (compile_instance)
3053         <get_cached_type>: Likewise
3054         * compile/compile-loc2c.c (push): Likewise
3055         (pushf): Likewise
3056         (unary): Likewise
3057         (binary): Likewise
3058         (print_label): Likewise
3059         (pushf_register_address): Likewise
3060         (pushf_register): Likewise
3061         (do_compile_dwarf_expr_to_c): Likewise
3062         (compile_dwarf_expr_to_c): Likewise
3063         (compile_dwarf_bounds_to_c): Likewise
3064         * compile/compile.c (compile_instance::get_cached_type):
3065         Likewise
3066         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3067         (compile_dwarf_bounds_to_c): Likewise
3068         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3069         (dwarf2_compile_property_to_c): Likewise
3070         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3071         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3072         Likewise
3073
3074 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3075
3076         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3077         * tui/tui-data.c (init_content_element): Don't initialize it.
3078
3079 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3080
3081         * tui/tui-data.h (struct tui_win_info)
3082         <detail::opaque>: Remove.
3083         * tui/tui-data.c (init_win_info): Remove assignment.
3084
3085 2018-09-05  Tom Tromey  <tom@tromey.com>
3086
3087         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3088         -Wformat-nonliteral.
3089         * target-float.c (host_float_ops<T>::to_string)
3090         (host_float_ops<T>::from_string): Use
3091         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3092         * configure: Rebuild.
3093
3094 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3095
3096         * printcmd.c (printf_c_string): Use
3097         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3098         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3099
3100 2018-09-05  Tom Tromey  <tom@tromey.com>
3101
3102         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3103
3104 2018-09-05  Tom de Vries  <tdevries@suse.de>
3105
3106         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3107         with resolve_abstract_p == true.
3108         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3109         defaulting to false. Propagate resolve_abstract_p to
3110         dwarf2_fetch_die_loc_sect_off.
3111         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3112         parameter, defaulting to false.
3113         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3114         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3115         parameter.
3116         * dwarf2read.h (struct die_info): Forward-declare.
3117         (die_info_ptr): New typedef.
3118         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3119
3120 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3121
3122         GDB 8.2 released.
3123
3124 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3125             Pedro Alves  <palves@redhat.com>
3126
3127         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3128         "aclocal-m4-deps.mk".  Include file here.
3129         $(srcdir)/aclocal.m4: Add "configure.ac".
3130         * gnulib/aclocal-m4-deps.mk: New file.
3131         * gnulib/update-gnulib.sh: Automatically update
3132         "aclocal-m4-deps.mk".
3133
3134 2018-09-04  Tom Tromey  <tom@tromey.com>
3135
3136         * configure: Rebuild.
3137         * configure.ac: Remove multi-ice code.
3138
3139 2018-09-04  Tom Tromey  <tom@tromey.com>
3140
3141         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3142         (ada-exp.o): Update.
3143
3144 2018-09-04  Tom Tromey  <tom@tromey.com>
3145
3146         * Makefile.in (printcmd.o, target-float.o): Remove.
3147         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3148
3149 2018-09-04  Tom Tromey  <tom@tromey.com>
3150
3151         * gnulib/Makefile.in: Remove obsolete comment.
3152         * Makefile.in: Remove obsolete comment.
3153
3154 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3155
3156         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3157         line with '+'.
3158
3159 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3160
3161         * riscv-tdep.c: Add 'prologue-value.h' include.
3162         (struct riscv_unwind_cache): New struct.
3163         (riscv_debug_unwinder): New global.
3164         (riscv_scan_prologue): Update arguments, capture register details
3165         from prologue scan.
3166         (riscv_skip_prologue): Reformat arguments line, move end of
3167         prologue calculation into riscv_scan_prologue.
3168         (riscv_frame_cache): Update return type, create
3169         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3170         details.
3171         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3172         (riscv_frame_prev_register): Use the trad_frame within the
3173         riscv_unwind_cache.
3174         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3175         flag.
3176
3177 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3178
3179         * trad-frame.h (trad_frame_set_realreg): Declare.
3180         (trad_frame_set_addr): Declare.
3181         * trad-frame.c (trad_frame_set_realreg): Define new function.
3182         (trad_frame_set_addr): Define new function.
3183         (trad_frame_set_reg_realreg): Use new function.
3184         (trad_frame_set_reg_addr): Use new function.
3185
3186 2018-09-01  Keith Seitz  <keiths@redhat.com>
3187
3188         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3189         pulongest instead of "%lld".
3190         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3191         ATTRIBUTE_UNUSED.
3192
3193 2018-08-31  Tom Tromey  <tom@tromey.com>
3194
3195         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3196         variant part type.
3197
3198 2018-08-31  Pedro Alves  <palves@redhat.com>
3199
3200         * gdbarch.h: Regenerate.
3201
3202 2018-08-31  Pedro Alves  <palves@redhat.com>
3203
3204         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3205         * target.h (Hardware watchpoint interfaces): Describe
3206         continuable/steppable/non-steppable watchpoints.
3207         * gdbarch.h, gdbarch.c: Regenerate.
3208
3209 2018-08-31  Pedro Alves  <palves@redhat.com>
3210
3211         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3212         Delete.
3213         * s390-linux-nat.c
3214         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3215         * target.h (target_ops::have_continuable_watchpoint): Delete.
3216         (target_have_continuable_watchpoint): Delete.
3217         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3218         * target-delegates.c: Regenerate.
3219
3220 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3221
3222         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3223         the files present in "gnulib/import/m4/".
3224
3225 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3226
3227         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3228         c.sw, c.swsp, and c.sdsp.
3229
3230 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3231
3232         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3233         (riscv_read_misa_reg): Don't cache value read into inferior data.
3234         (riscv_new_inferior_data): Delete.
3235         (riscv_inferior_data_cleanup): Delete.
3236         (riscv_inferior_data): Delete.
3237         (riscv_invalidate_inferior_data): Delete.
3238         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3239
3240 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3241
3242         * compile/compile-cplus-types.c
3243         (compile_cplus_instance::leave_scope): Take the address of scope
3244         object.
3245         (compile_cplus_instance::convert_qualified_base): Compare quals
3246         to 0.
3247
3248 2018-08-30  Keith Seitz  <keiths@redhat.com>
3249
3250         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3251         Use "%s" and host_address_to_string instead of "%p" in printf.
3252
3253 2018-08-29  Keith Seitz  <keiths@redhat.com>
3254
3255         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3256         and compile-cplus-types.c.
3257         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3258         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3259         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3260         Declare.
3261         * compile/compile-c-support.c: Include compile-cplus.h.
3262         (load_libcompile): Templatize.
3263         (get_compile_context): "New" function.
3264         (c_get_compile_context): Use get_compile_context.
3265         (cplus_get_compile_context): New function.
3266         (cplus_push_user_expression, cplus_pop_user_expression)
3267         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3268         (cplus_compute_program): Define new structs/functions.
3269         * compile/compile-cplus-symmbols.c: New file.
3270         * compile/compile-cplus-types.c: New file.
3271         * compile/compile-cplus.h: New file.
3272         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3273         Declare.
3274         * compile/compile-object-load.c (get_out_value_type): Use
3275         strncmp_iw when comparing symbol names.
3276         (compile_object_load): Add mst_bss and mst_data.
3277         * compile/compile.c (_initialize_compile): Remove
3278         -Wno-implicit-function-declaration from `compile_args'.
3279         * compile/gcc-cp-plugin.h: New file.
3280         * NEWS: Mention C++ compile support and new debug options.
3281
3282 2018-08-29  Keith Seitz  <keiths@redhat.com>
3283
3284         * linespec.c (collect_info::add_symbol): Make virtual.
3285         (struct symbol_searcher_collect_info): New struct.
3286         (symbol_searcher::find_all_symbols): New method.
3287         * symtab.h (class symbol_searcher): New class.
3288
3289 2018-08-29  Keith Seitz  <keiths@redhat.com>
3290
3291         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3292         Change to vector of block_symbol.  Update all users.
3293         (struct collect_info) <symbols>: Likewise.
3294         (collect_info::add_symbol): Take block_symbol as argument.
3295         Update all callers.
3296         (decode_compound_collector) <m_symbols>: Change type to vector
3297         of block_symbol.  Update all users.
3298         (decode_compound_collector::operator ()): Change parameter type
3299         to block_symbol.
3300         (find_method, find_function_symbols, find_linespec_symbols)
3301         (find_label_symbols_in_block, find_label_symbols): Change symbol
3302         vectors to block_symbol vectors.
3303         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3304         block_symbol.
3305
3306 2018-08-29  Keith Seitz  <keiths@redhat.com>
3307
3308         * linespec.c (symbolp): Remove typedef and VEC definitions.
3309         (bound_minimal_symbol_d): Likewise.
3310
3311 2018-08-29  Keith Seitz  <keiths@redhat.com>
3312
3313         * linespec.c (decode_compound_collector::decode_compound_collector):
3314         Remove initialization for `m_symtabs'.
3315         (decode_compound_collector::release_symbols): Change return type
3316         to std::vector.  Update all callers.
3317         (class decode_compound_collector) <m_symbols>: Change type to
3318         std::vector.
3319         (lookup_prefix_sym): Change return type to std::vector.  Update all
3320         callers.
3321         (compare_symbols): Remove.
3322         (std_compare_symbols): Rename to `compare_symbols'.
3323         (find_method): Change `sym_classes' parameter to std::vector.
3324         Update all callers.  Use std::sort to sort sym_classes.
3325         (find_linespec_symbols): Remove cleanup.
3326
3327 2018-08-29  Keith Seitz  <keiths@redhat.com>
3328
3329         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3330         std::vector.  Update all users.
3331         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3332         (struct collect_info) <minimal_symbols>: Likewise.
3333         (compare_msymbols): Return bool.  Change parameters to const
3334         bound_minimal_symbol references.
3335         (find_method, find_function_symbols, find_linespec_symbols): Change
3336         `minsyms' parameter to std::vector.  Update all callers.
3337
3338 2018-08-29  Keith Seitz  <keiths@redhat.com>
3339
3340         * linespec.c (struct linespec) <label_symbols>: Change type to
3341         std::vector.  Update all users.
3342         (find_label_symbols_in_block): Change `result' parameter to
3343         std::vector.  Update all callers.
3344         (find_label_symbols): Return std::vector.  Update all callers.
3345
3346 2018-08-29  Keith Seitz  <keiths@redhat.com>
3347
3348         * linespec.c (struct linespec) <function_symbols>: Change type to
3349         std::vector.  Update all users.
3350         (struct collect_info) <function_symbols>: Likewise.
3351         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3352         (std_compare_symbols): New function.
3353         (find_method, find_function_symbols, find_linespec_symbols)
3354         (find_label_symbols_in_block): Change `symbols' parameter to
3355         std::vector.  Update all callers.
3356         (find_label_symbols): Likewise for `function_symbols' and
3357         `label_funcs_ret'.
3358
3359 2018-08-29  Keith Seitz  <keiths@redhat.com>
3360
3361         * linespec.c (symtab_vector_up): Define.
3362         (struct linespec) <file_symtabs>: Change type to std::vector *.
3363         Update all uses.
3364         (struct collect_info) <file_symtabs>: Likewise.
3365         (collect_symtabs_from_filename): Return symtab_vector_up.
3366         Update all callers.
3367         (decode_objc): Remove cleanup.
3368         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3369         (symtab_collector::release_symtabs): Return symtab_vector_up.
3370         Update all callers.
3371         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3372         Update all users.
3373         (collect_symtabs_from_filename, symtabs_from_filename): Return
3374         symtab_vector_up.  Update all callers.
3375
3376 2018-08-29  Tom Tromey  <tom@tromey.com>
3377
3378         * csky-tdep.c (csky_analyze_prologue): Use
3379         core_addr_to_string_nz.
3380
3381 2018-08-29  Tom Tromey  <tom@tromey.com>
3382
3383         * windows-nat.c (struct xlate_exception) <them>: Change type to
3384         DWORD.
3385         (xlate): Fix formatting.  Remove last entry.
3386         (struct xlate_exception, xlate): Comment out.
3387         (windows_nat_target::resume): Use ranged for.
3388
3389 2018-08-29  Jim Wilson  <jimw@sifive.com>
3390
3391         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3392         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3393         of NT_PRFPREG.
3394         (riscv_linux_nat_target::store_registers): Likewise.
3395
3396 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3397
3398         PR gdb/23555
3399         PR gdb/23558
3400         * gnulib/aclocal.m4: Regenerate.
3401         * gnulib/config.in: Regenerate.
3402         * gnulib/configure: Regenerate.
3403         * gnulib/import/Makefile.am: Update.
3404         * gnulib/import/Makefile.in: Update.
3405         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3406         * gnulib/import/_Noreturn.h: ... this.
3407         * gnulib/import/alloca.in.h: Update.
3408         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3409         * gnulib/import/arg-nonnull.h: ... this.
3410         * gnulib/import/assure.h: Update.
3411         * gnulib/import/at-func.c: Update.
3412         * gnulib/import/basename-lgpl.c: Update.
3413         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3414         * gnulib/import/c++defs.h: ... this.
3415         * gnulib/import/canonicalize-lgpl.c: Update.
3416         * gnulib/import/cdefs.h: Update.
3417         * gnulib/import/chdir-long.c: Update.
3418         * gnulib/import/chdir-long.h: Update.
3419         * gnulib/import/cloexec.c: Update.
3420         * gnulib/import/cloexec.h: Update.
3421         * gnulib/import/close.c: Update.
3422         * gnulib/import/closedir.c: Update.
3423         * gnulib/import/config.charset: Update.
3424         * gnulib/import/dirent-private.h: Update.
3425         * gnulib/import/dirent.in.h: Update.
3426         * gnulib/import/dirfd.c: Update.
3427         * gnulib/import/dirname-lgpl.c: Update.
3428         * gnulib/import/dirname.h: Update.
3429         * gnulib/import/dosname.h: Update.
3430         * gnulib/import/dup-safer-flag.c: Update.
3431         * gnulib/import/dup-safer.c: Update.
3432         * gnulib/import/dup.c: Update.
3433         * gnulib/import/dup2.c: Update.
3434         * gnulib/import/errno.in.h: Update.
3435         * gnulib/import/error.c: Update.
3436         * gnulib/import/error.h: Update.
3437         * gnulib/import/exitfail.c: Update.
3438         * gnulib/import/exitfail.h: Update.
3439         * gnulib/import/extra/update-copyright: Update.
3440         * gnulib/import/fchdir.c: Update.
3441         * gnulib/import/fcntl.c: Update.
3442         * gnulib/import/fcntl.in.h: Update.
3443         * gnulib/import/fd-hook.c: Update.
3444         * gnulib/import/fd-hook.h: Update.
3445         * gnulib/import/fd-safer-flag.c: Update.
3446         * gnulib/import/fd-safer.c: Update.
3447         * gnulib/import/fdopendir.c: Update.
3448         * gnulib/import/filename.h: Update.
3449         * gnulib/import/filenamecat-lgpl.c: Update.
3450         * gnulib/import/filenamecat.h: Update.
3451         * gnulib/import/flexmember.h: Update.
3452         * gnulib/import/float+.h: Update.
3453         * gnulib/import/float.c: Update.
3454         * gnulib/import/float.in.h: Update.
3455         * gnulib/import/fnmatch.c: Update.
3456         * gnulib/import/fnmatch.in.h: Update.
3457         * gnulib/import/fnmatch_loop.c: Update.
3458         * gnulib/import/fpucw.h: Update.
3459         * gnulib/import/frexp.c: Update.
3460         * gnulib/import/frexpl.c: Update.
3461         * gnulib/import/fstat.c: Update.
3462         * gnulib/import/fstatat.c: Update.
3463         * gnulib/import/getcwd-lgpl.c: Update.
3464         * gnulib/import/getcwd.c: Update.
3465         * gnulib/import/getdtablesize.c: Update.
3466         * gnulib/import/getlogin_r.c: Update.
3467         * gnulib/import/getprogname.c: Update.
3468         * gnulib/import/getprogname.h: Update.
3469         * gnulib/import/gettext.h: Update.
3470         * gnulib/import/gettimeofday.c: Update.
3471         * gnulib/import/glob-libc.h: Update.
3472         * gnulib/import/glob.c: Update.
3473         * gnulib/import/glob.in.h: Update.
3474         * gnulib/import/glob_internal.h: Update.
3475         * gnulib/import/glob_pattern_p.c: Update.
3476         * gnulib/import/globfree.c: Update.
3477         * gnulib/import/hard-locale.c: Update.
3478         * gnulib/import/hard-locale.h: Update.
3479         * gnulib/import/intprops.h: Update.
3480         * gnulib/import/inttypes.in.h: Update.
3481         * gnulib/import/isnan.c: Update.
3482         * gnulib/import/isnand-nolibm.h: Update.
3483         * gnulib/import/isnand.c: Update.
3484         * gnulib/import/isnanl-nolibm.h: Update.
3485         * gnulib/import/isnanl.c: Update.
3486         * gnulib/import/itold.c: Update.
3487         * gnulib/import/libc-config.h: Update.
3488         * gnulib/import/limits.in.h: Update.
3489         * gnulib/import/localcharset.c: Update.
3490         * gnulib/import/localcharset.h: Update.
3491         * gnulib/import/localtime-buffer.c: Update.
3492         * gnulib/import/localtime-buffer.h: Update.
3493         * gnulib/import/lstat.c: Update.
3494         * gnulib/import/m4/00gnulib.m4: Update.
3495         * gnulib/import/m4/__inline.m4: Update.
3496         * gnulib/import/m4/absolute-header.m4: Update.
3497         * gnulib/import/m4/alloca.m4: Update.
3498         * gnulib/import/m4/builtin-expect.m4: Update.
3499         * gnulib/import/m4/canonicalize.m4: Update.
3500         * gnulib/import/m4/chdir-long.m4: Update.
3501         * gnulib/import/m4/close.m4: Update.
3502         * gnulib/import/m4/closedir.m4: Update.
3503         * gnulib/import/m4/configmake.m4: Update.
3504         * gnulib/import/m4/d-ino.m4: Update.
3505         * gnulib/import/m4/d-type.m4: Update.
3506         * gnulib/import/m4/dirent_h.m4: Update.
3507         * gnulib/import/m4/dirfd.m4: Update.
3508         * gnulib/import/m4/dirname.m4: Update.
3509         * gnulib/import/m4/double-slash-root.m4: Update.
3510         * gnulib/import/m4/dup.m4: Update.
3511         * gnulib/import/m4/dup2.m4: Update.
3512         * gnulib/import/m4/eealloc.m4: Update.
3513         * gnulib/import/m4/environ.m4: Update.
3514         * gnulib/import/m4/errno_h.m4: Update.
3515         * gnulib/import/m4/error.m4: Update.
3516         * gnulib/import/m4/exponentd.m4: Update.
3517         * gnulib/import/m4/exponentl.m4: Update.
3518         * gnulib/import/m4/extensions.m4: Update.
3519         * gnulib/import/m4/extern-inline.m4: Update.
3520         * gnulib/import/m4/fchdir.m4: Update.
3521         * gnulib/import/m4/fcntl-o.m4: Update.
3522         * gnulib/import/m4/fcntl.m4: Update.
3523         * gnulib/import/m4/fcntl_h.m4: Update.
3524         * gnulib/import/m4/fdopendir.m4: Update.
3525         * gnulib/import/m4/filenamecat.m4: Update.
3526         * gnulib/import/m4/flexmember.m4: Update.
3527         * gnulib/import/m4/float_h.m4: Update.
3528         * gnulib/import/m4/fnmatch.m4: Update.
3529         * gnulib/import/m4/fnmatch_h.m4: Update.
3530         * gnulib/import/m4/fpieee.m4: Update.
3531         * gnulib/import/m4/frexp.m4: Update.
3532         * gnulib/import/m4/frexpl.m4: Update.
3533         * gnulib/import/m4/fstat.m4: Update.
3534         * gnulib/import/m4/fstatat.m4: Update.
3535         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3536         * gnulib/import/m4/getcwd-path-max.m4: Update.
3537         * gnulib/import/m4/getcwd.m4: Update.
3538         * gnulib/import/m4/getdtablesize.m4: Update.
3539         * gnulib/import/m4/getlogin.m4: Update.
3540         * gnulib/import/m4/getlogin_r.m4: Update.
3541         * gnulib/import/m4/getpagesize.m4: Update.
3542         * gnulib/import/m4/getprogname.m4: Update.
3543         * gnulib/import/m4/gettimeofday.m4: Update.
3544         * gnulib/import/m4/glibc21.m4: Update.
3545         * gnulib/import/m4/glob.m4: Update.
3546         * gnulib/import/m4/glob_h.m4: Update.
3547         * gnulib/import/m4/gnulib-cache.m4: Update.
3548         * gnulib/import/m4/gnulib-common.m4: Update.
3549         * gnulib/import/m4/gnulib-comp.m4: Update.
3550         * gnulib/import/m4/gnulib-tool.m4: Update.
3551         * gnulib/import/m4/hard-locale.m4: Update.
3552         * gnulib/import/m4/include_next.m4: Update.
3553         * gnulib/import/m4/inttypes-pri.m4: Update.
3554         * gnulib/import/m4/inttypes.m4: Update.
3555         * gnulib/import/m4/isnand.m4: Update.
3556         * gnulib/import/m4/isnanl.m4: Update.
3557         * gnulib/import/m4/largefile.m4: Update.
3558         * gnulib/import/m4/limits-h.m4: Update.
3559         * gnulib/import/m4/localcharset.m4: Update.
3560         * gnulib/import/m4/locale-fr.m4: Update.
3561         * gnulib/import/m4/locale-ja.m4: Update.
3562         * gnulib/import/m4/locale-zh.m4: Update.
3563         * gnulib/import/m4/localtime-buffer.m4: Update.
3564         * gnulib/import/m4/longlong.m4: Update.
3565         * gnulib/import/m4/lstat.m4: Update.
3566         * gnulib/import/m4/malloc.m4: Update.
3567         * gnulib/import/m4/malloca.m4: Update.
3568         * gnulib/import/m4/math_h.m4: Update.
3569         * gnulib/import/m4/mbrtowc.m4: Update.
3570         * gnulib/import/m4/mbsinit.m4: Update.
3571         * gnulib/import/m4/mbsrtowcs.m4: Update.
3572         * gnulib/import/m4/mbstate_t.m4: Update.
3573         * gnulib/import/m4/memchr.m4: Update.
3574         * gnulib/import/m4/memmem.m4: Update.
3575         * gnulib/import/m4/mempcpy.m4: Update.
3576         * gnulib/import/m4/memrchr.m4: Update.
3577         * gnulib/import/m4/mkdir.m4: Update.
3578         * gnulib/import/m4/mkstemp.m4: Update.
3579         * gnulib/import/m4/mmap-anon.m4: Update.
3580         * gnulib/import/m4/mode_t.m4: Update.
3581         * gnulib/import/m4/msvc-inval.m4: Update.
3582         * gnulib/import/m4/msvc-nothrow.m4: Update.
3583         * gnulib/import/m4/multiarch.m4: Update.
3584         * gnulib/import/m4/nocrash.m4: Update.
3585         * gnulib/import/m4/off_t.m4: Update.
3586         * gnulib/import/m4/onceonly.m4: Update.
3587         * gnulib/import/m4/open-cloexec.m4: Update.
3588         * gnulib/import/m4/open.m4: Update.
3589         * gnulib/import/m4/openat.m4: Update.
3590         * gnulib/import/m4/opendir.m4: Update.
3591         * gnulib/import/m4/pathmax.m4: Update.
3592         * gnulib/import/m4/rawmemchr.m4: Update.
3593         * gnulib/import/m4/readdir.m4: Update.
3594         * gnulib/import/m4/readlink.m4: Update.
3595         * gnulib/import/m4/realloc.m4: Update.
3596         * gnulib/import/m4/rename.m4: Update.
3597         * gnulib/import/m4/rewinddir.m4: Update.
3598         * gnulib/import/m4/rmdir.m4: Update.
3599         * gnulib/import/m4/save-cwd.m4: Update.
3600         * gnulib/import/m4/secure_getenv.m4: Update.
3601         * gnulib/import/m4/setenv.m4: Update.
3602         * gnulib/import/m4/signal_h.m4: Update.
3603         * gnulib/import/m4/ssize_t.m4: Update.
3604         * gnulib/import/m4/stat-time.m4: Update.
3605         * gnulib/import/m4/stat.m4: Update.
3606         * gnulib/import/m4/std-gnu11.m4: Update.
3607         * gnulib/import/m4/stdbool.m4: Update.
3608         * gnulib/import/m4/stddef_h.m4: Update.
3609         * gnulib/import/m4/stdint.m4: Update.
3610         * gnulib/import/m4/stdio_h.m4: Update.
3611         * gnulib/import/m4/stdlib_h.m4: Update.
3612         * gnulib/import/m4/strchrnul.m4: Update.
3613         * gnulib/import/m4/strdup.m4: Update.
3614         * gnulib/import/m4/strerror.m4: Update.
3615         * gnulib/import/m4/string_h.m4: Update.
3616         * gnulib/import/m4/strstr.m4: Update.
3617         * gnulib/import/m4/strtok_r.m4: Update.
3618         * gnulib/import/m4/sys_socket_h.m4: Update.
3619         * gnulib/import/m4/sys_stat_h.m4: Update.
3620         * gnulib/import/m4/sys_time_h.m4: Update.
3621         * gnulib/import/m4/sys_types_h.m4: Update.
3622         * gnulib/import/m4/tempname.m4: Update.
3623         * gnulib/import/m4/time_h.m4: Update.
3624         * gnulib/import/m4/unistd-safer.m4: Update.
3625         * gnulib/import/m4/unistd_h.m4: Update.
3626         * gnulib/import/m4/warn-on-use.m4: Update.
3627         * gnulib/import/m4/wchar_h.m4: Update.
3628         * gnulib/import/m4/wchar_t.m4: Update.
3629         * gnulib/import/m4/wctype_h.m4: Update.
3630         * gnulib/import/m4/wint_t.m4: Update.
3631         * gnulib/import/malloc.c: Update.
3632         * gnulib/import/malloc/scratch_buffer.h: Update.
3633         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3634         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3635         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3636         * gnulib/import/malloca.c: Update.
3637         * gnulib/import/malloca.h: Update.
3638         * gnulib/import/malloca.valgrind: Update.
3639         * gnulib/import/math.in.h: Update.
3640         * gnulib/import/mbrtowc.c: Update.
3641         * gnulib/import/mbsinit.c: Update.
3642         * gnulib/import/mbsrtowcs-impl.h: Update.
3643         * gnulib/import/mbsrtowcs-state.c: Update.
3644         * gnulib/import/mbsrtowcs.c: Update.
3645         * gnulib/import/memchr.c: Update.
3646         * gnulib/import/memmem.c: Update.
3647         * gnulib/import/mempcpy.c: Update.
3648         * gnulib/import/memrchr.c: Update.
3649         * gnulib/import/mkdir.c: Update.
3650         * gnulib/import/mkstemp.c: Update.
3651         * gnulib/import/msvc-inval.c: Update.
3652         * gnulib/import/msvc-inval.h: Update.
3653         * gnulib/import/msvc-nothrow.c: Update.
3654         * gnulib/import/msvc-nothrow.h: Update.
3655         * gnulib/import/open.c: Update.
3656         * gnulib/import/openat-die.c: Update.
3657         * gnulib/import/openat-priv.h: Update.
3658         * gnulib/import/openat-proc.c: Update.
3659         * gnulib/import/openat.c: Update.
3660         * gnulib/import/openat.h: Update.
3661         * gnulib/import/opendir.c: Update.
3662         * gnulib/import/pathmax.h: Update.
3663         * gnulib/import/pipe-safer.c: Update.
3664         * gnulib/import/rawmemchr.c: Update.
3665         * gnulib/import/readdir.c: Update.
3666         * gnulib/import/readlink.c: Update.
3667         * gnulib/import/realloc.c: Update.
3668         * gnulib/import/ref-add.sin: Update.
3669         * gnulib/import/ref-del.sin: Update.
3670         * gnulib/import/rename.c: Update.
3671         * gnulib/import/rewinddir.c: Update.
3672         * gnulib/import/rmdir.c: Update.
3673         * gnulib/import/same-inode.h: Update.
3674         * gnulib/import/save-cwd.c: Update.
3675         * gnulib/import/save-cwd.h: Update.
3676         * gnulib/import/scratch_buffer.h: Update.
3677         * gnulib/import/secure_getenv.c: Update.
3678         * gnulib/import/setenv.c: Update.
3679         * gnulib/import/signal.in.h: Update.
3680         * gnulib/import/stat-time.c: Update.
3681         * gnulib/import/stat-time.h: Update.
3682         * gnulib/import/stat-w32.c: Update.
3683         * gnulib/import/stat-w32.h: Update.
3684         * gnulib/import/stat.c: Update.
3685         * gnulib/import/stdbool.in.h: Update.
3686         * gnulib/import/stddef.in.h: Update.
3687         * gnulib/import/stdint.in.h: Update.
3688         * gnulib/import/stdio.in.h: Update.
3689         * gnulib/import/stdlib.in.h: Update.
3690         * gnulib/import/str-two-way.h: Update.
3691         * gnulib/import/strchrnul.c: Update.
3692         * gnulib/import/strdup.c: Update.
3693         * gnulib/import/streq.h: Update.
3694         * gnulib/import/strerror-override.c: Update.
3695         * gnulib/import/strerror-override.h: Update.
3696         * gnulib/import/strerror.c: Update.
3697         * gnulib/import/string.in.h: Update.
3698         * gnulib/import/stripslash.c: Update.
3699         * gnulib/import/strnlen1.c: Update.
3700         * gnulib/import/strnlen1.h: Update.
3701         * gnulib/import/strstr.c: Update.
3702         * gnulib/import/strtok_r.c: Update.
3703         * gnulib/import/sys_stat.in.h: Update.
3704         * gnulib/import/sys_time.in.h: Update.
3705         * gnulib/import/sys_types.in.h: Update.
3706         * gnulib/import/tempname.c: Update.
3707         * gnulib/import/tempname.h: Update.
3708         * gnulib/import/time.in.h: Update.
3709         * gnulib/import/unistd--.h: Update.
3710         * gnulib/import/unistd-safer.h: Update.
3711         * gnulib/import/unistd.in.h: Update.
3712         * gnulib/import/unsetenv.c: Update.
3713         * gnulib/import/verify.h: Update.
3714         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3715         * gnulib/import/wchar.in.h: Update.
3716         * gnulib/import/wctype.in.h: Update.
3717         * gnulib/import/xalloc-oversized.h: Update.
3718         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3719         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3720
3721 2018-08-16  Gary Benson <gbenson@redhat.com>
3722
3723         PR gdb/13000:
3724         * gdb/main.c (captured_main_1): Exit with nonzero status
3725         in batch mode if the last command to be executed failed.
3726         * NEWS: Mention the above.
3727
3728 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3729
3730         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3731         end of warning message.
3732
3733 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3734
3735         PR gdb/22943:
3736         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3737         (aarch64_extract_return_value): Use
3738         aapcs_is_vfp_call_or_return_candidate.
3739         (aarch64_return_in_memory): Likewise.
3740         (aarch64_store_return_value): Likewise.
3741
3742 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3743
3744         * aarch64-tdep.c
3745         (aapcs_is_vfp_call_or_return_candidate): Make static
3746         (pass_in_v_or_stack): Remove function.
3747         (pass_in_v_vfp_candidate): New function.
3748         (aarch64_push_dummy_call): Check for float register candidates.
3749
3750 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3751
3752         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3753         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3754         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3755
3756 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3757
3758         PR build/23399
3759         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3760         (struct ipa_sym_addresses): Rename to...
3761         (struct ipa_sym_addresses_common): ... this.
3762         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3763
3764 2018-08-28  Tom Tromey  <tom@tromey.com>
3765
3766         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3767         (token_fifo): Now a std::vector.
3768         (yylex, c_parse): Update.
3769         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3770         (token_fifo): Now a std::vector.
3771         (yylex, d_parse): Update.
3772         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3773         (token_fifo): Now a std::vector.
3774         (yylex, go_parse): Update.
3775
3776 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3777
3778         * parser-defs.h (struct type_stack) <elements>: Change type to
3779         std::vector<union type_stack_elt>.
3780         <depth, size>: Remove.
3781         * parse.c (parse_exp_in_context_1): Adjust.
3782         (type_stack_reserve): Remove.
3783         (check_type_stack_depth): Remove.
3784         (insert_into_type_stack): Adjust to std::vector.
3785         (insert_type): Likewise.
3786         (push_type): Likewise.
3787         (push_type_int): Likewise.
3788         (insert_type_address_space): Likewise.
3789         (pop_type): Likewise.
3790         (pop_type_int): Likewise.
3791         (pop_typelist): Likewise.
3792         (pop_type_stack): Likewise.
3793         (append_type_stack): Likewise.
3794         (push_type_stack): Likewise.
3795         (get_type_stack): Likewise.
3796         (type_stack_cleanup): Likewise.
3797         (push_typelist): Likewise.
3798         (follow_types): Likewise.
3799         (_initialize_parse): Likewise.
3800
3801 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3802
3803         * NEWS: Mention csky target.
3804
3805 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3806             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3807             Don Breazeal  <donb@codesourcery.com>
3808
3809         * csky-linux-tdep.c: New file.
3810         * csky-tdep.c: Likewise.
3811         * csky-tdep.h: Likewise.
3812         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3813         csky-tdep.o.
3814         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3815         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3816         * configure.tgt: Add csky support.
3817
3818 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3819
3820         * python/py-framefilter.c (py_print_frame): Print frame architecture
3821         when printing on an MI output.
3822
3823 2018-08-27  Tom Tromey  <tom@tromey.com>
3824
3825         PR build/23087:
3826         * configure: Rebuild.
3827         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3828
3829 2018-08-27  Tom Tromey  <tom@tromey.com>
3830
3831         * aarch64-linux-tdep.c
3832         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3833         casts to int.
3834
3835 2018-08-27  Tom Tromey  <tom@tromey.com>
3836
3837         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3838         unsigned.
3839         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3840         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3841         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3842         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3843         unsigned.
3844
3845 2018-08-27  Tom Tromey  <tom@tromey.com>
3846
3847         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3848         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3849
3850 2018-08-27  Tom Tromey  <tom@tromey.com>
3851
3852         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3853         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3854         ULONGEST_MAX.
3855         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3856         ULONGEST_MAX.
3857         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3858         ULONGEST_MAX.
3859         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3860         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3861         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3862         ULONGEST_MAX.
3863         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3864         (ppc64_linux_sigaction_tramp_frame)
3865         (ppc32_linux_sighandler_tramp_frame)
3866         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3867         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3868         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3869         * mn10300-linux-tdep.c (am33_linux_sigframe)
3870         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3871         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3872         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3873         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3874         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3875         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3876         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3877         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3878         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3879         * microblaze-linux-tdep.c
3880         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3881         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3882         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3883         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3884         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3885         * common/common-types.h (ULONGEST_MAX): New define.
3886         (CORE_ADDR_MAX): Fix formatting.
3887         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3888         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3889         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3890         (arm_linux_rt_sigreturn_tramp_frame)
3891         (arm_eabi_linux_sigreturn_tramp_frame)
3892         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3893         (thumb2_eabi_linux_sigreturn_tramp_frame)
3894         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3895         (arm_linux_restart_syscall_tramp_frame)
3896         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3897         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3898         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3899         ULONGEST_MAX.
3900         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3901
3902 2018-08-27  Tom Tromey  <tom@tromey.com>
3903
3904         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3905         CORE_ADDR_MAX.
3906         * mips-tdep.c (mips_deal_with_atomic_sequence)
3907         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3908         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3909         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3910         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3911         CORE_ADDR_MAX.
3912         * aarch64-tdep.c (aarch64_software_single_step): Use
3913         CORE_ADDR_MAX.
3914
3915 2018-08-27  Tom Tromey  <tom@tromey.com>
3916
3917         * linespec.c (complete_linespec_component): Add cast to "char".
3918         * completer.c (completion_tracker::build_completion_result): Add
3919         cast to "char".
3920
3921 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3922
3923         * solist.h (struct solist, struct target_so_ops): Fix
3924         indentation.
3925
3926 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3927
3928         * ada-tasks.c (ada_task_info_s): Remove typedef.
3929         (DEF_VEC_O(ada_task_info_s)): Remove.
3930         (struct ada_tasks_inferior_data): Initialize fields.
3931         <task_list>: Make an std::vector.
3932         (get_ada_tasks_inferior_data): Allocate with new.
3933         (ada_get_task_number): Adjust.
3934         (get_task_number_from_id): Likewise.
3935         (valid_task_id): Likewise.
3936         (ada_get_task_info_from_ptid): Likewise.
3937         (iterate_over_live_ada_tasks): Likewise.
3938         (add_ada_task): Likewise.
3939         (read_known_tasks): Likewise.
3940         (ada_build_task_list): Likewise.
3941         (print_ada_task_info): Likewise.
3942         (info_task): Likewise.
3943         (task_command_1): Likewise.
3944
3945 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3946
3947         * ada-lang.c (add_angle_brackets): Return std::string.
3948
3949 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3950
3951         * python/py-threadevent.c (py_get_event_thread): Initialize
3952         pythread.
3953
3954 2018-08-24  Pedro Alves  <palves@redhat.com>
3955
3956         * python/py-bpevent.c (create_breakpoint_event_object): Use
3957         copy-initialization.
3958         * python/py-continueevent.c (emit_continue_event): Use
3959         copy-initialization.
3960         * python/py-exitedevent.c (create_exited_event_object): Return a
3961         gdbpy_ref<>.
3962         (emit_exited_event): Use copy-initialization.
3963         * python/py-inferior.c (python_new_inferior)
3964         (python_inferior_deleted, add_thread_object): Use
3965         copy-initialization.
3966         * python/py-infevents.c (create_inferior_call_event_object)
3967         (create_register_changed_event_object)
3968         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3969         (emit_inferior_call_event, emit_memory_changed_event)
3970         (emit_register_changed_event): Use copy-initialization.
3971         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3972         Return a gdbpy_ref<>.
3973         (emit_new_objfile_event): Use copy-initialization.
3974         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3975         (emit_clear_objfiles_event): Use copy-initialization.
3976         * python/py-signalevent.c (create_signal_event_object): Use
3977         copy-initialization.
3978         * python/py-threadevent.c (create_thread_event_object): Use
3979         copy-initialization.
3980
3981 2018-08-24  Pedro Alves  <palves@redhat.com>
3982             Simon Marchi  <simon.marchi@ericsson.com>
3983
3984         PR gdb/23379
3985         * python/py-continueevent.c: Include "gdbthread.h".
3986         (create_continue_event_object): Add intro comment.  Add 'ptid'
3987         parameter.  Use it to find thread to pass to
3988         create_thread_event_object.
3989         (emit_continue_event): Pass PTID down to
3990         create_continue_event_object.
3991         * python/py-event.h (py_get_event_thread): Declare.
3992         (create_thread_event_object): Remove default from 'thread'
3993         parameter.
3994         * python/py-stopevent.c (create_stop_event_object): Use
3995         py_get_event_thread.
3996         * python/py-threadevent.c (get_event_thread): Rename to ...
3997         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3998         and use it to find the thread.
3999         (create_thread_event_object): Assert that THREAD isn't null.
4000         Don't find the event thread here.
4001
4002 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4003
4004         * block.h (blockrange, blockranges): New struct declarations.
4005         (struct block): Add new field named `ranges'.
4006         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4007         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4008         macros for accessing ranges in struct block.
4009         (make_blockranges): New declaration.
4010         block.c (make_blockranges): New function.
4011         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4012         for block.
4013         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4014         * blockframe.c (cache_pc_function_block): New static global.
4015         (clear_pc_function_cache): Clear cache_pc_function_block.
4016         (find_pc_partial_function): Move comment to symtab.h.  Add
4017         support for non-contiguous blocks.
4018         * cli/cli-cmds.c (block.h): Include.
4019         (print_disassembly): Handle printing of non-contiguous blocks.
4020         (disassemble_current_function): Likewise.
4021         (disassemble_command): Likewise.
4022
4023         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4024         BLOCK_START.
4025         * blockframe.c (get_pc_function_start): Likewise.
4026         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4027         (gcc_symbol_address): Likewise.
4028         * compile/compile-object-run.c (compile_object_run): Likewise.
4029         * compile/compile.c (get_expr_block_and_pc): Likewise.
4030         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4031         (func_addr_to_tail_call_list): Likewise.
4032         * findvar.c (default_read_var_value): Likewise.
4033         * inline-frame.c (inline_frame_this_id): Likewise.
4034         (skip-inline_frames): Likewise.
4035         * infcmd.c (until_next_command): Likewise.
4036         * linespec.c (convert_linespec_to_sals): Likewise.
4037         * parse.c (parse_exp_in_context_1): Likewise.
4038         * printcmd.c (build_address_symbolic): likewise.
4039         (info_address_command): Likewise.
4040         symtab.c (find_function_start_sal): Likewise.
4041         (skip_prologue_sal): Likewise.
4042         (find_function_alias_target): Likewise.
4043         (find_gnu_ifunc): Likewise.
4044         * stack.c (find_frame_funname): Likewise.
4045         * symtab.c (fixup_symbol_section): Likewise.
4046         (find_function_start_sal): Likewise.
4047         (skip_prologue_sal): Likewsie.
4048         (find_function_alias_target): Likewise.
4049         (find_gnu_ifunc): Likewise.
4050         * tracepoint.c (info_scope_command): Likewise.
4051         * value.c (value_fn_field): Likewise.
4052
4053         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4054         in place of find_pc_partial_function.
4055         * blockframe.c (find_function_entry_range_from_pc): New function.
4056         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4057         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4058         for each range in a block.
4059
4060
4061 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4062
4063         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4064         incrementation.
4065
4066 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4067
4068         * solib-svr4.c (read_program_headers_from_bfd): Return
4069         gdb::optional<gdb::byte_vector>.
4070         (svr4_exec_displacement): Adjust.
4071
4072 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4073
4074         * solib-svr4.c (read_program_header): Return
4075         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4076         (find_program_interpreter): Return
4077         gdb::optional<gdb::byte_vector>.
4078         (scan_dyntag_auxv): Adjust.
4079         (enable_break): Adjust.
4080         (svr4_exec_displacement): Adjust.
4081
4082 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4083
4084         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4085         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4086
4087 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4088
4089         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4090         string_vprintf.
4091         * guile/scm-utils.c (gdbscm_printf): Likewise.
4092         * serial.c (serial_printf): Likewise.
4093         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4094
4095 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4096
4097         * stack.c (print_frame): Print frame architecture when printing on
4098         an MI output.
4099         * NEWS: Mention new "arch" attribute in frame output.
4100
4101 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4102
4103         * arch/aarch64.h (aarch64_regnum): Update comment.
4104
4105 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4106
4107         * NEWS: Add SVE to 8.2 section.
4108
4109 2018-08-21  Pedro Alves  <palves@redhat.com>
4110
4111         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4112         out from gdbscm_parse_function_args.
4113         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4114         gdbscm_parse_function_args_1.
4115
4116 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4117
4118         PR gdb/17816
4119         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4120         operator.
4121
4122 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4123
4124         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4125
4126 2018-08-19  Michael Spang  <spang@google.com>
4127
4128         PR gdb/11786
4129         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4130         for PT_TLS segments.
4131
4132 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4133
4134         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4135         dwarf_variable_value.
4136         * dwarf2-frame.c (class dwarf_expr_executor):
4137         Add override for dwarf_variable_value.
4138         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4139         (class symbol_needs_eval_context): Likewise.
4140         (indirect_synthetic_pointer): Add forward declaration.
4141         (sect_variable_value): New function.
4142         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4143         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4144         for DW_OP_GNU_variable_value.
4145
4146 2018-08-16  Tom Tromey  <tom@tromey.com>
4147
4148         * top.c (read_command_file): Update.
4149         (command_line_input): Remove "repeat" argument.
4150         * ada-lang.c (get_selections): Update.
4151         * linespec.c (decode_line_2): Update.
4152         * defs.h (command_line_input): Remove argument.
4153         * cli/cli-script.c (read_next_line): Update.
4154         * python/py-gdb-readline.c: Update.
4155
4156 2018-08-17  Tom Tromey  <tom@tromey.com>
4157
4158         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4159         command_line_input.
4160
4161 2018-08-15  Tom Tromey  <tom@tromey.com>
4162
4163         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4164
4165 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4166
4167         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4168         If used, use find_pc_partial_function to find address range
4169         to disassemble.
4170         * mi/mi-main.c (mi_cmd_list_features): Report
4171         "data-disassemble-a-option" feature.
4172         * NEWS: Mention new -data-disassemble option -a.
4173
4174 2018-08-13  Tom Tromey  <tom@tromey.com>
4175
4176         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4177
4178 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4179
4180         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4181         (aarch64_linux_collect_sve_regset): Likewise.
4182         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4183         * regcache.h (regcache_map_entry_size): New function.
4184
4185 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4186
4187         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4188         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4189         (SVE_HEADER_VL_LENGTH): Likewise.
4190         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4191         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4192         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4193         (SVE_HEADER_SIZE_OFFSET): Likewise.
4194         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4195         (SVE_HEADER_VL_OFFSET): Likewise.
4196         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4197         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4198         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4199         (SVE_HEADER_SIZE): Likewise.
4200         (aarch64_linux_core_read_vq): Add function.
4201         (aarch64_linux_core_read_description): Check for SVE section.
4202
4203 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4204
4205         * aarch64-fbsd-tdep.c
4206         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4207         collect_size.
4208         * aarch64-linux-tdep.c
4209         (aarch64_linux_iterate_over_regset_sections): Likewise.
4210         * alpha-linux-tdep.c
4211         (alpha_linux_iterate_over_regset_sections):
4212         * alpha-nbsd-tdep.c
4213         (alphanbsd_iterate_over_regset_sections): Likewise.
4214         * amd64-fbsd-tdep.c
4215         (amd64fbsd_iterate_over_regset_sections): Likewise.
4216         * amd64-linux-tdep.c
4217         (amd64_linux_iterate_over_regset_sections): Likewise.
4218         * arm-bsd-tdep.c
4219         (armbsd_iterate_over_regset_sections): Likewise.
4220         * arm-fbsd-tdep.c
4221         (arm_fbsd_iterate_over_regset_sections): Likewise.
4222         * arm-linux-tdep.c
4223         (arm_linux_iterate_over_regset_sections): Likewise.
4224         * corelow.c (get_core_registers_cb): Likewise.
4225         (core_target::fetch_registers): Likewise.
4226         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4227         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4228         * gdbarch.h (void): Regenerate.
4229         * gdbarch.sh: Add supply_size and collect_size.
4230         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4231         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4232         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4233         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4234         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4235         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4236         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4237         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4238         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4239         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4240         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4241         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4242         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4243         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4244         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4245         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4246         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4247         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4248         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4249         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4250         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4251         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4252         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4253         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4254         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4255         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4256         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4257         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4258         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4259         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4260
4261 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4262
4263         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4264         with string_printf.
4265
4266 2018-08-10  Keith Seitz  <keiths@redhat.com>
4267
4268         * compile/compile-c-support.c (add_code_header, add_code_footer):
4269         Move into policy class.
4270         (c_push_user_expression, pop_user_expression_nop)
4271         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4272         (compile_program): New host class.
4273         (c_compile_program): New typedef.
4274         (c_compute_porgram): Use c_compile_program.
4275
4276 2018-08-10  Keith Seitz  <keiths@redhat.com>
4277
4278         * compile/compile-internal.h (compile_instance::~compile_instance):
4279         Remove calls to htab_delete.
4280         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4281         * compile.c (compile_instance::compile_instance): Initialize
4282         htab unique pointers.
4283         (compile_instance::get_cached_type, compile_instance::insert_type)
4284         (compile_instance::error_symbol_once): Update for unique_ptr.
4285
4286 2018-08-10  Keith Seitz  <keiths@redhat.com>
4287
4288         * compile/compile-c-symbols.c (struct symbol_error)
4289         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4290         (compile_instance::insert_symbol_error)
4291         (compile_instance::error_symbol_once): Move to ...
4292         * compile/compile.c: ... here.
4293
4294 2018-08-10  Keith Seitz  <keiths@redhat.com>
4295
4296         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4297         instead of `new_compile_instance'.
4298         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4299         Update description.
4300         If the symbol error map is not initialized, create it.
4301         (generate_c_for_for_one_symbol): Do not check/initialize
4302         the symbol error map.
4303         * compile/compile-c-types.c (compile_c_instance): Make a class.
4304         Update all callers.
4305         (compile_instance::compile_instance): Initialize the type cache.
4306         (get_cached_type): New function.
4307         (insert_type): Update description.
4308         (compile_c_instance::m_default_cflags): Define.
4309         (convert_type): Update description.  Use get_cached_type.
4310         (delete_instance): Moved to destructor.
4311         (new_compile_instance): Moved to constructor.
4312         * compile/compile-c.h (compile_c_instance): Make class inheriting
4313         from compile_instance.
4314         <base>: Remove field.
4315         <type_map, symbol_err_map>: Move to base class.
4316         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4317         * compile/compile-internal.h (compile_instance): Make class.
4318         <type_map_t, symbol_err_map_t>: Define.
4319         <fe>: Rename to `m_gcc_fe'.
4320         <scope, block, gcc_target_options>: Add `m_' prefix.
4321         <m_type_map, m_symbol_err_map>: New fields, moved from
4322         compile_c_instance.
4323         <destroy>: Remove.
4324         (convert_type, new_compile_instance): Remove.
4325         * compile/compile.c (cleanup_compile_instance): Remove.
4326         (compile_to_object): Use unique_ptr to eliminate cleanups.
4327         (compile_instance::set_print_callback, compile_instance::version)
4328         (compile_instance::set_verbose)
4329         (compile_instance::set_driver_filename)
4330         (compile_instance::set_triplet_regexp)
4331         (compile_instance::set_arguments)
4332         (compile_instance::set_source_file)
4333         (compile_instance::compile): Define.
4334
4335 2018-08-10  Keith Seitz  <keiths@redhat.com>
4336
4337         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4338         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4339         gcc-c-fe.def to define C plugin.
4340         (delete_instance): Delete `c_plugin'.
4341         (new_compile_instance): Initialize `c_plugin'.
4342         * compile/compile-c.h: Include gcc_c_plugin.h.
4343         (struct compile_c_instance) <c_plugin>: New member.
4344         * gcc-c-plugin.h: New file.
4345         Update all callers with API change.
4346
4347 2018-08-10  Keith Seitz  <keiths@redhat.com>
4348
4349         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4350         (HFILES_NO_SRCDIR): ... to here.
4351         Add compile-internal.h and compile-c.h.
4352         * compile/compile-c-support.c: Include compile-c.h.
4353         * compile/compile-c-symbols.c: Include compile-c.h.
4354         (generate_c_for_variable_locations): Update comment.
4355         * compile/compile-c-types.c: Include compile-c.h.
4356         * compile/compile-c.h: New file -- moved C language declarations
4357         from other files here.
4358         * compile/compile-internal.h: Do not include hashtab.h or
4359         common/enum-flags.h.
4360         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4361         (gcc_convert_symbol, gcc_symbol_address)
4362         (generate_c_for_variable_locations, c_get_mode_for_size)
4363         (c_get_range_decl_name): Definitions moved to compile-c.h.
4364         * compile/compile-loc2c.c: Include compile-c.h.
4365
4366 2018-08-10  Keith Seitz  <keiths@redhat.com>
4367
4368         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4369         (c_symbol_substitution_name): ... this.
4370         Update all callers.
4371
4372 2018-08-10  Keith Seitz  <keiths@redhat.com>
4373
4374         * compile/compile-c-support.c (c_compute_program): Use
4375         unique_xmalloc_ptr to eliminate cleanup.
4376         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4377         Return a unique_xmalloc_ptr and eliminate cleanup.
4378         * compile/compile-internal.h (generate_c_for_variable_locations):
4379         Return unique_xmalloc_ptr and update description.
4380
4381 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4382
4383         * corelow.c (core_target::get_core_register_section): Rename
4384         min_size to section_min_size.
4385
4386 2018-08-09  Jim Wilson  <jimw@sifive.com>
4387
4388         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4389         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4390         * NEWS: Mention new GNU/Linux RISC-V target.
4391         * configure.host: Add riscv*-*-linux*.
4392         * configure.nat: Add riscv*.
4393         * configure.tgt: Add riscv*-*-linux*.
4394         * riscv-linux-nat.c: New file.
4395         * riscv-linux-tdep.c: New file.
4396
4397 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4398
4399         * infrun.c (resume): Make static, add forward declaration.
4400         (proceed): Update header comment.
4401         * infrun.h (resume): Delete declaration.
4402
4403 2018-08-09  Tom Tromey  <tom@tromey.com>
4404
4405         * riscv-tdep.h: Minor formatting fixes.
4406
4407 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4408
4409         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4410         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4411         (test_mkdir_recursive): Likewise.
4412         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4413
4414 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4415
4416         * valarith.c (value_subscripted_rvalue): If an array is not in
4417         memory, and we don't know the upper bound, then we can't know that
4418         the requested element exists or not.
4419
4420 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4421
4422         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4423         (target_options_to_string): Add comment.
4424
4425 2018-08-08  Tom Tromey  <tom@tromey.com>
4426
4427         * unittests/scoped_mmap-selftests.c: Check result of "write".
4428
4429 2018-08-08  Jim Wilson  <jimw@sifive.com>
4430
4431         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4432         (decode_register_index_short): New.
4433         (decode_j_type_insn, decode_cj_type_insn): New.
4434         (decode_b_type_insn, decode_cb_type_insn): New.
4435         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4436         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4437         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4438         is_c_sw_insn instead of is_sw_insn.
4439         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4440         (riscv_software_single_step): New.
4441         * riscv-tdep.h (riscv_software_single_step): Declare.
4442
4443         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4444         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4445
4446 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4447
4448         PR gdb/18050:
4449         * target.c (dispose_inferior): Don't dispose of inferiors that are
4450         already killed.
4451
4452 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4453
4454         * remote.c (remote_target::download_tracepoint): Change char* to
4455         const char*.
4456
4457 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4458
4459         * target.h (target_options_to_string): Return an std::string.
4460         * target.c (str_comma_list_concat_elem): Return void, use
4461         std::string.
4462         (do_option): Likewise.
4463         (target_options_to_string): Return an std::string.
4464         * linux-nat.c (linux_nat_target::wait): Adjust.
4465         * target-debug.h (target_debug_print_options): Adjust.
4466
4467 2018-08-07  Tom Tromey  <tom@tromey.com>
4468
4469         * Makefile.in (CPPFLAGS): New variable.
4470         (INTERNAL_CPPFLAGS): Use it.
4471
4472 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4473
4474         * NEWS: Mention the index cache.
4475
4476 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4477
4478         * common/pathstuff.h (get_standard_cache_dir): New.
4479         * common/pathstuff.c (get_standard_cache_dir): New.
4480         * build-id.h (build_id_to_string): New.
4481         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4482         DEBUG_STR_SUFFIX): Move to here.
4483         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4484         DEBUG_STR_SUFFIX): Move from there.
4485         (write_psymtabs_to_index): Make non-static, add basename
4486         parameter.  Write to temporary files, rename when done.
4487         (save_gdb_index_command): Adjust call to
4488         write_psymtabs_to_index.
4489         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4490         field.
4491         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4492         (get_gdb_index_contents_from_cache): New.
4493         (get_gdb_index_contents_from_cache_dwz): New.
4494         (dwarf2_initialize_objfile): Read index from cache.
4495         (dwarf2_build_psymtabs): Save to index.
4496         * dwarf-index-cache.h: New file.
4497         * dwarf-index-cache.c: New file.
4498         * dwarf-index-write.h: New file.
4499
4500 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4501
4502         * gnulib/aclocal.m4: Re-generate.
4503         * gnulib/config.in: Re-generate.
4504         * gnulib/configure: Re-generate.
4505         * gnulib/import/Makefile.am: Re-generate.
4506         * gnulib/import/Makefile.in: Re-generate.
4507         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4508         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4509         * gnulib/import/m4/mkdir.m4: New file.
4510         * gnulib/import/mkdir.c: New file.
4511         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4512         module.
4513
4514 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4515
4516         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4517         * common/scoped_mmap.c: New file.
4518         * common/scoped_mmap.h (destroy): New method.
4519         (~scoped_mmap, reset): Use destroy.
4520         (scoped_mmap): New move constructor.
4521         (mmap_file): New declaration.
4522         * unittests/scoped_mmap-selftests.c (test_normal,
4523         test_invalid_filename, run_tests): New functions.
4524         (_initialize_scoped_mmap_selftests): Register selftest.
4525
4526 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4527
4528         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4529         (read_gdb_index_from_buffer): ... this.  Remove section
4530         parameter, add buffer parameter.
4531         (get_gdb_index_contents_ftype,
4532         get_gdb_index_contents_dwz_ftype): New typedefs.
4533         (dwarf2_read_gdb_index): Add callback parameters to get the
4534         index contents.
4535         (get_gdb_index_contents_from_section): New.
4536         (dwarf2_initialize_objfile): Update call to
4537         dwarf2_read_gdb_index.
4538
4539 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4540
4541         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4542         (gdb_open_cloexec): Likewise.
4543         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4544         (commandline_from_pid): Likewise.
4545         (linux_xfer_osdata_threads): Likewise.
4546         (linux_xfer_osdata_fds): Likewise.
4547         * ada-lang.c (is_package_name): Likewise.
4548         * auxv.c (procfs_xfer_auxv): Likewise.
4549         * breakpoint.c (print_one_breakpoint_location): Use
4550         uiout::field_fmt.
4551         (print_one_catch_solib): Use string_printf.
4552         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4553         (add_pe_forwarded_sym): Likewise.
4554         * dwarf2read.c (create_type_unit_group): Likewise.
4555         (build_error_marker_type): Likewise.
4556         * infcall.c (get_function_name): Likewise.
4557         * valprint.c (print_converted_chars_to_obstack): Likewise.
4558         * xtensa-tdep.c (xtensa_register_type): Likewise.
4559
4560 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4561
4562         * remote.c (remote_target::download_tracepoint): Fix format
4563         string errors.
4564
4565 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4566
4567         * tracefile.c: Include common/byte-vector.h.
4568         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4569         with trace_regblock_size if needed.  Update uses of buf.
4570
4571 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4572
4573         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4574         std::vector<unsigned char>.
4575         * tracepoint.c (collection_list::collection_list): Remove
4576         m_regs_mask initializer from initializer list.  Resize
4577         m_regs_mask using the largest remote register number.
4578         (collection_list::add_remote_register): Remove size check on
4579         m_regs_mask.  Use at to access element.
4580         (collection_list::stringify): Change type of temp_buf to
4581         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4582         stringify the register mask.  Use pack_hex_byte for the register
4583         mask.
4584
4585 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4586
4587         * tracepoint.h (class collection_list) <add_register>: Remove.
4588         <add_remote_register, add_ax_registers, add_local_register>:
4589         Declare.
4590         <add_memrange>: Add scope parameter.
4591         * tracepoint.c (encode_actions_1): Likewise.
4592         (collection_list::add_register): Rename to ...
4593         (collection_list::add_remote_register): ... this.  Update
4594         comment.
4595         (collection_list::add_ax_registers, add_local_register): New
4596         methods.
4597         (collection_list::add_memrange): Add scope parameter.  Call
4598         add_local_register instead of add_register.
4599         (finalize_tracepoint_aexpr): New function.
4600         (collection_list::collect_symbol): Update calls to add_memrange.
4601         Call add_local_register instead of add_register.  Call
4602         add_ax_registers.  Call finalize_tracepoint_aexpr.
4603         (encode_actions_1): Get remote regnos for $reg action.  Call
4604         add_remote_register, add_ax_registers, and add_local_register.
4605         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4606         (validate_actionline): Call finalize_tracepoint_aexpr.
4607
4608 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4609
4610         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4611         Replace array buf with gdb::char_vector buf, of size
4612         get_remote_packet_size ().  Replace references to buf and
4613         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4614         and xsnprintf with snprintf.  Raise errors if the buffer is too
4615         small.
4616
4617 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4618
4619         * remote.c (remote_target::download_tracepoint): Fix the has_more
4620         predicate in the QTDP action list iteration.
4621
4622 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4623
4624         * remote.c (remote_target::download_tracepoint): Fix indentation
4625         in for block.
4626
4627 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4628
4629         * proc-api.c (_initialize_proc_api): Remove c, unused.
4630         * procfs.c (procfs_init_inferior): Remove signals, unused.
4631         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4632         unused.
4633
4634 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4635             Andrew Burgess  <andrew.burgess@embecosm.com>
4636
4637         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4638         'W_STOPCODE (0)' as this could be ambiguous.
4639
4640 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4641
4642         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4643         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4644         "ai_socktype").
4645
4646 2018-08-02  Tom Tromey  <tom@tromey.com>
4647
4648         PR symtab/16842.
4649         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4650         symbols.
4651         (process_structure_scope): Likewise.
4652
4653 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4654
4655         PR gdb/22629:
4656         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4657         kill inferior.
4658
4659 2018-08-02  Tom Tromey  <tom@tromey.com>
4660
4661         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4662         (darwin_suspend_inferior, darwin_resume_inferior)
4663         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4664         (darwin_check_new_threads): Check result of get_darwin_inferior.
4665
4666 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4667
4668         GDB 8.1.1 released.
4669
4670 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4671
4672         * varobj.c (varobj_get_path_expr_parent): Report an error if
4673         parent is a dynamic varobj.
4674
4675 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4676
4677         * gnulib/aclocal.m4: Re-generate.
4678         * gnulib/config.in: Re-generate.
4679         * gnulib/configure: Re-generate.
4680         * gnulib/import/Makefile.in: Re-generate.
4681         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4682         * gnulib/import/m4/onceonly.m4: Re-generate.
4683
4684 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4685
4686         * target-descriptions.c (struct xml_test_tdesc): New.
4687         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4688         (record_xml_tdesc): Update.
4689         (maintenance_check_xml_descriptions): Update.
4690         * target-descriptions.h (record_xml_tdesc): Update comment.
4691
4692 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4693
4694         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4695         checking array bounds are defined.
4696
4697 2018-07-30  Tom Tromey  <tom@tromey.com>
4698
4699         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4700         irreflexivity violation.
4701
4702 2018-07-30  Tom Tromey  <tom@tromey.com>
4703
4704         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4705         * value.c (unpack_long): Remove lint code.
4706         * valops.c (value_ind): Remove lint code.
4707         * valarith.c (value_x_binop, value_x_unop, value_equal)
4708         (value_pos): Remove lint code.
4709
4710 2018-07-28  Tom de Vries  <tdevries@suse.de>
4711
4712         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4713         with undefined upper bound as <optimized out>.
4714
4715 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4716
4717         * gcore.in: Rename variable "name" to "prefix".  Expand
4718         "usage" text.
4719
4720 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4721
4722         * windows-nat.c (windows_nat_target::create_inferior): Update to
4723         call close() in global namespace.
4724
4725 2018-07-26  Tom Tromey  <tom@tromey.com>
4726
4727         * dwarf-index-write.c (add_address_entry): Don't add objfile
4728         offsets.
4729         * dbxread.c (find_stab_function): Rename from
4730         find_stab_function_addr.  Return a bound_minimal_symbol.
4731         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4732         Don't add objfile offsets.
4733         (end_psymtab): Use raw_text_low, raw_text_high,
4734         MSYMBOL_VALUE_RAW_ADDRESS.
4735         (read_ofile_symtab): Update.
4736         (process_one_symbol): Update.
4737         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4738         offsets.
4739         (dw2_relocate): Remove.
4740         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4741         searching addrmap.
4742         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4743         Update.
4744         (process_psymtab_comp_unit_reader, add_partial_symbol)
4745         (add_partial_subprogram, dwarf2_ranges_read): Update.
4746         (load_partial_dies): Update.
4747         (add_address_entry): Don't add objfile offsets.
4748         (dwarf2_build_include_psymtabs): Update.
4749         (create_addrmap_from_aranges): Don't add objfile offsets.
4750         (dw2_find_pc_sect_compunit_symtab): Update.
4751         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4752         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4753         Update.
4754         (parse_partial_symbols): Don't add objfile offsets.  Use
4755         raw_text_low, raw_text_high.  Update.
4756         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4757         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4758         or call 'relocate' quick function.  Clear psymbol_map.
4759         * psympriv.h (struct partial_symbol) <address>: Add section
4760         offset.
4761         <set_unrelocated_address>: Rename from set_address.
4762         <raw_text_low, raw_text_high>: New methods.
4763         <text_low, text_high>: Add objfile parameter.
4764         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4765         set_unrelocated_address.
4766         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4767         (find_pc_psymbol): Update.
4768         (fixup_psymbol_section, relocate_psymtabs): Remove.
4769         (dump_psymtab, psym_functions): Update.
4770         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4771         parameter.
4772         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4773         (start_psymtab_common): Update.
4774         * symfile-debug.c (debug_qf_relocate): Remove.
4775         (debug_sym_quick_functions): Update.
4776         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4777         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4778         Update.
4779
4780 2018-07-26  Tom Tromey  <tromey@redhat.com>
4781
4782         * dbxread.c (end_psymtab): Use text_high_valid and
4783         text_low_valid.
4784         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4785         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4786         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4787         Update comment.
4788         <text_low_valid, text_high_valid>: New fields.
4789         <set_text_low, set_text_high>: Update.
4790         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4791
4792 2018-07-26  Tom Tromey  <tom@tromey.com>
4793
4794         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4795         Update.
4796         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4797         textlow and texthigh fields.
4798         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4799         Update.
4800         * mdebugread.c (parse_lines, parse_partial_symbols)
4801         (psymtab_to_symtab_1): Update.
4802         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4803         Rename fields.  Update comment.  Now private.
4804         <text_low, text_high, set_text_low, set_text_high>: New methods.
4805         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4806         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4807         (start_psymtab_common, maintenance_info_psymtabs)
4808         (maintenance_check_psymtabs): Update.
4809         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4810         texthigh fields.
4811         (scan_xcoff_symtab): Update.
4812
4813 2018-07-26  Tom Tromey  <tromey@redhat.com>
4814
4815         * psympriv.h (struct partial_symbol) <unrelocated_address,
4816         address, set_address>: New methods.
4817         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4818         (fixup_psymbol_section, relocate_psymtabs): Update.
4819         (print_partial_symbols): Add 'objfile' parameter.  Update.
4820         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4821         Update.
4822
4823 2018-07-26  Tom Tromey  <tom@tromey.com>
4824
4825         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4826         (debug_names::write_psymbols): Update.
4827         * psympriv.h (struct partial_symbol): Derive from
4828         general_symbol_info.
4829         <obj_section>: New method.
4830         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4831         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4832         (find_pc_sect_psymbol, fixup_psymbol_section)
4833         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4834         (print_partial_symbols, recursively_search_psymtabs)
4835         (compare_psymbols, psymbol_hash, psymbol_compare)
4836         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4837         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4838
4839 2018-07-26  Tom Tromey  <tromey@redhat.com>
4840
4841         * dbxread.c (end_psymtab): Remove dead code.
4842
4843 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4844
4845         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4846         DWARF unwinders are disabled.
4847         * dwarf2-frame.c: Add dwarf2read.h include.
4848         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4849         disabled.
4850         (dwarf2_frame_unwinders_enabled_p): Define.
4851         (show_dwarf_unwinders_enabled_p): New function.
4852         (_initialize_dwarf2_frame): Register switch to control DWARF
4853         unwinder use.
4854         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4855         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4856         (show_dwarf_cmdlist): Remove static keyword.
4857         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4858         (show_dwarf_cmdlist): Declare.
4859         * NEWS: Document new feature.
4860
4861 2018-07-26  Tom de Vries  <tdevries@suse.de>
4862
4863         PR breakpoints/23366
4864         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4865
4866 2018-07-26  Tom de Vries  <tdevries@suse.de>
4867
4868         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4869         DW_AT_count can't be translated to a dynamic prop.
4870
4871 2018-07-25  Tom de Vries  <tdevries@suse.de>
4872
4873         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4874         try/catch.
4875
4876 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4877
4878         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4879
4880 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4881
4882         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4883
4884 2018-07-24  Keith Seitz  <keiths@redhat.comt
4885
4886         PR symtab/23010
4887         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4888         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4889         instead of add_symbol_to_list.
4890         (read_file_scope): Call prepare_one_comp_unit before reading
4891         any other DIEs.
4892
4893 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4894
4895         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4896
4897 2018-07-24  Tom Tromey  <tom@tromey.com>
4898
4899         * utils.c (malloc, realloc, free): Don't declare.
4900         * configure, config.in: Rebuild.
4901         * configure.ac: Don't check for declarations of free, malloc, or
4902         realloc.
4903
4904 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4905
4906         * aarch64-linux-nat.c
4907         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4908         variable.
4909         * arm-linux-nat.c (fetch_regs): Likewise.
4910         (store_regs): Likewise.
4911         (fetch_vfp_regs): Likewise.
4912         (store_vfp_regs): Likewise.
4913         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4914         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4915         (arm_linux_nat_target::insert_watchpoint): Likewise.
4916         (arm_linux_nat_target::remove_watchpoint): Likewise.
4917         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4918         Likewise.
4919         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4920         Likewise.
4921         * ppc-linux-nat.c (fetch_register): Likewise.
4922         (fetch_all_gp_regs): Likewise.
4923         (fetch_ppc_registers): Likewise.
4924         (store_all_gp_regs): Likewise.
4925         (store_ppc_registers): Likewise.
4926         (hwdebug_insert_point): Likewise.
4927         (can_use_watchpoint_cond_accel): Likewise.
4928         * remote-sim.c (gdb_os_write_stdout): Likewise.
4929
4930 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4931             Tom Tromey  <tom@tromey.com>
4932
4933         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4934         test for it.
4935         * configure: Rebuild.
4936
4937 2018-07-22  Tom Tromey  <tom@tromey.com>
4938
4939         * regformats/regdat.sh: Define xmltarget_${name} inside
4940         #ifndef IN_PROCESS_AGENT.
4941
4942 2018-07-22  Tom Tromey  <tom@tromey.com>
4943
4944         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4945
4946 2018-07-22  Tom Tromey  <tom@tromey.com>
4947
4948         * symfile.c (reread_symbols): Notify iter, not objfile.
4949
4950 2018-07-22  Tom Tromey  <tom@tromey.com>
4951
4952         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4953         Use arch_ops.
4954         (ravenscar_thread_target::prepare_to_store): Likewise.
4955
4956 2018-07-22  Tom Tromey  <tom@tromey.com>
4957
4958         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4959         unused variable.  Call value_fetch_lazy when needed.
4960         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4961         Remove unused variable.  Call value_fetch_lazy when needed.
4962
4963 2018-07-22  Tom Tromey  <tom@tromey.com>
4964
4965         * m32c-tdep.c (mark_dma): Return void.
4966         (make_regs): Remove unused declarations.
4967
4968 2018-07-22  Tom Tromey  <tom@tromey.com>
4969
4970         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4971         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4972         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4973         bkscm_get_valid_block_smob_arg_unsafe for effect.
4974
4975 2018-07-22  Tom Tromey  <tom@tromey.com>
4976
4977         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4978         value_type.
4979
4980 2018-07-22  Tom Tromey  <tom@tromey.com>
4981
4982         * windows-nat.c (saved_context): Conditionally define.
4983         * remote.c (remote_target::remote_btrace_maybe_reopen):
4984         Conditionally declare "warned".
4985         * inflow.c (sigquit_ours): Conditionally define.
4986         (new_tty): Move "tty" declaration inside #if.
4987         * guile/guile.c (guile_datadir): Conditionally define.
4988         * charset.c (set_be_le_names): Move some declarations inside #if.
4989         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4990         #if.
4991         (parse_xml_btrace_conf): Likewise.
4992
4993 2018-07-22  Tom Tromey  <tom@tromey.com>
4994
4995         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4996
4997 2018-07-22  Tom Tromey  <tom@tromey.com>
4998
4999         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5000         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5001         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5002         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5003         * stack.c (frame_apply_level_command): Remove unused variable.
5004         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5005         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5006         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5007         unused variable.
5008         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5009         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5010         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5011         variable.
5012         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5013         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5014         variable.
5015         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5016         Remove unused variable.
5017         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5018         variable.
5019         * common/tdesc.c (print_xml_feature::visit): Remove unused
5020         variable.
5021         * compile/compile-object-load.c (store_regs): Remove unused
5022         variables.
5023         * complaints.c (clear_complaints): Remove unused variable.
5024         * corelow.c (core_target_open): Remove unused variable.
5025         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5026         variable.
5027         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5028         variable.
5029         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5030         variable.
5031         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5032         variable.
5033         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5034         variable.
5035         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5036         variable.
5037         * ia64-tdep.c (examine_prologue): Remove unused variable.
5038         * infcall.c (run_inferior_call): Remove unused variable.
5039         * inferior.c (exit_inferior): Remove unused variable.
5040         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5041         * linespec.c (decode_line_2): Remove unused variable.
5042         * linux-nat.c (super_close): Remove.
5043         * linux-tdep.c (linux_info_proc): Remove unused variable.
5044         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5045         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5046         Remove unused variable.
5047         * parse.c (find_minsym_type_and_address): Remove unused variable.
5048         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5049         variable.
5050         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5051         variable.
5052         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5053         variables.
5054         * record-btrace.c (record_btrace_target::store_registers): Remove
5055         unused variable.
5056         (cmd_show_record_btrace_cpu): Remove unused variable.
5057         * riscv-tdep.c (riscv_register_reggroup_p)
5058         (riscv_push_dummy_call, riscv_return_value): Remove unused
5059         variable.
5060         * rust-exp.y (literal): Remove unused variable.
5061         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5062         unused variable.
5063         <STRUCTOP_ANONYMOUS>: Likewise.
5064         * s390-linux-tdep.c (s390_linux_init_abi_31)
5065         (s390_linux_init_abi_64): Remove unused variable.
5066         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5067         (file_select_thread, net_windows_open, _initialize_ser_windows):
5068         Remove unused variables.
5069         * symtab.c (find_pc_sect_line): Remove unused variable.
5070         * target-memory.c (compute_garbled_blocks): Remove unused
5071         variable.
5072         (target_write_memory_blocks): Remove unused variable.
5073         * target.c (target_stack::unpush): Remove unused variables.
5074         * tracepoint.c (start_tracing, all_tracepoint_actions)
5075         (merge_uploaded_trace_state_variables)
5076         (print_one_static_tracepoint_marker): Remove unused variable.
5077         * unittests/basic_string_view/element_access/char/1.cc (test01):
5078         Remove unused variable.
5079         * windows-nat.c (windows_continue, windows_add_all_dlls)
5080         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5081         Remove unused variables.
5082
5083 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5084
5085         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5086         attr_profile in HAVE_ELF.
5087         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5088         HAVE_ELF.
5089
5090 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5091
5092         * frame.c (frame_register_unwind): Change parameter name.
5093         (frame_unwind_register): Likewise.
5094         (frame_unwind_register_value): Likewise.
5095         (frame_unwind_register_signed): Likewise.
5096         (frame_unwind_register_unsigned): Likewise.
5097         * frame.h (frame_register_unwind): Likewise.
5098         (frame_unwind_register): Likewise.
5099         (frame_unwind_register_value): Likewise.
5100         (frame_unwind_register_signed): Likewise.
5101         (frame_unwind_register_unsigned): Likewise.
5102         (frame_unwind_arch): Likewise.
5103
5104 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5105
5106         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5107         ISA maintenance.
5108
5109 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5110
5111         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5112         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5113         hand.
5114
5115 2018-07-20  Keith Seitz  <keiths@redhat.com>
5116
5117         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5118         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5119         m_compunit_symtab, m_language>: Add "m_" prefix.
5120         Update all uses.
5121         * buildsym.c: Update all uses.
5122
5123 2018-07-20  Tom Tromey  <tom@tromey.com>
5124
5125         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5126         * buildsym.h (record_line_ftype): Remove typedef.
5127
5128 2018-07-20  Tom Tromey  <tom@tromey.com>
5129
5130         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5131         (end_expandable_symtab): Likewise.
5132         (end_symtab_get_static_block): Likewise.
5133         (end_symtab_from_static_block): Likewise.
5134         * buildsym-legacy.c (augment_type_symtab): Remove.
5135         (end_expandable_symtab): Remove.
5136         (end_symtab_get_static_block): Remove.
5137         (end_symtab_from_static_block): Remove.
5138
5139 2018-07-20  Tom Tromey  <tom@tromey.com>
5140
5141         * dwarf2read.c: Include buildsym.h.
5142         (struct dwarf2_cu) <builder>: New method.
5143         (fixup_go_packaging): Update.
5144         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5145         use scoped_free_pendings.
5146         (using_directives): Add "cu" parameter, remove "language".
5147         (read_import_statement, setup_type_unit_groups, )
5148         (read_func_scope, read_lexical_block_scope)
5149         (dwarf2_record_block_ranges, read_namespace): Update.
5150         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5151         (lnp_state_machine::handle_end_sequence): Update.
5152         (class lnp_state_machine) <m_cu>: New member.
5153         <m_record_line_callback>: Remove.
5154         <m_currently_recording_lines>: New member.
5155         (lnp_state_machine::handle_set_file): Update.
5156         (noop_record_line): Remove.
5157         (dwarf_record_line_p): Add cu parameter.
5158         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5159         (lnp_state_machine::record_line)
5160         (lnp_state_machine::lnp_state_machine)
5161         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5162         (dwarf_decode_lines): Update.
5163         (dwarf2_start_subfile): Add cu parameter.
5164         (dwarf2_start_symtab, new_symbol): Update.
5165         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5166         Remove dwarf2_per_objfile parameter.
5167         (dwarf_decode_macros): Update.
5168
5169 2018-07-20  Tom Tromey  <tom@tromey.com>
5170
5171         * stabsread.c (define_symbol): Update.
5172         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5173         * dwarf2read.c (new_symbol): Update.
5174         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5175         * cp-namespace.c: Include buildsym.h.
5176         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5177         * buildsym-legacy.c (get_buildsym_compunit): New function.
5178
5179 2018-07-20  Tom Tromey  <tom@tromey.com>
5180
5181         * xcoffread.c: Include buildsym-legacy.h.
5182         * windows-nat.c: Include buildsym-legacy.h.
5183         * stabsread.c: Include buildsym-legacy.h.
5184         * mdebugread.c: Include buildsym-legacy.h.
5185         * buildsym-legacy.h: New file.
5186         * buildsym-legacy.c: New file, from buildsym.c.
5187         * go32-nat.c: Include buildsym-legacy.h.
5188         * dwarf2read.c: Include buildsym-legacy.h.
5189         * dbxread.c: Include buildsym-legacy.h.
5190         * cp-namespace.c: Include buildsym-legacy.h.
5191         * coffread.c: Include buildsym-legacy.h.
5192         * buildsym.h: Move some contents to buildsym-legacy.h.
5193         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5194         buildsym-legacy.c.
5195         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5196
5197 2018-07-20  Tom Tromey  <tom@tromey.com>
5198
5199         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5200         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5201         (buildsym_compunit::buildsym_compunit)
5202         (buildsym_compunit::~buildsym_compunit)
5203         (buildsym_compunit::get_macro_table): Define.
5204
5205 2018-07-20  Tom Tromey  <tom@tromey.com>
5206
5207         * buildsym.c (reset_symtab_globals): Remove.
5208         (buildsym_compunit::end_symtab_from_static_block): Update.
5209         (buildsym_compunit::augment_type_symtab): Update.
5210         (end_symtab_from_static_block): Call free_buildsym_compunit.
5211         (augment_type_symtab, end_symtab, end_expandable_symtab):
5212         Likewise.
5213
5214 2018-07-20  Tom Tromey  <tom@tromey.com>
5215
5216         * arch-utils.c: Do not include buildsym.h.
5217         * mipsread.c: Do not include buildsym.h.
5218         * machoread.c: Do not include buildsym.h.
5219         * elfread.c: Do not include buildsym.h.
5220
5221 2018-07-20  Tom Tromey  <tom@tromey.com>
5222
5223         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5224         initialization.
5225         (buildsym_compunit): Add new constructor.
5226         (struct buildsym_compunit) <get_last_source_file, finish_block,
5227         record_block_range, start_subfile, patch_subfile_names,
5228         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5229         set_last_source_start_addr, get_last_source_start_addr,
5230         get_local_using_directives, set_local_using_directives,
5231         get_global_using_directives, outermost_context_p,
5232         get_current_context_stack, get_context_stack_depth,
5233         get_current_subfile, get_local_symbols, get_file_symbols,
5234         get_global_symbols, record_debugformat, record_producer,
5235         push_context, pop_context, end_symtab_get_static_block,
5236         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5237         New public methods.
5238         <record_pending_block, finish_block_internal, make_blockvector,
5239         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5240         private methods.
5241         Update all users.
5242
5243 2018-05-22  Tom Tromey  <tom@tromey.com>
5244
5245         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5246         parameter.
5247         (finish_block_internal): Update.
5248
5249 2018-07-20  Tom Tromey  <tom@tromey.com>
5250
5251         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5252         parameter.
5253         (finish_block_internal): Update.
5254
5255 2018-07-20  Tom Tromey  <tom@tromey.com>
5256
5257         * buildsym.h (EXTERN): Don't define or undef.
5258         * buildsym.c (EXTERN): Don't define.
5259
5260 2018-07-20  Tom Tromey  <tom@tromey.com>
5261
5262         * buildsym.c: Remove TODO comment.
5263
5264 2018-07-20  Tom Tromey  <tom@tromey.com>
5265
5266         * coffread.c (coff_symtab_read): Update.
5267         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5268         (xcoff_new_init): Update.
5269         * mipsread.c (mipscoff_new_init): Update.
5270         * mdebugread.c (mdebug_build_psymtabs): Update.
5271         * elfread.c (elf_new_init): Update.
5272         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5273         Update.
5274         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5275         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5276         (stabsect_build_psymtabs): Update.
5277         * buildsym.h (buildsym_init): Don't declare.
5278         * buildsym.c: Update comment.
5279         (prepare_for_building): Remove.
5280         (start_symtab, restart_symtab): Update.
5281         (reset_symtab_globals): Update comment.
5282         (buildsym_init): Remove.
5283
5284 2018-07-20  Tom Tromey  <tom@tromey.com>
5285
5286         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5287         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5288         (read_enum_type, common_block_start, common_block_end)
5289         (cleanup_undefined_types_1, finish_global_stabs): Update.
5290         * mdebugread.c (psymtab_to_symtab_1): Update.
5291         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5292         (read_lexical_block_scope, new_symbol): Update.
5293         * dbxread.c (process_one_symbol): Update.
5294         * coffread.c (coff_symtab_read, process_coff_symbol)
5295         (coff_read_enum_type): Update.
5296         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5297         declare.
5298         (get_local_symbols, get_file_symbols, get_global_symbols): New
5299         functions.
5300         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5301         m_global_symbols.
5302         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5303         (~scoped_free_pendings): Update.
5304         (finish_block, prepare_for_building, reset_symtab_globals)
5305         (end_symtab_get_static_block, end_symtab_with_blockvector)
5306         (augment_type_symtab, push_context): Update.
5307         (get_local_symbols, get_file_symbols, get_global_symbols): New
5308         functions.
5309         (buildsym_init): Update.
5310
5311 2018-07-20  Tom Tromey  <tom@tromey.com>
5312
5313         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5314         (process_full_type_unit): Likewise.
5315         (dwarf2_start_symtab): Set list_in_scope.
5316
5317 2018-07-20  Tom Tromey  <tom@tromey.com>
5318
5319         * dwarf2read.c (process_psymtab_comp_unit_reader)
5320         (build_type_psymtabs_reader): Do not set list_in_scope.
5321
5322 2018-07-20  Tom Tromey  <tom@tromey.com>
5323
5324         * buildsym.c (free_pendings): Remove.
5325         (add_symbol_to_list, scoped_free_pendings)
5326         (finish_block_internal, buildsym_init): Update.
5327
5328 2018-07-20  Tom Tromey  <tom@tromey.com>
5329
5330         * xcoffread.c (read_xcoff_symtab): Update.
5331         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5332         Update.
5333         * dbxread.c (process_one_symbol): Update.
5334         * coffread.c (coff_symtab_read): Update.
5335         * buildsym.h (finish_block): Update.
5336         * buildsym.c (finish_block): Remove "listhead" argument.
5337         (end_symtab_get_static_block): Update.
5338
5339 2018-07-20  Tom Tromey  <tom@tromey.com>
5340
5341         * buildsym.h (class scoped_free_pendings): Remove constructor.
5342         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5343         method.
5344         <m_pending_block_obstack, m_pending_blocks>: New members.
5345         (pending_block_obstack, pending_blocks): Remove.
5346         (scoped_free_pendings::scoped_free_pendings): Default.
5347         (~scoped_free_pendings): Update.
5348         (free_pending_blocks): Remove.
5349         (finish_block_internal, record_pending_block, make_blockvector)
5350         (end_symtab_get_static_block, augment_type_symtab, push_context)
5351         (buildsym_init): Update.
5352
5353 2018-07-20  Tom Tromey  <tom@tromey.com>
5354
5355         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5356         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5357         members.
5358         (pending_addrmap, pending_addrmap_obstack)
5359         (pending_addrmap_interesting): Remove.
5360         (scoped_free_pendings, record_block_range, make_blockvector)
5361         (prepare_for_building, reset_symtab_globals, buildsym_init):
5362         Update.
5363
5364 2018-07-20  Tom Tromey  <tom@tromey.com>
5365
5366         * xcoffread.c (process_linenos): Update.
5367         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5368         * mdebugread.c (psymtab_to_symtab_1): Update.
5369         * dwarf2read.c (setup_type_unit_groups)
5370         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5371         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5372         * dbxread.c (process_one_symbol): Update.
5373         * coffread.c (coff_symtab_read, enter_linenos)
5374         (process_coff_symbol): Update.
5375         * buildsym.h (current_subfile): Don't declare.
5376         (get_current_subfile): Declare.
5377         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5378         member.
5379         (start_subfile, free_buildsym_compunit, push_subfile)
5380         (prepare_for_building, start_symtab): Update.
5381         (get_current_subfile): New function.
5382
5383 2018-07-20  Tom Tromey  <tom@tromey.com>
5384
5385         * coffread.c (coff_symtab_read): Update.
5386         * xcoffread.c (read_xcoff_symtab): Update.
5387         * dwarf2read.c (new_symbol): Update.
5388         (read_func_scope, read_lexical_block_scope): Update.
5389         * dbxread.c (process_one_symbol): Update.
5390         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5391         (outermost_context_p): Remove macro.
5392         (outermost_context_p, get_current_context_stack)
5393         (get_context_stack_depth): Declare.
5394         (pop_context): Return struct context_stack.
5395         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5396         member.
5397         (context_stack_size): Remove.
5398         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5399         (prepare_for_building, end_symtab_get_static_block)
5400         (augment_type_symtab, push_context): Update.
5401         (pop_context): Return struct context_stack.
5402         (outermost_context_p, get_current_context_stack)
5403         (get_context_stack_depth): New functions.
5404         (buildsym_init): Update.
5405
5406 2018-07-20  Tom Tromey  <tom@tromey.com>
5407
5408         * rust-exp.y: Now a pure parser.  Update all rules.
5409         (%union): Move earlier.
5410         (current_parser, work_obstack): Remove globals.
5411         (rust_parser, ~rust_parser): Update.
5412         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5413         lex_character, lex_number, lex_string, lex_identifier,
5414         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5415         convert_name, convert_params_to_expression,
5416         convert_ast_to_expression, ast_basic_type, ast_operation,
5417         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5418         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5419         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5420         ast_array_type, ast_slice_type, ast_reference_type,
5421         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5422         (rust_parse): Update.
5423         (rustyyerror, rustyylex): Add parser parameter.
5424         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5425         (rust_lex_stringish_test, rust_lex_test_sequence)
5426         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5427         (rust_lex_test_push_back, rust_lex_tests): Update.
5428
5429 2018-07-19  Pedro Alves  <palves@redhat.com>
5430
5431         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5432         gdb::unique_xmalloc_ptr.
5433         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5434         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5435         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5436         copy-initialization.
5437         * guile/scm-pretty-print.c (ppscm_print_children): Use
5438         gdb::unique_xmalloc_ptr instead of cleanups.
5439         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5440         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5441         gdb::unique_xmalloc_ptr.
5442         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5443         Adjust to use gdb::unique_xmalloc_ptr.
5444         * guile/scm-utils.c (extract_arg): Adjust.
5445         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5446         gdb::unique_xmalloc_ptr instead of a cleanup.
5447
5448 2018-07-19  Tom Tromey  <tom@tromey.com>
5449
5450         * utils.c (do_value_free_to_mark)
5451         (make_cleanup_value_free_to_mark): Remove.
5452         * utils.h (make_cleanup_value_free_to_mark): Remove.
5453
5454 2018-07-19  Pedro Alves  <palves@redhat.com>
5455
5456         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5457         forwarding reference.
5458
5459 2018-07-18  Pedro Alves  <palves@redhat.com>
5460
5461         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5462         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5463         cleanup.
5464
5465 2018-07-18  Pedro Alves  <palves@redhat.com>
5466
5467         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5468         exceptions.
5469         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5470         (gdbscm_wrap): New.
5471         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5472         directly instead of a cleanup.
5473         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5474         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5475         (vlscm_binop_gdbthrow): New, factored out from ...
5476         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5477         (vlscm_rich_compare): Use gdbscm_wrap.
5478         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5479         instead of a cleanup.
5480         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5481         cleanup.
5482         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5483         Use xfree directly instead of a cleanup.
5484         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5485         Adjust to use gdbscm_wrap and scoped_value_mark.
5486         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5487         (gdbscm_value_address, gdbscm_value_dereference)
5488         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5489         scoped_value_mark.
5490         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5491         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5492         scoped_value_mark.
5493         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5494         gdbscm_wrap and scoped_value_mark.
5495         (gdbscm_value_to_string): Use xfree directly instead of a
5496         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5497         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5498         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5499         scoped_value_mark.
5500         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5501         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5502         scoped_value_mark.
5503         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5504         gdbscm_wrap.
5505
5506 2018-07-18  Tom de Vries  <tdevries@suse.de>
5507
5508         * findvar.c (default_read_var_value): Also resolve dynamic type for
5509         LOC_OPTIMIZED_OUT vars.
5510
5511 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5512
5513         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5514         decoding.
5515
5516 2018-07-17  Tom Tromey  <tom@tromey.com>
5517
5518         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5519         (compute_enum_list, pascm_set_param_value_x)
5520         (gdbscm_parameter_value): Update.
5521         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5522         (gdbscm_scm_to_host_string): Update.
5523         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5524         Update.
5525         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5526         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5527         * guile/scm-string.c (gdbscm_scm_to_string): Return
5528         unique_xmalloc_ptr.
5529         (gdbscm_scm_to_host_string): Likewise.
5530
5531 2018-07-17  Tom Tromey  <tom@tromey.com>
5532
5533         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5534         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5535         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5536         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5537         unique_xmalloc_ptr.
5538
5539 2018-07-17  Tom Tromey  <tom@tromey.com>
5540
5541         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5542         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5543         Update.
5544         * guile/scm-cmd.c (cmdscm_function): Update.
5545         * guile/scm-pretty-print.c
5546         (ppscm_print_exception_unless_memory_error): Update.
5547         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5548         Return unique_xmalloc_ptr.
5549
5550 2018-07-17  Tom Tromey  <tom@tromey.com>
5551
5552         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5553         Use string_printf.
5554
5555 2018-07-17  Jim Wilson  <jimw@sifive.com>
5556
5557         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5558         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5559         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5560         unecessary braces after EF_RISCV_RVC test.  Delete call to
5561         set_gdbarch_decr_pc_after_break.
5562
5563         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5564         RISCV_LAST_FP_REGNUM + 1.
5565         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5566
5567 2018-07-17  Tom Tromey  <tom@tromey.com>
5568
5569         * configure.ac: Remove --disable-gdbcli.
5570         * configure: Rebuild.
5571         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5572         (SUBDIR_CLI_CFLAGS): Remove.
5573         (SFILES): Use SUBDIR_CLI_SRCS.
5574         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5575
5576 2018-07-17  Tom Tromey  <tom@tromey.com>
5577
5578         PR gdb/18624:
5579         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5580
5581 2018-07-16  Jim Wilson  <jimw@sifive.com>
5582
5583         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5584
5585 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5586
5587         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5588         variable.
5589         (libunwind_frame_sniffer): Likewise.
5590         (libunwind_frame_prev_register): Likewise.
5591         (libunwind_sigtramp_frame_sniffer): Likewise.
5592         * ia64-tdep.c (ia64_access_reg): Likewise.
5593         (ia64_access_rse_reg): Likewise.
5594         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5595         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5596
5597 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5598
5599         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5600
5601 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5602
5603         * remote-sim.c (gdbsim_target::close,
5604         gdbsim_target::mourn_inferior): Remove unused variables.
5605
5606 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5607
5608         * ia64-tdep.c (ktab_buf): New global.
5609         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5610         (get_kernel_table): Adjust.
5611
5612 2018-07-16  Tom Tromey  <tom@tromey.com>
5613
5614         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5615         * dwarf2read.c (using_directives, new_symbol): Use
5616         outermost_context_p.
5617         * dbxread.c (process_one_symbol): Use outermost_context_p.
5618         * coffread.c (coff_symtab_read): Use outermost_context_p.
5619
5620 2018-07-16  Tom Tromey  <tom@tromey.com>
5621
5622         * dwarf2read.c (using_directives, read_func_scope)
5623         (read_lexical_block_scope): Update.
5624         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5625         * buildsym.h (local_using_directives, global_using_directives):
5626         Don't declare.
5627         (get_local_using_directives, set_local_using_directives)
5628         (get_global_using_directives): Declare.
5629         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5630         m_global_using_directives>: New members.
5631         (finish_block_internal, prepare_for_building)
5632         (reset_symtab_globals, end_symtab_get_static_block)
5633         (push_context): Update.
5634         (get_local_using_directives, set_local_using_directives)
5635         (get_global_using_directives): New functions.
5636         (buildsym_init): Update.
5637
5638 2018-07-16  Tom Tromey  <tom@tromey.com>
5639
5640         * xcoffread.c (xcoff_initial_scan): Don't call
5641         free_pending_blocks.
5642         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5643         * buildsym.h (class scoped_free_pendings): Add constructor.
5644         (free_pending_blocks): Don't declare.
5645         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5646         (free_pending_blocks): Now static.
5647
5648 2018-07-16  Tom Tromey  <tom@tromey.com>
5649
5650         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5651         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5652         member.
5653         (struct subfile_stack): Remove.
5654         (subfile_stack): Remove.
5655         (push_subfile, pop_subfile, buildsym_init): Update.
5656
5657 2018-07-16  Tom Tromey  <tom@tromey.com>
5658
5659         * buildsym.c (push_subfile): Use gdb_assert.
5660         (pop_subfile): Use gdb_assert.
5661
5662 2018-07-16  Tom Tromey  <tom@tromey.com>
5663
5664         * buildsym.h (merge_symbol_lists): Remove.
5665         * buildsym.c (merge_symbol_lists): Remove.
5666
5667 2018-07-16  Tom Tromey  <tom@tromey.com>
5668
5669         * stabsread.c (scan_file_globals): Update comment.
5670         * stabsread.h (scan_file_globals): Move from buildsym.h.
5671         * buildsym.h (scan_file_globals): Move to stabsread.h.
5672
5673 2018-07-16  Tom Tromey  <tom@tromey.com>
5674
5675         * xcoffread.c (xcoff_new_init): Update.
5676         * mipsread.c (mipscoff_new_init): Update.
5677         * mdebugread.c (mdebug_build_psymtabs): Update.
5678         * elfread.c (elf_new_init): Update.
5679         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5680         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5681         * buildsym.h (buildsym_new_init): Don't declare.
5682         * buildsym.c (buildsym_new_init): Remove.
5683
5684 2018-07-16  Tom Tromey  <tom@tromey.com>
5685
5686         * stabsread.h (within_function): Move from buildsym.h.
5687         * stabsread.c (start_stabs): Clear within_function.
5688         * coffread.c (coff_start_symtab): Clear within_function.
5689         * buildsym.h (within_function): Move to stabsread.h.
5690         * buildsym.c (prepare_for_building): Update.
5691
5692 2018-07-16  Tom Tromey  <tom@tromey.com>
5693
5694         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5695         * dwarf2read.c (dwarf2_start_symtab): Don't set
5696         processing_gcc_compilation.
5697         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5698
5699 2018-07-16  Tom Tromey  <tom@tromey.com>
5700
5701         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5702         (next_symbol_text_func): Move from buildsym.h.
5703         * stabsread.c (hashname): Move from buildsym.c.
5704         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5705         (next_symbol_text_func, hashname): Move to stabsread.h.
5706         * buildsym.c: Don't include bcache.h
5707         (hashname): Move to stasbread.c.
5708
5709 2018-07-16  Tom Tromey  <tom@tromey.com>
5710
5711         * buildsym.h (context_stack_size): Don't declare.
5712         * buildsym.c (context_stack_size): New global.
5713
5714 2018-07-16  Tom Tromey  <tom@tromey.com>
5715
5716         * dbxread.c (processing_acc_compilation): New global.
5717         * buildsym.h (processing_acc_compilation): Don't declare.
5718
5719 2018-07-16  Tom Tromey  <tom@tromey.com>
5720
5721         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5722         * dbxread.c (read_ofile_symtab): Update.
5723         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5724         * buildsym.h (last_source_start_addr): Remove.
5725         (set_last_source_start_addr, get_last_source_start_addr):
5726         Declare.
5727         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5728         parameter.
5729         (struct buildsym_compunit) <m_last_source_start_addr>: New
5730         member.
5731         (prepare_for_building): Remove start_addr parameter.
5732         (start_symtab, restart_symtab, end_symtab_get_static_block)
5733         (end_symtab_with_blockvector): Update.
5734         (set_last_source_start_addr, get_last_source_start_addr): New
5735         functions.
5736
5737 2018-07-16  Tom Tromey  <tom@tromey.com>
5738
5739         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5740         member.
5741         (have_line_numbers): Remove.
5742         (record_line, prepare_for_building, end_symtab_get_static_block)
5743         (augment_type_symtab): Update.
5744
5745 2018-07-16  Tom Tromey  <tom@tromey.com>
5746
5747         * buildsym.c (~buildsym_compunit): Free the macro table.
5748         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5749         methods.
5750         <m_pending_macros>: New member.
5751         (pending_macros): Remove.
5752         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5753         (reset_symtab_globals, end_symtab_get_static_block)
5754         (end_symtab_with_blockvector, augment_type_symtab)
5755         (buildsym_init): Update.
5756
5757 2018-07-16  Tom Tromey  <tom@tromey.com>
5758
5759         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5760         parameter.
5761         (buildsym_compunit::set_last_source_file): New method.
5762         <m_last_source_file>: New member.
5763         (prepare_for_building): Remove "name" parameter.
5764         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5765         (last_source_file): Remove.
5766         (set_last_source_file, get_last_source_file): Update.
5767
5768 2018-07-16  Tom Tromey  <tom@tromey.com>
5769
5770         * buildsym.c (prepare_for_building): Add assert.
5771
5772 2018-07-16  Tom Tromey  <tom@tromey.com>
5773
5774         * buildsym.c (~buildsym_compunit): Update.
5775         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5776         (start_subfile, patch_subfile_names)
5777         (end_symtab_with_blockvector): Update.
5778
5779 2018-07-16  Tom Tromey  <tom@tromey.com>
5780
5781         * buildsym.c (struct buildsym_compunit): Add constructor,
5782         destructor, initializers.
5783         (start_buildsym_compunit): Remove.
5784         (free_buildsym_compunit): Use "delete".
5785         (start_symtab, restart_symtab): Use "new".
5786
5787 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5788
5789         * symfile.c (set_objfile_default_section_offset): Remove struct
5790         keyword.
5791
5792 2018-07-14  Stafford Horne  <shorne@gmail.com>
5793
5794         * (Responsible Maintainers): Add myself as or1k maintainer.
5795
5796 2018-07-13  Tom Tromey  <tom@tromey.com>
5797
5798         * symfile.c (set_objfile_default_section_offset): Use extra braces
5799         around initializer.
5800
5801 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5802
5803         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5804         non-branching basr.
5805
5806 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5807
5808         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5809         unittests/cli-utils-selftests.c
5810         * unittests/cli-utils-selftests.c: New file.
5811
5812 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5813
5814         * NEWS: Mention new commands. Mention change to 'thread apply'.
5815
5816 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5817
5818         * thread.c (thr_try_catch_cmd): New function.
5819         (thread_apply_all_command): Handle qcs flags.
5820         (thread_apply_command): Handle qcs flags.
5821         (taas_command): New function.
5822         (tfaas_command): New function.
5823         (_initialize_thread): Update to setup the new commands 'taas
5824         and 'tfaas'. Change doc string for 'thread apply'.
5825
5826 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5827
5828         * stack.c: (trailing_outermost_frame): New function, mostly
5829         extracted from backtrace_command_1.
5830         (leading_innermost_frame): New function.
5831         (backtrace_command_1): Update to call trailing_outermost_frame.
5832         (frame_apply_command_count): New function.
5833         (frame_apply_level_command): New function.
5834         (frame_apply_all_command): New function.
5835         (frame_apply_command): New function.
5836         (faas_command): New function.
5837         (frame_cmd_list): New variable.
5838         (_initialize_stack): Update to setup the new commands 'frame apply'
5839         and 'faas'.
5840
5841 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5842
5843         * cli-utils.c (number_or_range_parser::get_number): Only handle
5844         numbers or convenience var as numbers.
5845         (parse_flags): New function.
5846         (parse_flags_qcs): New function.
5847         (number_or_range_parser::finished): Ensure parsing end is detected
5848         before end of string.
5849         * cli-utils.h (parse_flags): New function.
5850         (parse_flags_qcs): New function.
5851         (number_or_range_parser): Remove m_finished bool.
5852         (number_or_range_parser::skip_range): Set m_in_range to false.
5853
5854 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5855
5856         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5857         on Windows.
5858
5859 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5860             Jan Kratochvil  <jan.kratochvil@redhat.com>
5861             Paul Fertser  <fercerpav@gmail.com>
5862             Tsutomu Seki  <sekiriki@gmail.com>
5863             Pedro Alves  <palves@redhat.com>
5864
5865         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5866         'unittests/parse-connection-spec-selftests.c'.
5867         (COMMON_SFILES): Add 'common/netstuff.c'.
5868         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5869         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5870         * common/netstuff.c: New file.
5871         * common/netstuff.h: New file.
5872         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5873         (wait_for_connect): Update comment.  New parameter
5874         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5875         Use 'sock' directly instead of 'scb->fd'.
5876         (try_connect): New function, with code from 'net_open'.
5877         (net_open): Rewrite main loop to deal with multiple
5878         sockets/addresses.  Handle IPv6-style hostnames; implement
5879         support for IPv6 connections.
5880         * unittests/parse-connection-spec-selftests.c: New file.
5881
5882 2018-07-11  Pedro Alves  <palves@redhat.com>
5883
5884         PR gdb/23377
5885         * remote.c (remote_target::remote_detach_pid): Call
5886         set_current_process.
5887
5888 2018-07-11  Pedro Alves  <palves@redhat.com>
5889
5890         * h8300-tdep.c (h8300_gdbarch_init): Remove
5891         set_gdbarch_ecoff_reg_to_regnum calls.
5892
5893 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5894
5895         PR c++/23373
5896         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5897         offsets/sizes for static members of a class/struct.
5898
5899 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5900
5901         * target-descriptions.c (tdesc_register_bitsize): Rename.
5902         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5903         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5904         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5905
5906 2018-07-10  Tom Tromey  <tom@tromey.com>
5907
5908         * breakpoint.c (moribund_locations): Now static and a
5909         std::vector.
5910         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5911         (build_bpstat_chain, update_global_location_list)
5912         (breakpoint_retire_moribund): Update.
5913         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5914         VEC.
5915
5916 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5917
5918         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5919         (riscv_register_reggroup_p): Use new function, remove unneeded
5920         parenthesis.
5921         (riscv_push_dummy_call): Extend assert to compare against xlen or
5922         flen based on register type.
5923
5924 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5925
5926         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5927
5928 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5929
5930         * remote.c (show_hardware_watchpoint_limit): New function.
5931         (show_hardware_watchpoint_length_limit): New function.
5932         (show_hardware_breakpoint_limit): New function.
5933         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5934         where appropriate, update help text.
5935
5936 2018-07-09  Tom Tromey  <tom@tromey.com>
5937
5938         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5939         (CLIBS): Don't mention NAT_CLIBS.
5940
5941 2018-07-09  Tom Tromey  <tom@tromey.com>
5942
5943         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5944         (LIBGDB_OBS, clean mostlyclean): Update.
5945         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5946
5947 2018-07-09  Tom Tromey  <tom@tromey.com>
5948
5949         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5950         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5951         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5952
5953 2018-07-09  Tom Tromey  <tom@tromey.com>
5954
5955         * Makefile.in (ALLDEPFILES): Remove exec.c.
5956         (COMMON_OBS): Remove exec.o.
5957         (COMMON_SFILES): Add exec.c.
5958
5959 2018-07-09  Tom Tromey  <tom@tromey.com>
5960
5961         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5962
5963 2018-07-09  Tom Tromey  <tom@tromey.com>
5964
5965         * Makefile.in (clean mostlyclean): Remove stamp-version.
5966         (version.c): Depend on stamp-version.
5967         (stamp-version): New rule, from version.c rule.
5968
5969 2018-07-09  Tom Tromey  <tom@tromey.com>
5970
5971         * Makefile.in (init.c): Depend on stamp-init.
5972         (stamp-init): New rule, from init.c rule.
5973         (clean mostlyclean): Remove stamp-init.
5974
5975 2018-07-09  Tom Tromey  <tom@tromey.com>
5976
5977         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5978         SUBDIR_GCC_COMPILE_SRCS.
5979
5980 2018-07-09  Tom Tromey  <tom@tromey.com>
5981
5982         * Makefile.in (init.c): Remove some unused sed rules.
5983
5984 2018-07-09  Tom Tromey  <tom@tromey.com>
5985
5986         * Makefile.in (TSOBS): Remove.
5987         (INIT_FILES): Update.
5988         (LIBGDB_OBS): Update.
5989         (COMMON_SFILES): Add inflow.c.
5990         (SFILES): Remove inflow.c.
5991
5992 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5993
5994         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5995
5996 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5997
5998         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5999         get_saveloc_name, is_signal_frame_name, step_name,
6000         init_remote_name, create_addr_space_name,
6001         destroy_addr_space_name, search_unwind_table_name,
6002         find_dyn_list_name): Constify.
6003
6004 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6005
6006         * darwin-nat.c (darwin_pthread_kill): New function.
6007         (darwin_resume_thread): Use darwin_pthread_kill.
6008
6009 2018-07-05  Tom de Vries  <tdevries@suse.de>
6010
6011         * macroexp.c (macro_buffer) <operator=>: New member function.
6012
6013 2018-07-04  Tom Tromey  <tom@tromey.com>
6014
6015         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6016
6017 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6018
6019         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6020         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6021         * maint.c: Likewise.
6022         * top.c: Likewise.
6023
6024 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6025
6026         * NEWS: Create a new section for the next release branch.
6027         Rename the section of the current branch, now that it has
6028         been cut.
6029
6030 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6031
6032         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6033         * version.in: Bump version to 8.2.50.DATE-git.
6034
6035 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6036             Pedro Alves  <palves@redhat.com>
6037
6038         * linux-nat.c (linux_init_ptrace): Rename to ...
6039         (linux_init_ptrace_procfs): ... this.  Call
6040         linux_proc_init_warnings.
6041         (linux_nat_target::post_attach)
6042         (linux_nat_target::post_startup_inferior): Adjust.
6043         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6044         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6045
6046 2018-07-04  Tom de Vries  <tdevries@suse.de>
6047
6048         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6049         check ...
6050         (read_comp_unit_head): ... here.
6051
6052 2018-07-03  Tom Tromey  <tom@tromey.com>
6053
6054         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6055         (stop_tracing, tstatus_command)
6056         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6057         (print_one_static_tracepoint_marker): Update.
6058         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6059         std::vector.
6060         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6061         VEC.
6062         (all_tracepoints, static_tracepoints_here): Return std::vector.
6063
6064 2018-07-03  Tom Tromey  <tom@tromey.com>
6065
6066         * common/ptid.c (ptid_equal): Remove.
6067         * common/ptid.h (ptid_equal): Don't declare.
6068         * ada-tasks.c: Update.
6069         * breakpoint.c: Update.
6070         * common/agent.c: Update.
6071         * corelow.c: Update.
6072         * darwin-nat-info.c: Update.
6073         * darwin-nat.c: Update.
6074         * dcache.c: Update.
6075         * dtrace-probe.c: Update.
6076         * dummy-frame.c: Update.
6077         * fbsd-nat.c: Update.
6078         * frame.c: Update.
6079         * gdbthread.h: Update.
6080         * gnu-nat.c: Update.
6081         * go32-nat.c: Update.
6082         * inf-loop.c: Update.
6083         * inf-ptrace.c: Update.
6084         * infcall.c: Update.
6085         * infcmd.c: Update.
6086         * inflow.c: Update.
6087         * infrun.c: Update.
6088         * linux-fork.c: Update.
6089         * linux-nat.c: Update.
6090         * linux-thread-db.c: Update.
6091         * mi/mi-cmd-var.c: Update.
6092         * mi/mi-interp.c: Update.
6093         * mi/mi-main.c: Update.
6094         * nto-procfs.c: Update.
6095         * ppc-linux-tdep.c: Update.
6096         * procfs.c: Update.
6097         * python/py-inferior.c: Update.
6098         * python/py-record-btrace.c: Update.
6099         * python/py-record.c: Update.
6100         * ravenscar-thread.c: Update.
6101         * regcache.c: Update.
6102         * remote-sim.c: Update.
6103         * remote.c: Update.
6104         * sol-thread.c: Update.
6105         * solib.c: Update.
6106         * target.c: Update.
6107         * tui/tui-stack.c: Update.
6108         * varobj.c: Update.
6109         * windows-nat.c: Update.
6110         * windows-tdep.c: Update.
6111
6112 2018-07-03  Tom Tromey  <tom@tromey.com>
6113
6114         * common/ptid.c (ptid_match): Remove.
6115         * common/ptid.h (ptid_match): Don't declare.
6116         * fbsd-nat.c: Update.
6117         * infcmd.c: Update.
6118         * infrun.c: Update.
6119         * linux-nat.c: Update.
6120         * record-btrace.c: Update.
6121         * regcache.c: Update.
6122         * remote.c: Update.
6123
6124 2018-07-03  Tom Tromey  <tom@tromey.com>
6125
6126         * common/ptid.c (ptid_tid_p): Remove.
6127         * common/ptid.h (ptid_tid_p): Don't declare.
6128         * sol-thread.c: Update.
6129
6130 2018-07-03  Tom Tromey  <tom@tromey.com>
6131
6132         * common/ptid.c (ptid_lwp_p): Remove.
6133         * common/ptid.h (ptid_lwp_p): Don't declare.
6134         * fbsd-nat.c: Update.
6135         * linux-nat.c: Update.
6136         * nat/linux-procfs.c: Update.
6137         * nat/x86-linux-dregs.c: Update.
6138         * sol-thread.c: Update.
6139
6140 2018-07-03  Tom Tromey  <tom@tromey.com>
6141
6142         * common/ptid.c (ptid_is_pid): Remove.
6143         * common/ptid.h (ptid_is_pid): Don't declare.
6144         * infrun.c: Update.
6145         * linux-nat.c: Update.
6146         * mi/mi-interp.c: Update.
6147         * remote.c: Update.
6148         * thread.c: Update.
6149
6150 2018-07-03  Tom Tromey  <tom@tromey.com>
6151
6152         * common/ptid.c (ptid_get_tid): Remove.
6153         * common/ptid.h (ptid_get_tid): Don't declare.
6154         * ada-tasks.c: Update.
6155         * aix-thread.c: Update.
6156         * bsd-uthread.c: Update.
6157         * darwin-nat.c: Update.
6158         * fbsd-nat.c: Update.
6159         * i386-darwin-nat.c: Update.
6160         * infrun.c: Update.
6161         * linux-tdep.c: Update.
6162         * nto-procfs.c: Update.
6163         * ppc-ravenscar-thread.c: Update.
6164         * python/py-infthread.c: Update.
6165         * ravenscar-thread.c: Update.
6166         * sol-thread.c: Update.
6167         * sparc-ravenscar-thread.c: Update.
6168         * windows-nat.c: Update.
6169
6170 2018-07-03  Tom Tromey  <tom@tromey.com>
6171
6172         * common/ptid.c (ptid_get_lwp): Remove.
6173         * common/ptid.h (ptid_get_lwp): Don't declare.
6174         * aarch64-linux-nat.c: Update.
6175         * ada-tasks.c: Update.
6176         * aix-thread.c: Update.
6177         * amd64-linux-nat.c: Update.
6178         * arm-linux-nat.c: Update.
6179         * corelow.c: Update.
6180         * fbsd-nat.c: Update.
6181         * fbsd-tdep.c: Update.
6182         * gnu-nat.c: Update.
6183         * i386-cygwin-tdep.c: Update.
6184         * i386-gnu-nat.c: Update.
6185         * i386-linux-nat.c: Update.
6186         * ia64-linux-nat.c: Update.
6187         * inf-ptrace.c: Update.
6188         * infrun.c: Update.
6189         * linux-fork.c: Update.
6190         * linux-nat.c: Update.
6191         * linux-tdep.c: Update.
6192         * linux-thread-db.c: Update.
6193         * mips-linux-nat.c: Update.
6194         * nat/aarch64-linux-hw-point.c: Update.
6195         * nat/aarch64-linux.c: Update.
6196         * nat/linux-btrace.c: Update.
6197         * nat/linux-osdata.c: Update.
6198         * nat/linux-procfs.c: Update.
6199         * nat/x86-linux-dregs.c: Update.
6200         * obsd-nat.c: Update.
6201         * ppc-fbsd-nat.c: Update.
6202         * ppc-linux-nat.c: Update.
6203         * procfs.c: Update.
6204         * python/py-infthread.c: Update.
6205         * ravenscar-thread.c: Update.
6206         * remote.c: Update.
6207         * s390-linux-nat.c: Update.
6208         * sol-thread.c: Update.
6209         * sol2-tdep.c: Update.
6210         * spu-linux-nat.c: Update.
6211         * x86-linux-nat.c: Update.
6212         * xtensa-linux-nat.c: Update.
6213
6214 2018-07-03  Tom Tromey  <tom@tromey.com>
6215
6216         * common/ptid.c (ptid_get_pid): Remove.
6217         * common/ptid.h (ptid_get_pid): Don't declare.
6218         * aarch64-linux-nat.c: Update.
6219         * ada-lang.c: Update.
6220         * aix-thread.c: Update.
6221         * alpha-bsd-nat.c: Update.
6222         * amd64-fbsd-nat.c: Update.
6223         * amd64-linux-nat.c: Update.
6224         * arm-linux-nat.c: Update.
6225         * arm-nbsd-nat.c: Update.
6226         * auxv.c: Update.
6227         * break-catch-syscall.c: Update.
6228         * breakpoint.c: Update.
6229         * bsd-uthread.c: Update.
6230         * corelow.c: Update.
6231         * ctf.c: Update.
6232         * darwin-nat.c: Update.
6233         * fbsd-nat.c: Update.
6234         * fbsd-tdep.c: Update.
6235         * gcore.c: Update.
6236         * gnu-nat.c: Update.
6237         * hppa-nbsd-nat.c: Update.
6238         * hppa-obsd-nat.c: Update.
6239         * i386-fbsd-nat.c: Update.
6240         * ia64-linux-nat.c: Update.
6241         * inf-ptrace.c: Update.
6242         * infcmd.c: Update.
6243         * inferior.c: Update.
6244         * inferior.h: Update.
6245         * inflow.c: Update.
6246         * infrun.c: Update.
6247         * linux-fork.c: Update.
6248         * linux-nat.c: Update.
6249         * linux-tdep.c: Update.
6250         * linux-thread-db.c: Update.
6251         * m68k-bsd-nat.c: Update.
6252         * mi/mi-interp.c: Update.
6253         * mi/mi-main.c: Update.
6254         * mips-linux-nat.c: Update.
6255         * mips-nbsd-nat.c: Update.
6256         * mips64-obsd-nat.c: Update.
6257         * nat/aarch64-linux-hw-point.c: Update.
6258         * nat/aarch64-linux.c: Update.
6259         * nat/linux-btrace.c: Update.
6260         * nat/linux-osdata.c: Update.
6261         * nat/linux-procfs.c: Update.
6262         * nat/x86-linux-dregs.c: Update.
6263         * nto-procfs.c: Update.
6264         * obsd-nat.c: Update.
6265         * ppc-linux-nat.c: Update.
6266         * ppc-nbsd-nat.c: Update.
6267         * ppc-obsd-nat.c: Update.
6268         * proc-service.c: Update.
6269         * procfs.c: Update.
6270         * python/py-inferior.c: Update.
6271         * python/py-infthread.c: Update.
6272         * ravenscar-thread.c: Update.
6273         * record.c: Update.
6274         * remote-sim.c: Update.
6275         * remote.c: Update.
6276         * rs6000-nat.c: Update.
6277         * s390-linux-nat.c: Update.
6278         * sh-nbsd-nat.c: Update.
6279         * sol-thread.c: Update.
6280         * sparc-nat.c: Update.
6281         * sparc64-tdep.c: Update.
6282         * spu-linux-nat.c: Update.
6283         * spu-tdep.c: Update.
6284         * target-debug.h: Update.
6285         * target.c: Update.
6286         * thread.c: Update.
6287         * tid-parse.c: Update.
6288         * tracefile-tfile.c: Update.
6289         * vax-bsd-nat.c: Update.
6290         * windows-nat.c: Update.
6291         * x86-linux-nat.c: Update.
6292         * x86-nat.c: Update.
6293
6294 2018-07-03  Tom Tromey  <tom@tromey.com>
6295
6296         * common/ptid.c (pid_to_ptid): Remove.
6297         * common/ptid.h (pid_to_ptid): Don't declare.
6298         * aix-thread.c: Update.
6299         * arm-linux-nat.c: Update.
6300         * common/ptid.c: Update.
6301         * common/ptid.h: Update.
6302         * corelow.c: Update.
6303         * ctf.c: Update.
6304         * darwin-nat.c: Update.
6305         * fbsd-nat.c: Update.
6306         * fork-child.c: Update.
6307         * gnu-nat.c: Update.
6308         * go32-nat.c: Update.
6309         * inf-ptrace.c: Update.
6310         * infcmd.c: Update.
6311         * inferior.c: Update.
6312         * infrun.c: Update.
6313         * linux-fork.c: Update.
6314         * linux-nat.c: Update.
6315         * nat/aarch64-linux-hw-point.c: Update.
6316         * nat/fork-inferior.c: Update.
6317         * nat/x86-linux-dregs.c: Update.
6318         * nto-procfs.c: Update.
6319         * obsd-nat.c: Update.
6320         * procfs.c: Update.
6321         * progspace.c: Update.
6322         * remote.c: Update.
6323         * rs6000-nat.c: Update.
6324         * s390-linux-nat.c: Update.
6325         * sol-thread.c: Update.
6326         * spu-linux-nat.c: Update.
6327         * target.c: Update.
6328         * top.c: Update.
6329         * tracefile-tfile.c: Update.
6330         * windows-nat.c: Update.
6331
6332 2018-07-03  Tom Tromey  <tom@tromey.com>
6333
6334         * common/ptid.h (ptid_build): Don't declare.
6335         * common/ptid.c (ptid_build): Remove.
6336         * aix-thread.c: Update.
6337         * bsd-kvm.c: Update.
6338         * bsd-uthread.c: Update.
6339         * common/agent.c: Update.
6340         * common/ptid.c: Update.
6341         * common/ptid.h: Update.
6342         * corelow.c: Update.
6343         * darwin-nat.c: Update.
6344         * fbsd-nat.c: Update.
6345         * gnu-nat.c: Update.
6346         * linux-fork.c: Update.
6347         * linux-nat.c: Update.
6348         * linux-thread-db.c: Update.
6349         * nat/linux-osdata.c: Update.
6350         * nat/linux-procfs.c: Update.
6351         * nto-procfs.c: Update.
6352         * obsd-nat.c: Update.
6353         * proc-service.c: Update.
6354         * procfs.c: Update.
6355         * ravenscar-thread.c: Update.
6356         * remote-sim.c: Update.
6357         * remote.c: Update.
6358         * sol-thread.c: Update.
6359         * target.c: Update.
6360         * windows-nat.c: Update.
6361
6362 2018-07-03  Tom Tromey  <tom@tromey.com>
6363
6364         * infrun.c (follow_exec): Use exit_inferior_silent.
6365         * inferior.c (exit_inferior_num_silent): Remove.
6366         * inferior.h (exit_inferior_num_silent): Don't declare.
6367
6368 2018-07-03  Tom Tromey  <tom@tromey.com>
6369
6370         PR cli/23340:
6371         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6372         inferior_ptid on error.
6373
6374 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6375             Simon Marchi  <simon.marchi@polymtl.ca>
6376
6377         PR tdep/8282
6378         * disasm.h (gdb_disassembler): Add
6379         `m_disassembler_options_holder'. member
6380         * disasm.c (get_all_disassembler_options): New function.
6381         (gdb_disassembler::gdb_disassembler): Use it.
6382         (gdb_buffered_insn_length_init_dis): Likewise.
6383         (gdb_buffered_insn_length): Adjust accordingly.
6384         (set_disassembler_options): Handle options with arguments.
6385         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6386         line if showing options with descriptions.
6387         (disassembler_options_completer): Adapt to using the
6388         `disasm_options_and_args_t' structure.
6389         * mips-tdep.c (mips_disassembler_options): New variable.
6390         (mips_disassembler_options_o32): Likewise.
6391         (mips_disassembler_options_n32): Likewise.
6392         (mips_disassembler_options_n64): Likewise.
6393         (gdb_print_insn_mips): Don't set `disassembler_options'.
6394         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6395         functions.
6396         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6397         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6398         `gdbarch_disassembler_options_implicit' and
6399         `gdbarch_valid_disassembler_options'.
6400         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6401         `disasm_options_and_args_t' structure.
6402         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6403         method.
6404         (valid_disassembler_options): Switch from `disasm_options_t' to
6405         the `disasm_options_and_args_t' structure.
6406         * NEWS: Document `set disassembler-options' support for the MIPS
6407         target.
6408         * gdbarch.h: Regenerate.
6409         * gdbarch.c: Regenerate.
6410
6411 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6412
6413         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6414
6415 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6416
6417         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6418         parameter in call to amd64_target_description.
6419         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6420         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6421         (amd64fbsd_init_abi): Likewise.
6422         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6423         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6424         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6425         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6426
6427 2018-06-29  Pedro Alves  <palves@redhat.com>
6428
6429         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6430         "segments" parameter.
6431         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6432         (_initialize_amd64_tdep): Update call to
6433         amd64_create_target_description.
6434         (amd64_target_description): Add "segments" parameter.  Adjust
6435         the implementation to use it.
6436         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6437         call to amd64_create_target_description.
6438         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6439         * gdb/arch/amd64.h (amd64_create_target_description): Add
6440         "segments" register.
6441         * gdb/arch/amd64.c (amd64_create_target_description): Add
6442         "segments" parameter.  Call create_feature_i386_64bit_segments
6443         only if SEGMENTS is true.
6444         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6445         call to amd64_create_target_description.
6446
6447 2018-06-29  Pedro Alves  <palves@redhat.com>
6448
6449         * thread.c (thread_target_id_str): New, factored out from ...
6450         (print_thread_info_1): ... here.  Use it to compute the max
6451         "Target Id" column width.
6452
6453 2018-06-29  Pedro Alves  <palves@redhat.com>
6454
6455         * remote.c (remote_target::extra_thread_info): Delete
6456         'display_buf' and 'n' locals.  from the cache, regardless of
6457         packet mechanims is in use.  Use cache for qThreadExtra and qP
6458         methods too.
6459
6460 2018-06-29  Pedro Alves  <palves@redhat.com>
6461
6462         * blockframe.c (find_pc_sect_containing_function): New function.
6463         * breakpoint.c (print_breakpoint_location): Don't call
6464         find_pc_sect_function.
6465         * linespec.c (create_sals_line_offset): Record the location's
6466         symbol in the sal.
6467         * linespec.c (convert_address_location_to_sals): Fill in sal's
6468         symbol with find_pc_sect_containing_function.
6469         * symtab.c (find_function_start_sal): Rename to ...
6470         (find_function_start_sal_1): ... this.
6471         (find_function_start_sal): Reimplement as wrapper around
6472         find_function_start_sal_1, and use
6473         find_pc_sect_containing_function to fill in the sal's symbol.
6474         (find_function_start_sal(symbol*, bool)): Adjust.
6475         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6476         comments.
6477         (find_pc_sect_containing_function): Declare.
6478
6479 2018-06-29  Pedro Alves  <palves@redhat.com>
6480
6481         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6482         true if the the location has no symbol.
6483
6484 2018-06-28  Tom Tromey  <tom@tromey.com>
6485
6486         * NEWS: Mention --enable-codesign.
6487         * silent-rules.mk (ECHO_SIGN): New variable.
6488         * configure.ac: Add --enable-codesign.
6489         * configure: Rebuild.
6490         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6491         (gdb$(EXEEXT)): Optionally invoke codesign.
6492
6493 2018-06-28  Pedro Alves  <palves@redhat.com>
6494
6495         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6496         comments.
6497         (switch_to_thread_no_regs): Adjust comment.
6498         * infcmd.c (stop_pc): Delete.
6499         (post_create_inferior, info_program_command): Replace references
6500         to stop_pc with references to thread_info->suspend.stop_pc.
6501         * inferior.h (stop_pc): Delete declaration.
6502         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6503         (handle_inferior_event_1, handle_signal_stop)
6504         (process_event_stop_test, keep_going_stepped_thread)
6505         (handle_step_into_function, handle_step_into_function_backward)
6506         (print_stop_location): Replace references to stop_pc with
6507         references to thread_info->suspend.stop_pc.
6508         (struct infcall_suspend_state) <stop_pc>: Delete field.
6509         (save_infcall_suspend_state, restore_infcall_suspend_state):
6510         Remove references to inf_stat->stop_pc.
6511         * linux-fork.c (fork_load_infrun_state): Likewise.
6512         * record-btrace.c (record_btrace_set_replay): Likewise.
6513         * record-full.c (record_full_goto_entry): Likewise.
6514         * remote.c (print_one_stopped_thread): Likewise.
6515         * target.c (target_resume): Extend comment.
6516         * thread.c (set_executing_thread): New.
6517         (set_executing): Use it.
6518         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6519         Remove references to stop_pc.
6520
6521 2018-06-28  Pedro Alves  <palves@redhat.com>
6522
6523         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6524         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6525
6526 2018-06-28  Tom Tromey  <tom@tromey.com>
6527
6528         * coffread.c (coff_symfile_finish): Update.
6529         * xcoffread.c (xcoff_symfile_finish): Update.
6530         * elfread.c (elf_symfile_finish): Update.
6531         * symfile.h (dwarf2_free_objfile): Don't declare.
6532         * dwarf2read.c (_initialize_dwarf2_read): Use
6533         register_objfile_data_with_cleanup.
6534         (dwarf2_free_objfile): Now static.  Change signature.
6535
6536 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6537
6538         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6539         option "-o" to add-symbol-file-load to add an offset to each
6540         section's load address.
6541         * symfile.c (set_objfile_default_section_offset): New function.
6542
6543 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6544
6545         * symfile.c (add_symbol_file_command): Make sure that sections
6546         with the same name are sorted in the same order.
6547
6548 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6549
6550         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6551         require the second argument.  If omitted, load sections at the
6552         addresses specified in the file.
6553
6554 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6555
6556         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6557         (_initialize_symfile): Add option "-o" to symbol-file to add an
6558         offset to each section of the symbol file.
6559
6560 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6561
6562         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6563
6564 2018-06-27  Tom Tromey  <tom@tromey.com>
6565
6566         * stack.c (_initialize_stack): Update "func" help text.
6567
6568 2018-06-27  Tom Tromey  <tom@tromey.com>
6569
6570         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6571         std::vector.
6572         (unwind_infopy_str, pyuw_create_unwind_info)
6573         (unwind_infopy_add_saved_register, pyuw_sniffer)
6574         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6575         Update.
6576         (struct saved_reg): Add constructor.
6577         <value>: Now a gdbpy_ref<>.
6578
6579 2018-06-27  Tom Tromey  <tom@tromey.com>
6580
6581         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6582
6583 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6584
6585         * gdb-gdb.py.in: Format using autopep8.
6586
6587 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6588
6589         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6590         (type_lookup_function): Recognize CORE_ADDR values.
6591
6592 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6593
6594         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6595         print tag_name.
6596
6597 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6598
6599         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6600         <__lt__>: Add.
6601
6602 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6603
6604         * gdb-gdb.py: Move to...
6605         * gdb-gdb.py.in: ... here.
6606         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6607         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6608         dependencies.
6609         (distclean): Remove gdb-gdb.py when cleaning.
6610         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6611         * configure: Re-generate.
6612
6613 2018-06-27  Pedro Alves  <palves@redhat.com>
6614
6615         * proc-service.c (get_ps_regcache): New.
6616         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6617         (ps_lsetfpregs): Use it.
6618
6619 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6620
6621         PR gdb/21695
6622         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6623         (dwarf_decode_lines_1): Adjust.
6624
6625 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6626
6627         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6628         override.
6629         <info_proc>: Likewise.
6630
6631 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6632
6633         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6634         to windows_fetch_one_register, and only handle the case of
6635         fetching one register.  Move the code that reloads the context
6636         and iterates over all registers if R is negative to...
6637         (windows_nat_target::fetch_registers): ... here.
6638         (do_windows_store_inferior_registers): Rename to
6639         windows_store_one_register, and only handle the case of storing
6640         one register.  Move the code that handles the case where r is
6641         negative to...
6642         (windows_nat_target::store_registers) ... here.
6643
6644 2018-06-26  Tom Tromey  <tom@tromey.com>
6645
6646         PR rust/22574:
6647         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6648         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6649         Update.
6650         (rust_internal_print_type): Add podata parameter.
6651         (rust_print_type): Update.
6652
6653 2018-06-26  Tom Tromey  <tom@tromey.com>
6654
6655         * typeprint.h (struct print_offset_data) <update, finish,
6656         maybe_print_hole>: New methods.
6657         <indentation>: New constant.
6658         * typeprint.c (print_offset_data::indentation): Define.
6659         (print_offset_data::maybe_print_hole, print_offset_data::update)
6660         (print_offset_data::finish): Move from c-typeprint.c and rename.
6661         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6662         (print_spaces_filtered_with_print_options): Update.
6663         (c_print_type_union_field_offset, maybe_print_hole)
6664         (c_print_type_struct_field_offset): Move to typeprint.c and
6665         rename.
6666         (c_type_print_base_struct_union): Update.
6667
6668 2018-06-25  Pedro Alves  <palves@redhat.com>
6669
6670         * gdbthread.h (thread_info_ref, delete_thread)
6671         (delete_thread_silent, first_thread_of_inferior)
6672         (any_thread_of_inferior, switch_to_thread)
6673         (enable_thread_stack_temporaries)
6674         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6675         (get_last_thread_stack_temporary)
6676         (value_in_thread_stack_temporaries, can_access_registers_thread):
6677         Spell out "struct thread_info" instead of just "thread_info".
6678         * inferior.h (notice_new_inferior): Likewise.
6679
6680 2018-06-25  Pedro Alves  <palves@redhat.com>
6681
6682         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6683         pass thread_info pointer to delete_thread.
6684         (windows_nat_target::detach): Pass inferior pointer to
6685         detach_inferior.
6686         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6687         delete_thread.
6688         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6689         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6690         and pass a thread_info pointer to delete_thread.
6691         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6692         pass thread_info pointer to delete_thread.
6693         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6694         delete_thread_silent call.
6695         * procfs.c (procfs_target::detach): Pass inferior pointer to
6696         detach_inferior.
6697         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6698         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6699         delete_thread_silent call.
6700         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6701         pass thread_info pointer to delete_thread.
6702         (windows_nat_target::detach): Pass inferior pointer to
6703         delete_inferior.
6704
6705 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6706
6707         * regcache.c (readable_regcache::read_part): Fix asserts.
6708         (reg_buffer::raw_collect_part): New function.
6709         (regcache::write_part): Fix asserts.
6710         (reg_buffer::raw_supply_part): New function.
6711         (regcache::transfer_regset_register): New helper function.
6712         (regcache::transfer_regset): Call new functions.
6713         (regcache_supply_regset): Use gdb_byte*.
6714         (regcache::supply_regset): Likewise.
6715         (regcache_collect_regset): Likewise.
6716         (regcache::collect_regset): Likewise.
6717         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6718         (reg_buffer::raw_supply_part): Likewise.
6719         (regcache::transfer_regset_register): Likewise.
6720         (regcache::transfer_regset): Use gdb_byte*.
6721
6722 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6723
6724         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6725
6726 2018-06-21  Pedro Alves  <palves@redhat.com>
6727
6728         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6729         instead of a ptid_t.  All callers adjusted.
6730         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6731         adjusted.
6732         (print_ada_task_info, display_current_task_id, task_command_1):
6733         Adjust.
6734         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6735         inferior_thread.
6736         (breakpoint_kind): Adjust.
6737         (remove_breakpoints_pid): Rename to ...
6738         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6739         pointer.  All callers adjusted.
6740         (bpstat_clear_actions): Use inferior_thread.
6741         (get_bpstat_thread): New.
6742         (bpstat_do_actions): Use it.
6743         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6744         to take a thread_info pointer.  All callers adjusted.
6745         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6746         (breakpoint_re_set_thread): Use inferior_thread.
6747         * breakpoint.h (struct inferior): Forward declare.
6748         (bpstat_stop_status): Update.
6749         (remove_breakpoints_pid): Delete.
6750         (remove_breakpoints_inf): New.
6751         * bsd-uthread.c (bsd_uthread_target::wait)
6752         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6753         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6754         (maint_btrace_packet_history_cmd)
6755         (maint_btrace_clear_packet_history_cmd): Adjust.
6756         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6757         inferior_thread.
6758         * cli/cli-interp.c: Include "inferior.h".
6759         * common/refcounted-object.h (struct
6760         refcounted_object_ref_policy): New.
6761         * compile/compile-object-load.c: Include gdbthread.h.
6762         (store_regs): Use inferior_thread.
6763         * corelow.c (core_target::close): Use current_inferior.
6764         (core_target_open): Adjust to use first_thread_of_inferior and use
6765         the current inferior.
6766         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6767         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6768         <thread>: ... this new field.  All references adjusted.
6769         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6770         Take a thread_info pointer instead of a ptid_t.
6771         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6772         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6773         thread_info pointer instead of a ptid_t.
6774         * elfread.c: Include "inferior.h".
6775         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6776         Use inferior_thread.
6777         * eval.c (evaluate_subexp): Likewise.
6778         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6779         inferior_thread.
6780         * gdb_proc_service.h (struct thread_info): Forward declare.
6781         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6782         <thread>: ... this new field.  All references adjusted.
6783         * gdbarch.h, gdbarch.c: Regenerate.
6784         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6785         'thread' parameter.  All implementations and callers adjusted.
6786         * gdbthread.h (thread_info) <set_running>: New method.
6787         (delete_thread, delete_thread_silent): Take a thread_info pointer
6788         instead of a ptid.
6789         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6790         (first_thread_of_process): Delete, replaced by ...
6791         (first_thread_of_inferior): ... this new function.  All callers
6792         adjusted.
6793         (any_live_thread_of_process): Delete, replaced by ...
6794         (any_live_thread_of_inferior): ... this new function.  All callers
6795         adjusted.
6796         (switch_to_thread, switch_to_no_thread): Declare.
6797         (is_executing): Delete.
6798         (enable_thread_stack_temporaries): Update comment.
6799         <enable_thread_stack_temporaries>: Take a thread_info pointer
6800         instead of a ptid_t.  Incref the thread.
6801         <~enable_thread_stack_temporaries>: Decref the thread.
6802         <m_ptid>: Delete
6803         <m_thr>: New.
6804         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6805         (get_last_thread_stack_temporary)
6806         (value_in_thread_stack_temporaries, can_access_registers_thread):
6807         Take a thread_info pointer instead of a ptid_t.  All callers
6808         adjusted.
6809         * infcall.c (get_call_return_value): Use inferior_thread.
6810         (run_inferior_call): Work with thread pointers instead of ptid_t.
6811         (call_function_by_hand_dummy): Work with thread pointers instead
6812         of ptid_t.  Use thread_info_ref.
6813         * infcmd.c (proceed_thread_callback): Access thread's state
6814         directly.
6815         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6816         access thread's state directly.
6817         (continue_command): Use inferior_thread.
6818         (info_program_command): Use find_thread_ptid and access thread
6819         state directly.
6820         (proceed_after_attach_callback): Use thread state directly.
6821         (notice_new_inferior): Take a thread_info pointer instead of a
6822         ptid_t.  All callers adjusted.
6823         (exit_inferior): Take an inferior pointer instead of a pid.  All
6824         callers adjusted.
6825         (exit_inferior_silent): New.
6826         (detach_inferior): Delete.
6827         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6828         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6829         (detach_inferior_command, kill_inferior_command): Use
6830         find_inferior_id instead of valid_gdb_inferior_id and
6831         gdb_inferior_id_to_pid.
6832         (inferior_command): Use inferior and thread pointers.
6833         * inferior.h (struct thread_info): Forward declare.
6834         (notice_new_inferior): Take a thread_info pointer instead of a
6835         ptid_t.  All callers adjusted.
6836         (detach_inferior): Delete declaration.
6837         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6838         instead of a pid.  All callers adjusted.
6839         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6840         (valid_gdb_inferior_id): Delete.
6841         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6842         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6843         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6844         ...
6845         <inf>: ... this new field.
6846         <step_ptid>: Delete, replaced by ...
6847         <step_thread>: ... this new field.
6848         (get_displaced_stepping_state): Take an inferior pointer instead
6849         of a pid.  All callers adjusted.
6850         (displaced_step_in_progress_any_inferior): Adjust.
6851         (displaced_step_in_progress_thread): Take a thread pointer instead
6852         of a ptid_t.  All callers adjusted.
6853         (displaced_step_in_progress, add_displaced_stepping_state): Take
6854         an inferior pointer instead of a pid.  All callers adjusted.
6855         (get_displaced_step_closure_by_addr): Adjust.
6856         (remove_displaced_stepping_state): Take an inferior pointer
6857         instead of a pid.  All callers adjusted.
6858         (displaced_step_prepare_throw, displaced_step_prepare)
6859         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6860         All callers adjusted.
6861         (start_step_over): Adjust.
6862         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6863         displaced step queue.
6864         (do_target_resume): Adjust.
6865         (fetch_inferior_event): Use inferior_thread.
6866         (context_switch, get_inferior_stop_soon): Take an
6867         execution_control_state pointer instead of a ptid_t.  All callers
6868         adjusted.
6869         (switch_to_thread_cleanup): Delete.
6870         (stop_all_threads): Use scoped_restore_current_thread.
6871         * inline-frame.c: Include "gdbthread.h".
6872         (inline_state) <inline_state>: Take a thread pointer instead of a
6873         ptid_t.  All callers adjusted.
6874         <ptid>: Delete, replaced by ...
6875         <thread>: ... this new field.
6876         (find_inline_frame_state): Take a thread pointer instead of a
6877         ptid_t.  All callers adjusted.
6878         (skip_inline_frames, step_into_inline_frame)
6879         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6880         pointer instead of a ptid_t.  All callers adjusted.
6881         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6882         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6883         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6884         pointers directly.
6885         * linux-nat.c (get_detach_signal): Likewise.
6886         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6887         (thread_db_notice_clone): Adjust.
6888         (thread_db_find_new_threads_silently)
6889         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6890         a thread pointer instead of a ptid_t.  All callers adjusted.
6891         * mi/mi-cmd-var.c: Include "inferior.h".
6892         (mi_cmd_var_update_iter): Update to use thread pointers.
6893         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6894         inferior directly.
6895         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6896         out to ...
6897         (mi_output_running): ... this new function.
6898         (mi_on_resume_1): Adjust to use it.
6899         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6900         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6901         directly.
6902         (interrupt_thread_callback): : Adjust to use thread and inferior
6903         pointers.
6904         * proc-service.c: Include "gdbthread.h".
6905         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6906         * progspace-and-thread.c: Include "inferior.h".
6907         * progspace.c: Include "inferior.h".
6908         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6909         hold a reference to an inferior_object.
6910         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6911         inferior_thread.
6912         * python/py-inferior.c (struct inferior_object): Give the type a
6913         tag name instead of a typedef.
6914         (python_on_normal_stop): No need to check if the current thread is
6915         listed.
6916         (inferior_to_inferior_object): Change return type to
6917         inferior_object.  All callers adjusted.
6918         (find_thread_object): Delete, bits factored out to ...
6919         (thread_to_thread_object): ... this new function.
6920         * python/py-infthread.c (create_thread_object): Use
6921         inferior_to_inferior_object.
6922         (thpy_is_stopped): Use thread pointer directly.
6923         (gdbpy_selected_thread): Use inferior_thread.
6924         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6925         field, replaced with ...
6926         <thread>: ... this new field.  All users adjusted.
6927         (btpy_insn_or_gap_new): Drop const.
6928         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6929         callers adjusted.
6930         * python/py-record.c: Include "gdbthread.h".
6931         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6932         a ptid_t.  All callers adjusted.
6933         (gdbpy_current_recording): Use inferior_thread.
6934         * python/py-record.h (recpy_record_object) <ptid>: Delete
6935         field, replaced with ...
6936         <thread>: ... this new field.  All users adjusted.
6937         (recpy_element_object) <ptid>: Delete
6938         field, replaced with ...
6939         <thread>: ... this new field.  All users adjusted.
6940         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6941         a ptid_t.  All callers adjusted.
6942         * python/py-threadevent.c: Include "gdbthread.h".
6943         (get_event_thread): Use thread_to_thread_object.
6944         * python/python-internal.h (struct inferior_object): Forward
6945         declare.
6946         (find_thread_object, find_inferior_object): Delete declarations.
6947         (thread_to_thread_object, inferior_to_inferior_object): New
6948         declarations.
6949         * record-btrace.c: Include "inferior.h".
6950         (require_btrace_thread): Use inferior_thread.
6951         (record_btrace_frame_sniffer)
6952         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6953         (get_thread_current_frame): Use scoped_restore_current_thread and
6954         switch_to_thread.
6955         (get_thread_current_frame): Use thread pointer directly.
6956         (record_btrace_replay_at_breakpoint): Use thread's inferior
6957         pointer directly.
6958         * record-full.c: Include "inferior.h".
6959         * regcache.c: Include "gdbthread.h".
6960         (get_thread_arch_regcache): Use the inferior's address space
6961         directly.
6962         (get_thread_regcache, registers_changed_thread): New.
6963         * regcache.h (get_thread_regcache(thread_info *thread)): New
6964         overload.
6965         (registers_changed_thread): New.
6966         (remote_target) <remote_detach_1>: Swap order of parameters.
6967         (remote_add_thread): <remote_add_thread>: Return the new thread.
6968         (get_remote_thread_info(ptid_t)): New overload.
6969         (remote_target::remote_notice_new_inferior): Use thread pointers
6970         directly.
6971         (remote_target::process_initial_stop_replies): Use
6972         thread_info::set_running.
6973         (remote_target::remote_detach_1, remote_target::detach)
6974         (extended_remote_target::detach): Adjust.
6975         * stack.c (frame_show_address): Use inferior_thread.
6976         * target-debug.h (target_debug_print_thread_info_pp): New.
6977         * target-delegates.c: Regenerate.
6978         * target.c (default_thread_address_space): Delete.
6979         (memory_xfer_partial_1): Use current_inferior.
6980         (target_detach): Use current_inferior.
6981         (target_thread_address_space): Delete.
6982         (generic_mourn_inferior): Use current_inferior.
6983         * target.h (struct target_ops) <thread_address_space>: Delete.
6984         (target_thread_address_space): Delete.
6985         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6986         pointers directly.
6987         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6988         thread pointer instead of a ptid_t.  Adjust all callers.
6989         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6990         (first_thread_of_process): Delete, replaced by ...
6991         (first_thread_of_inferior): ... this new function.  All callers
6992         adjusted.
6993         (any_thread_of_process): Rename to ...
6994         (any_thread_of_inferior): ... this, and take an inferior pointer.
6995         (any_live_thread_of_process): Rename to ...
6996         (any_live_thread_of_inferior): ... this, and take an inferior
6997         pointer.
6998         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6999         (value_in_thread_stack_temporaries)
7000         (get_last_thread_stack_temporary): Take a thread pointer instead
7001         of a ptid_t.  Adjust all callers.
7002         (thread_info::set_running): New.
7003         (validate_registers_access): Use inferior_thread.
7004         (can_access_registers_ptid): Rename to ...
7005         (can_access_registers_thread): ... this, and take a thread
7006         pointer.
7007         (print_thread_info_1): Adjust to compare thread pointers instead
7008         of ptids.
7009         (switch_to_no_thread, switch_to_thread): Make extern.
7010         (scoped_restore_current_thread::~scoped_restore_current_thread):
7011         Use m_thread pointer directly.
7012         (scoped_restore_current_thread::scoped_restore_current_thread):
7013         Use inferior_thread.
7014         (thread_command): Use thread pointer directly.
7015         (thread_num_make_value_helper): Use inferior_thread.
7016         * top.c (execute_command): Use inferior_thread.
7017         * tui/tui-interp.c: Include "inferior.h".
7018         * varobj.c (varobj_create): Use inferior_thread.
7019         (value_of_root_1): Use find_thread_global_id instead of
7020         global_thread_id_to_ptid.
7021
7022 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7023
7024         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7025         possible.
7026         (regcache::write_part): Likewise.
7027         (readable_regcache::cooked_read_part): Update comment.
7028         (readable_regcache::cooked_write_part): Likewise.
7029         * regcache.h: (readable_regcache::read_part): Likewise.
7030         (regcache::write_part): Likewise.
7031
7032 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7033             Dirk Schubert  <dirk.schubert@arm.com>
7034
7035         * aarch64-linux-nat.c (post_attach): New.
7036         (aarch64_linux_nat_target::post_attach): Override post_attach to
7037         record the number of hardware debug registers.
7038
7039 2018-06-20  Tom Tromey  <tom@tromey.com>
7040
7041         * python/py-param.c (add_setshow_generic): Make parameters const.
7042         (parmpy_init): Update.
7043
7044 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7045
7046         * regcache.h (regcache_cooked_read_ftype): Rename to...
7047         (register_read_ftype): ...this, change type to function_view.
7048         (class reg_buffer) <save>: Remove src parameter.
7049         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7050         parameter non-const in first overload.  Remove src parameter in
7051         second overload.
7052         * regcache.c (do_cooked_read): Remove.
7053         (readonly_detached_regcache::readonly_detached_regcache): Make
7054         parameter non-const, adjust call to other constructor.
7055         (reg_buffer::save): Remove src parameter.
7056         * frame.c (do_frame_register_read): Remove.
7057         (frame_save_as_regcache): Use lambda function.
7058         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7059         parameter to ppu2spu_data *.
7060         (ppu2spu_sniffer): Use lambda function.
7061
7062 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7063
7064         * record-full.c (record_full_target::insert_breakpoint): Remove
7065         "struct" keyword, add const.
7066
7067 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7068
7069         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7070         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7071         * configure.ac: Remove AC_PREREQ, add missing quoting.
7072         * gnulib/configure.ac: Modernize usage of
7073         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7074         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7075         (AUTOMAKE_VERSION): Bump to 1.15.1.
7076         * configure: Re-generate.
7077         * config.in: Re-generate.
7078         * aclocal.m4: Re-generate.
7079         * gnulib/aclocal.m4: Re-generate.
7080         * gnulib/config.in: Re-generate.
7081         * gnulib/configure: Re-generate.
7082         * gnulib/import/Makefile.in: Re-generate.
7083
7084 2018-06-19  Pedro Alves  <palves@redhat.com>
7085
7086         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7087         (lookup_minimal_symbol_by_pc_section): ... here with
7088         gdb_assert_not_reached added.
7089
7090 2018-06-19  Pedro Alves  <palves@redhat.com>
7091
7092         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7093         parameter with a block parameter.  Compare location's block symbol
7094         with the frame's block instead of addresses.
7095         (skip_inline_frames): Pass the current block instead of the
7096         frame's address.  Break out as soon as we determine the frame
7097         should not be skipped.
7098
7099 2018-06-18  Tom Tromey  <tom@tromey.com>
7100
7101         * solib-aix.c (solib_aix_get_section_offsets): Return
7102         unique_xmalloc_ptr.
7103         (solib_aix_solib_create_inferior_hook): Update.
7104
7105 2018-06-18  Tom Tromey  <tom@tromey.com>
7106
7107         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7108
7109 2018-06-18  Tom Tromey  <tom@tromey.com>
7110
7111         * solib-frv.c (frv_relocate_main_executable): Use
7112         unique_xmalloc_ptr.
7113         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7114         unique_xmalloc_ptr.
7115
7116 2018-06-18  Tom Tromey  <tom@tromey.com>
7117
7118         * objfiles.h (inhibit_section_map_updates): Update.
7119         (resume_section_map_updates, resume_section_map_updates_cleanup):
7120         Remove.
7121         * solib-svr4.c (svr4_handle_solib_event): Update.
7122         * objfiles.c (inhibit_section_map_updates): Return
7123         scoped_restore_tmpl<int>.
7124         (resume_section_map_updates, resume_section_map_updates_cleanup):
7125         Remove.
7126
7127 2018-06-18  Tom Tromey  <tom@tromey.com>
7128
7129         * valprint.h (read_string): Update.
7130         * valprint.c (read_string): Change type of "buffer".
7131         (val_print_string): Update.
7132         * python/py-value.c (valpy_string): Update.
7133         * language.h (struct language_defn) <la_get_string>: Change
7134         type of "buffer".
7135         (default_get_string, c_get_string): Update.
7136         * language.c (default_get_string): Change type of "buffer".
7137         * guile/scm-value.c (gdbscm_value_to_string): Update.
7138         * c-lang.c (c_get_string): Change type of "buffer".
7139
7140 2018-06-18  Tom Tromey  <tom@tromey.com>
7141
7142         * ser-mingw.c (struct pipe_state_destroyer): New.
7143         (pipe_state_up): New typedef.
7144         (cleanup_pipe_state): Remove.
7145         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7146
7147 2018-06-18  Tom Tromey  <tom@tromey.com>
7148
7149         * rust-lang.h (rust_yyerror): Don't declare.
7150         * rust-lang.c (rust_language_defn): Update.
7151         * rust-exp.y (yyerror): Now static.
7152         * parse.c (parse_exp_in_context_1): Update.
7153         * p-lang.h (p_yyerror): Don't declare.
7154         * p-lang.c (p_language_defn): Update.
7155         * p-exp.y (yyerror): Now static.
7156         * opencl-lang.c (opencl_language_defn): Update.
7157         * objc-lang.c (objc_language_defn): Update.
7158         * m2-lang.h (m2_yyerror): Don't declare.
7159         * m2-lang.c (m2_language_defn): Update.
7160         * m2-exp.y (yyerror): Now static.
7161         * language.h (struct language_defn) <la_error>: Remove.
7162         * language.c (unk_lang_error): Remove.
7163         (unknown_language_defn, auto_language_defn): Remove.
7164         * go-lang.h (go_yyerror): Don't declare.
7165         * go-lang.c (go_language_defn): Update.
7166         * go-exp.y (yyerror): Now static.
7167         * f-lang.h (f_yyerror): Don't declare.
7168         * f-lang.c (f_language_defn): Update.
7169         * f-exp.y (yyerror): Now static.
7170         * d-lang.h (d_yyerror): Don't declare.
7171         * d-lang.c (d_language_defn): Update.
7172         * d-exp.y (yyerror): Now static.
7173         * c-lang.h (c_yyerror): Don't declare.
7174         * c-lang.c (c_language_defn, cplus_language_defn)
7175         (asm_language_defn, minimal_language_defn): Update.
7176         * c-exp.y (yyerror): Now static.
7177         * ada-lang.h (ada_yyerror): Don't declare.
7178         * ada-lang.c (ada_language_defn): Update.
7179         * ada-exp.y (yyerror): Now static.
7180
7181 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7182
7183         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7184         (store_sveregs_to_thread): Likewise.
7185         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7186         (aarch64_linux_store_inferior_registers): Likewise.
7187         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7188         function.
7189         (aarch64_sve_regs_copy_to_regcache): Likewise.
7190         (aarch64_sve_regs_copy_from_regcache): Likewise.
7191         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7192         declaration.
7193         (aarch64_sve_regs_copy_to_regcache): Likewise.
7194         (aarch64_sve_regs_copy_from_regcache): Likewise.
7195         (sve_context): Structure from Linux headers.
7196         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7197         (SVE_SIG_ZREG_SIZE): Likewise.
7198         (SVE_SIG_PREG_SIZE): Likewise.
7199         (SVE_SIG_FFR_SIZE): Likewise.
7200         (SVE_SIG_REGS_OFFSET): Likewise.
7201         (SVE_SIG_ZREGS_OFFSET): Likewise.
7202         (SVE_SIG_ZREG_OFFSET): Likewise.
7203         (SVE_SIG_ZREGS_SIZE): Likewise.
7204         (SVE_SIG_PREGS_OFFSET): Likewise.
7205         (SVE_SIG_PREG_OFFSET): Likewise.
7206         (SVE_SIG_PREGS_SIZE): Likewise.
7207         (SVE_SIG_FFR_OFFSET): Likewise.
7208         (SVE_SIG_REGS_SIZE): Likewise.
7209         (SVE_SIG_CONTEXT_SIZE): Likewise.
7210         (SVE_PT_REGS_MASK): Likewise.
7211         (SVE_PT_REGS_FPSIMD): Likewise.
7212         (SVE_PT_REGS_SVE): Likewise.
7213         (SVE_PT_VL_INHERIT): Likewise.
7214         (SVE_PT_VL_ONEXEC): Likewise.
7215         (SVE_PT_REGS_OFFSET): Likewise.
7216         (SVE_PT_FPSIMD_OFFSET): Likewise.
7217         (SVE_PT_FPSIMD_SIZE): Likewise.
7218         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7219         (SVE_PT_SVE_PREG_SIZE): Likewise.
7220         (SVE_PT_SVE_FFR_SIZE): Likewise.
7221         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7222         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7223         (__SVE_SIG_TO_PT): Likewise.
7224         (SVE_PT_SVE_OFFSET): Likewise.
7225         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7226         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7227         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7228         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7229         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7230         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7231         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7232         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7233         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7234         (SVE_PT_SVE_SIZE): Likewise.
7235         (SVE_PT_SIZE): Likewise.
7236         (HAS_SVE_STATE): New define.
7237
7238 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7239
7240         * nat/aarch64-sve-linux-sigcontext.h: New file.
7241         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7242         new files.
7243         (SVE_VQ_MIN): Likewise.
7244         (SVE_VQ_MAX): Likewise.
7245         (SVE_VL_MIN): Likewise.
7246         (SVE_VL_MAX): Likewise.
7247         (SVE_NUM_ZREGS): Likewise.
7248         (SVE_NUM_PREGS): Likewise.
7249         (sve_vl_valid): Likewise.
7250         (struct user_sve_header): Likewise.
7251
7252 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7253             Richard Bunt <Richard.Bunt@arm.com>
7254
7255         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7256         was requested by GDB.
7257
7258 2018-06-15  Tom de Vries  <tdevries@suse.de>
7259
7260         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7261
7262 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7263
7264         * gnulib/update-gnulib.sh: Print expected versions of
7265         autoconf/aclocal.
7266
7267 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7268
7269         * arch-utils.c (default_type_align): Use type_length_units.
7270         * gdbtypes.c (type_align): Use type_length_units.
7271
7272 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7273
7274         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7275         of 'define' command.
7276
7277 2018-06-14  Tom de Vries  <tdevries@suse.de>
7278
7279         PR cli/22573
7280         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7281         get_no_prettyformat_print_options.
7282
7283 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7284
7285         * sparc-nat.h: Include target.h.
7286         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7287         <fetch_registers>: Remove this argument in function call.
7288         <store_registers>: Remove this argument in function call, remove
7289         extra semicolon.
7290         <low_forget_process>: Call sparc64_forget_process instead of
7291         sparc_forget_process.
7292
7293 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7294
7295         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7296         (procfs_target::make_corefile_notes): Adjust to new
7297         target_read_alloc return type.
7298
7299 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7300             Stephen Roberts  <stephen.roberts@arm.com>
7301
7302         PR gdb/22882
7303         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7304         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7305         Move should_notify_stop local into more inner scope.
7306
7307 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7308             Stephen Roberts  <stephen.roberts@arm.com>
7309
7310         PR gdb/22882
7311         * infrun.c (resume_1): Add call to mark_async_event_handler.
7312
7313 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7314
7315         * infrun.c (do_target_wait): Change old version of $pc printed.
7316
7317 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7318
7319         * dwarf2read.c (read_index_from_section): Rename to...
7320         (read_gdb_index_from_section): ... this, update all callers.
7321         (dwarf2_read_index): Rename to...
7322         (dwarf2_read_gdb_index): ... this, update all callers.
7323
7324 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7325
7326         * gdb/hppa-linux-nat.c
7327         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7328         hppa_linux_nat_target::fetch_registers.
7329
7330 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7331
7332         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7333         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7334         (AARCH64_DWARF_SVE_FFR): Likewise.
7335         (AARCH64_DWARF_SVE_P0): Likewise.
7336         (AARCH64_DWARF_SVE_Z0): Likewise.
7337
7338 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7339
7340         * common/common-regcache.h (raw_compare): New function.
7341         * regcache.c (regcache::raw_compare): Likewise.
7342         * regcache.h (regcache::raw_compare): New declaration.
7343
7344 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7345
7346         * common/common-regcache.h (reg_buffer_common): New structure.
7347         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7348         (reg_buffer::raw_supply): Likewise.
7349         (reg_buffer::raw_supply_integer): Likewise.
7350         (reg_buffer::raw_supply_zeroed): Likewise.
7351         (reg_buffer::raw_collect): Likewise.
7352         (reg_buffer::raw_collect_integer): Likewise.
7353         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7354         (reg_buffer::raw_supply): Likewise.
7355         (reg_buffer::raw_supply_integer): Likewise.
7356         (reg_buffer::raw_supply_zeroed): Likewise.
7357         (reg_buffer::raw_collect): Likewise.
7358         (reg_buffer::raw_collect_integer): Likewise.
7359
7360 2018-06-10  Tom Tromey  <tom@tromey.com>
7361
7362         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7363         (class remote_state) <stop_reply_queue>: Now std::vector.
7364         (remote_state::~remote_state)
7365         (remote_target::stop_reply_queue_length): Update.
7366         (struct queue_iter_param, remove_child_of_pending_fork)
7367         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7368         (check_pending_event_prevents_wildcard_vcont_callback)
7369         (remove_stop_reply_for_inferior)
7370         (remove_stop_reply_of_remote_state)
7371         (remote_notif_remove_once_on_match)
7372         (stop_reply_match_ptid_and_ws)
7373         (remote_kill_child_of_pending_fork): Remove.
7374         (remote_target::remove_new_fork_children)
7375         (remote_target::check_pending_events_prevent_wildcard_vcont)
7376         (remote_target::discard_pending_stop_replies)
7377         (remote_target::discard_pending_stop_replies_in_queue)
7378         (remote_target::remote_notif_remove_queued_reply)
7379         (remote_target::queued_stop_reply)
7380         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7381         (remote_target::wait, remote_target::kill_new_fork_children)
7382         (remote_target::async): Update.
7383
7384 2018-06-10  Tom Tromey  <tom@tromey.com>
7385
7386         * record-full.c (record_full_arch_list_cleanups): Remove.
7387         (record_full_message): Use try/catch.
7388         (record_full_wait_cleanups): Remove.
7389         (record_full_wait_1): Use try/catch.
7390         (record_full_restore): Likewise.
7391
7392 2018-06-10  Tom Tromey  <tom@tromey.com>
7393
7394         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7395         declare VEC.  Add constructor.
7396         <in_target_beneath>: Now bool.
7397         (record_full_breakpoints): Now a std::vector, static.
7398         (record_full_sync_record_breakpoints)
7399         (record_full_init_record_breakpoints)
7400         (record_full_target::insert_breakpoint)
7401         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7402
7403 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7404
7405         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7406         * serial.c (serial_interface_lookup): Remove struct keyword.
7407
7408 2018-06-10  Tom Tromey  <tom@tromey.com>
7409
7410         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7411         method.
7412         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7413         a method.
7414         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7415         method.
7416         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7417         "beneath" as a method.
7418         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7419         Use "beneath" as a method.
7420
7421 2018-06-10  Tom Tromey  <tom@tromey.com>
7422
7423         * tracefile.c (struct trace_file_writer_deleter): New.
7424         <operator()>: Rename from trace_file_writer_xfree.
7425         (trace_file_writer_up): New typedef.
7426         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7427
7428 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7429
7430         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7431         <m_registers, m_register_status>: Change type to
7432         std::unique_ptr.
7433         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7434         XCNEWVEC.
7435
7436 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7437
7438         * common/common-regcache.h (enum register_status): Add
7439         underlying type "signed char".
7440         * regcache.h (reg_buffer) <m_register_status>: Change type to
7441         register_status *.
7442         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7443         register_status instead of signed char.
7444         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7445         (reg_buffer::get_register_status): Remove cast.
7446         (readable_regcache::raw_read): Remove cast.
7447         (readable_regcache::cooked_read): Remove cast.
7448
7449 2018-06-09  Tom Tromey  <tom@tromey.com>
7450
7451         * source.c (reverse_search_command, forward_search_command): Use
7452         scoped_fd.
7453
7454 2018-06-09  Tom Tromey  <tom@tromey.com>
7455
7456         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7457         (serial_ops_list): Now static, std::vector.
7458         (serial_interface_lookup, serial_add_interface): Update.
7459
7460 2018-06-09  Tom Tromey  <tom@tromey.com>
7461
7462         * dwarf2read.c (process_cu_includes): Update.
7463         (process_full_comp_unit): Update.
7464         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7465         std::vector.
7466
7467 2018-06-08  Paul Koning  <paul_koning@dell.com>
7468
7469         PR gdb/23252
7470
7471         * python/python.c (do_start_initialization):
7472         Avoid call to internal Python API.
7473         (init__gdb_module): New function.
7474
7475 2018-06-08  Gary Benson <gbenson@redhat.com>
7476
7477         * linux-thread-db.c (valprint.h): New include.
7478         (struct check_thread_db_info): New structure.
7479         (check_thread_db_on_load, tdb_testinfo): New static globals.
7480         (check_thread_db, check_thread_db_callback): New functions.
7481         (try_thread_db_load_1): Run integrity checks if requested.
7482         (maintenance_check_libthread_db): New function.
7483         (_initialize_thread_db): Register "maint check libthread-db"
7484         and "maint set/show check-libthread-db".
7485         * NEWS: Mention the above new commands.
7486
7487 2018-06-08  Tom Tromey  <tom@tromey.com>
7488
7489         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7490         now a method.
7491
7492 2018-06-08  Tom Tromey  <tom@tromey.com>
7493
7494         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7495
7496 2018-06-08  Tom Tromey  <tom@tromey.com>
7497
7498         * common/btrace-common.h (struct btrace_data): Add constructor,
7499         destructor, move assignment operator.
7500         <empty, clear, fini>: New methods.
7501         <format>: Initialize.
7502         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7503         (btrace_data_empty): Don't declare.
7504         * common/btrace-common.c (btrace_data_init): Remove.
7505         (btrace_data::fini): Rename from btrace_data_fini.
7506         (btrace_data::empty): Rename from btrace_data_empty.
7507         (btrace_data::clear): Rename from btrace_data_clear.  Return
7508         bool.
7509         * btrace.h (make_cleanup_btrace_data): Don't declare.
7510         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7511         (parse_xml_btrace): Update.
7512         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7513         (maint_btrace_clear_packet_history_cmd): Update.
7514
7515 2018-06-07  Pedro Alves  <palves@redhat.com>
7516
7517         * target.h (target_ops) <beneath>: Now a method.  All references
7518         updated.
7519         (class target_stack): New.
7520         * target.c (g_target_stack): New.
7521         (g_current_top_target): Delete.
7522         (current_top_target): Get the top target out of g_target_stack.
7523         (target_stack::push, target_stack::unpush): New.
7524         (push_target, unpush_target): Reimplement.
7525         (target_is_pushed): Reimplement in terms of g_target_stack.
7526         (target_ops::beneath, target_stack::find_beneath): New.
7527
7528 2018-06-07  Pedro Alves  <palves@redhat.com>
7529
7530         * target.h (find_target_beneath): Delete declaration.
7531         * target.c (find_target_beneath): Delete definition.
7532         * aix-thread.c: All callers of find_target_beneath adjusted to
7533         call target_ops::beneath instead.
7534         * bsd-uthread.c: Likewise.
7535         * linux-thread-db.c: Likewise.
7536         * ravenscar-thread.c: Likewise.
7537         * sol-thread.c: Likewise.
7538         * spu-multiarch.c: Likewise.
7539
7540 2018-06-07  Pedro Alves  <palves@redhat.com>
7541
7542         * target.h (target_ops) <beneath>: Now a method.  All references
7543         updated.
7544         (target_ops) <m_beneath>: New.
7545         * target.c (target_ops::beneath): New.
7546         * corelow.c: Adjust all references to target_ops::beneath.
7547         * linux-thread-db.c: Likewise.
7548         * make-target-delegates: Likewise.
7549         * record-btrace.c: Likewise.
7550         * record-full.c: Likewise.
7551         * remote.c: Likewise.
7552         * target.c: Likewise.
7553         * target-delegates.c: Regenerate.
7554
7555 2018-06-07  Pedro Alves  <palves@redhat.com>
7556
7557         * target.h (target_stack): Delete.
7558         (current_top_target): Declare function.
7559         * target.c (target_stack): Delete.
7560         (g_current_top_target): New.
7561         (current_top_target): New function.
7562         * auxv.c: Use current_top_target instead of target_stack
7563         throughout.
7564         * avr-tdep.c: Likewise.
7565         * breakpoint.c: Likewise.
7566         * corefile.c: Likewise.
7567         * elfread.c: Likewise.
7568         * eval.c: Likewise.
7569         * exceptions.c: Likewise.
7570         * frame.c: Likewise.
7571         * gdbarch-selftests.c: Likewise.
7572         * gnu-v3-abi.c: Likewise.
7573         * ia64-tdep.c: Likewise.
7574         * ia64-vms-tdep.c: Likewise.
7575         * infcall.c: Likewise.
7576         * infcmd.c: Likewise.
7577         * infrun.c: Likewise.
7578         * linespec.c: Likewise.
7579         * linux-tdep.c: Likewise.
7580         * minsyms.c: Likewise.
7581         * ppc-linux-nat.c: Likewise.
7582         * ppc-linux-tdep.c: Likewise.
7583         * procfs.c: Likewise.
7584         * regcache.c: Likewise.
7585         * remote.c: Likewise.
7586         * rs6000-tdep.c: Likewise.
7587         * s390-linux-nat.c: Likewise.
7588         * s390-tdep.c: Likewise.
7589         * solib-aix.c: Likewise.
7590         * solib-darwin.c: Likewise.
7591         * solib-dsbt.c: Likewise.
7592         * solib-spu.c: Likewise.
7593         * solib-svr4.c: Likewise.
7594         * solib-target.c: Likewise.
7595         * sparc-tdep.c: Likewise.
7596         * sparc64-tdep.c: Likewise.
7597         * spu-tdep.c: Likewise.
7598         * symfile.c: Likewise.
7599         * symtab.c: Likewise.
7600         * target-descriptions.c: Likewise.
7601         * target-memory.c: Likewise.
7602         * target.c: Likewise.
7603         * target.h: Likewise.
7604         * tracefile-tfile.c: Likewise.
7605         * tracepoint.c: Likewise.
7606         * valops.c: Likewise.
7607         * valprint.c: Likewise.
7608         * value.c: Likewise.
7609         * windows-tdep.c: Likewise.
7610         * mi/mi-main.c: Likewise.
7611
7612 2018-06-07  Tom Tromey  <tom@tromey.com>
7613
7614         * valprint.h (build_address_symbolic): Declare.
7615         * printcmd.c (print_address_symbolic): Update.
7616         (build_address_symbolic): Change "name" and "filename" to
7617         std::string.
7618         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7619         Update.
7620         * defs.h (build_address_symbolic): Remove declaration.
7621
7622 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7623
7624         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7625         (aarch64_vnv_type): Add function.
7626         (aarch64_pseudo_register_name): Add V regs for SVE.
7627         (aarch64_pseudo_register_type): Likewise.
7628         (aarch64_pseudo_register_reggroup_p): Likewise.
7629         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7630         (aarch64_pseudo_read_value): Add V regs for SVE.
7631         (aarch64_pseudo_write_2): Use V0 offset for SVE
7632         (aarch64_pseudo_write): Add V regs for SVE.
7633         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7634
7635 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7636
7637         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7638         (sve_vl_from_vq): Likewise.
7639
7640 2018-06-05  Tom Tromey  <tom@tromey.com>
7641
7642         * cli/cli-cmds.c (show_version): Update.
7643         * top.c (print_gdb_version): Add "interactive" parameter.
7644         Update.
7645         * main.c (captured_main_1): Update.
7646         * top.h (print_gdb_version): Add "interactive" parameter and a
7647         comment.
7648
7649 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7650
7651         * common/enum-flags.h: Add trailing semicolon to example in
7652         comment.
7653
7654 2018-06-05  Tom Tromey  <tom@tromey.com>
7655
7656         PR cli/12326:
7657         * NEWS: Add entry about pager.
7658         * utils.c (pagination_disabled_for_command): New global.
7659         (prompt_for_continue): Allow "c" response to prompt.
7660         (reinitialize_more_filter): Clear
7661         pagination_disabled_for_command.
7662         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7663
7664 2018-06-04  Tom Tromey  <tom@tromey.com>
7665
7666         * ada-lang.h (ada_lookup_symbol_list): Update.
7667         * ada-lang.c (resolve_subexp): Update.
7668         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7669         parameter.
7670         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7671         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7672         results parameter to std::vector.
7673         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7674         Update.
7675         * ada-exp.y (block_lookup): Update.
7676         (select_possible_type_sym): Change type of syms.  Remove nsyms
7677         parameter.
7678         (write_var_or_type, write_name_assoc): Update.
7679
7680 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7681
7682         * windows-nat.c (windows_nat_target::xfer_partial): Return
7683         TARGET_XFER_E_IO if we need to delegate to the target beneath
7684         but BENEATH is NULL.
7685
7686 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7687
7688         * Makefile.in (config.status): Add configure.nat as a
7689         dependency.
7690
7691 2018-06-04  Tom Tromey  <tom@tromey.com>
7692
7693         * cp-name-parser.y (cpname_state): Add method declarations.
7694         (HANDLE_QUAL): Update.
7695         (cpname_state::d_grab, cpname_state::fill_comp)
7696         (cpname_state::make_operator, cpname_state::make_dtor)
7697         (cpname_state::make_builtin_type, cpname_state::make_name)
7698         (cpname_state::d_qualify, cpname_state::d_int_type)
7699         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7700         (%union): Move earlier.
7701
7702 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7703
7704         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7705
7706 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7707
7708         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7709         (aarch64_pseudo_write_1): Likewise.
7710         (aarch64_pseudo_read_value): Use helper.
7711         (aarch64_pseudo_write): Likewise.
7712
7713 2018-06-04  Pedro Alves  <palves@redhat.com>
7714
7715         * darwin-nat.c (darwin_ops): Delete.
7716         (darwin_attach_pid): Use get_native_target.
7717
7718 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7719
7720         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7721         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7722
7723 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7724
7725         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7726         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7727         (aarch64_gdbarch_init): Check for SVE.
7728         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7729
7730 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7731
7732         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7733         * aarch64-tdep.h (aarch64_read_description): Likewise.
7734         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7735         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7736         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7737         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7738         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7739
7740 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7741
7742         * value.c (value_fetch_lazy_bitfield): New.
7743         (value_fetch_lazy_memory): New.
7744         (value_fetch_lazy_register): New.
7745         (value_fetch_lazy): Factor out to smaller functions.
7746
7747 2018-06-01  Tom Tromey  <tom@tromey.com>
7748
7749         * cp-name-parser.y (backslashable, represented): Now const.
7750
7751 2018-06-01  Tom Tromey  <tom@tromey.com>
7752
7753         * cp-name-parser.y: Include parser-defs.h.
7754         (parser_fprintf): Remove declaration.
7755
7756 2018-06-01  Tom Tromey  <tom@tromey.com>
7757
7758         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7759         %parse-param.
7760         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7761         (global_result): Remove globals.
7762         (struct cpname_state): New.
7763         (yyparse): Don't declare.
7764         (yylex, yyerror): Move declarations after %union.
7765         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7766         (make_name): Add state parameter.
7767         Update all callers.
7768         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7769         parameter.
7770         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7771         Update.
7772         (yylex): Add lvalp, state parameters.
7773         (yyerror): Add state parameter.
7774         (cp_demangled_name_to_comp): Update.
7775
7776 2018-06-01  Tom Tromey  <tom@tromey.com>
7777
7778         * cp-name-parser.y (parser_fprintf): Declare.
7779         (GDB_YY_REMAP_PREFIX): Define.
7780         Include yy-remap.h.  Don't redefine yy* identifiers.
7781
7782 2018-06-01  Tom Tromey  <tom@tromey.com>
7783
7784         * python/py-type.c (typy_legacy_template_argument): Update.
7785         * cp-support.h (cp_demangled_name_to_comp): Update.
7786         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7787         parameter to be a "std::string *".
7788         (main): Update.
7789
7790 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7791
7792         * ada-lex.l: Include "diagnostics.h" instead of
7793         "common/diagnostics.h".
7794         * unittests/environ-selftests.c: Likewise.
7795         * common/diagnostics.h: Moved to ../include.
7796
7797 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7798
7799         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7800         to language_mode_manual while calling breakpoint_re_set_one.
7801
7802 2018-06-01  Tom Tromey  <tom@tromey.com>
7803
7804         * valops.c (value_cast_structs, destructor_name_p): Update.
7805         * symtab.c (gdb_mangle_name): Update.
7806         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7807         Update.
7808         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7809         (pascal_object_print_value_fields, pascal_object_print_value):
7810         Update.
7811         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7812         * linespec.c (find_methods): Update.
7813         * gdbtypes.h (type_name_no_tag): Remove.
7814         (type_name_or_error): Rename from type_name_no_tag_or_error.
7815         * gdbtypes.c (type_name_no_tag): Remove.
7816         (type_name_or_error): Rename from type_name_no_tag_or_error.
7817         (lookup_struct_elt_type, check_typedef): Update.
7818         * expprint.c (print_subexp_standard): Update.
7819         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7820         * d-namespace.c (d_lookup_nested_symbol): Update.
7821         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7822         (cp_print_class_member): Update.
7823         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7824         * completer.c (add_struct_fields): Update.
7825         * c-typeprint.c (cp_type_print_derivation_info)
7826         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7827         Update.
7828         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7829         (ada_prefer_type, ada_is_exception_sym): Update.
7830
7831 2018-06-01  Tom Tromey  <tom@tromey.com>
7832
7833         * valops.c (enum_constant_from_type, value_namespace_elt)
7834         (value_maybe_namespace_elt): Update.
7835         * valarith.c (find_size_for_pointer_math): Update.
7836         * target-descriptions.c (make_gdb_type): Update.
7837         * symmisc.c (print_symbol): Update.
7838         * stabsread.c (define_symbol, read_type)
7839         (complain_about_struct_wipeout, add_undefined_type)
7840         (cleanup_undefined_types_1): Update.
7841         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7842         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7843         (rust_internal_print_type, rust_composite_type)
7844         (rust_evaluate_funcall, rust_evaluate_subexp)
7845         (rust_inclusive_range_type_p): Update.
7846         * python/py-type.c (typy_get_tag): Update.
7847         * p-typeprint.c (pascal_type_print_base): Update.
7848         * mdebugread.c (parse_symbol, parse_type): Update.
7849         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7850         Update.
7851         * guile/scm-type.c (gdbscm_type_tag): Update.
7852         * go-lang.c (sixg_string_p): Update.
7853         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7854         Update.
7855         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7856         (TYPE_TAG_NAME): Remove.
7857         * gdbtypes.c (type_name_no_tag): Simplify.
7858         (check_typedef, check_types_equal, recursive_dump_type)
7859         (copy_type_recursive, arch_composite_type): Update.
7860         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7861         in summary mode when needed.
7862         * eval.c (evaluate_funcall): Update.
7863         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7864         (process_structure_scope, read_enumeration_type)
7865         (read_namespace_type, read_module_type, determine_prefix): Update.
7866         * cp-support.c (inspect_type): Update.
7867         * coffread.c (process_coff_symbol, decode_base_type): Update.
7868         * c-varobj.c (c_is_path_expr_parent): Update.
7869         * c-typeprint.c (c_type_print_base_struct_union): Update.
7870         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7871         summary when using C language.
7872         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7873         (gen_maybe_namespace_elt): Update.
7874         * ada-lang.c (ada_type_name): Simplify.
7875         (empty_record, ada_template_to_fixed_record_type_1)
7876         (template_to_static_fixed_type)
7877         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7878
7879 2018-06-01  Tom Tromey  <tom@tromey.com>
7880
7881         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7882         c_print_type.
7883         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7884         (c_print_type): Update.
7885         (c_print_type): New overload.
7886         (c_type_print_varspec_prefix, c_type_print_args)
7887         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7888         (c_type_print_base_struct_union, c_type_print_base_1)
7889         (cp_type_print_method_args): Add "language" parameter.
7890         (c_type_print_base): Update.
7891         * c-lang.h (c_print_type): Add new overload.
7892
7893 2018-06-01  Tom Tromey  <tom@tromey.com>
7894
7895         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7896         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7897
7898 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7899
7900         * aarch64-tdep.c (aarch64_sve_register_names): New const
7901         var.
7902         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7903         (AARCH64_SVE_Z_REGS_NUM): New define.
7904         (AARCH64_SVE_P_REGS_NUM): Likewise.
7905         (AARCH64_SVE_NUM_REGS): Likewise.
7906
7907 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7908
7909         * nat/linux-ptrace.h [__alpha__]
7910         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7911         definitions.
7912
7913 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7914
7915         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7916         the endianness selected.
7917         * NEWS: Document `set endian auto' mode operation update.
7918
7919 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7920
7921         * Makefile.in: Add new header.
7922         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7923         (sve_vl_from_vg): Likewise.
7924         (sve_vq_from_vl): Likewise.
7925         (sve_vl_from_vq): Likewise.
7926         (sve_vq_from_vg): Likewise.
7927         (sve_vg_from_vq): Likewise.
7928         * configure.nat: Add new c file.
7929         * nat/aarch64-sve-linux-ptrace.c: New file.
7930         * nat/aarch64-sve-linux-ptrace.h: New file.
7931
7932 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7933
7934         * aarch64-linux-nat.c (aarch64_linux_read_description):
7935         Add parmeter zero.
7936         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7937         Likewise.
7938         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7939         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7940         (aarch64_gdbarch_init): Add parmeter zero.
7941         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7942         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7943         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7944         parmeter.
7945         * doc/gdb.texinfo: Describe SVE feature
7946         * features/aarch64-sve.c: New file.
7947
7948 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7949
7950         PR gdb/23210
7951         * gdbarch.sh (significant_addr_bit): Default to zero when
7952         not set by target architecture.
7953         * gdbarch.c: Re-generated.
7954         * utils.c (address_significant): Update.
7955
7956 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7957
7958         * stack.c (func_command): Remove trailing newline in call to error.
7959
7960 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7961
7962         * regcache.h (regcache_raw_collect): Remove, update callers to
7963         use regcache::raw_collect.
7964         * regcache.c (regcache_raw_collect): Remove.
7965
7966 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7967
7968         * regcache.h (regcache_raw_supply): Remove, update callers to
7969         use detached_regcache::raw_supply.
7970         * regcache.c (regcache_raw_supply): Remove.
7971
7972 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7973
7974         * regcache.h (regcache_cooked_write_part): Remove, update
7975         callers to use regcache::cooked_write_part.
7976         * regcache.c (regcache_cooked_write_part): Remove.
7977
7978 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7979
7980         * regcache.h (regcache_cooked_read_part): Remove, update callers
7981         to use readable_regcache::cooked_read_part.
7982         * regcache.c (regcache_cooked_read_part): Remove.
7983
7984 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7985
7986         * regcache.h (regcache_cooked_read_value): Remove, update
7987         callers to use readable_regcache::cooked_read_value.
7988         * regcache.c (regcache_cooked_read_value): Remove.
7989
7990 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7991
7992         * regcache.h (regcache_cooked_write): Remove, update callers to
7993         use regcache::cooked_write.
7994         * regcache.c (regcache_cooked_write): Remove.
7995
7996 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7997
7998         * regcache.h (regcache_invalidate): Remove, update callers to
7999         use detached_regcache::invalidate instead.
8000         * regcache.c (regcache_invalidate): Remove.
8001
8002 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8003
8004         * regcache.h (regcache_raw_write_part): Remove, update callers
8005         to use regcache::raw_write_part instead.
8006         * regcache.c (regcache_raw_write_part): Remove.
8007
8008 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8009
8010         * regcache.h (regcache_raw_read_part): Remove, update callers to
8011         use readable_regcache::raw_read_part instead.
8012         * regcache.c (regcache_raw_read_part): Remove.
8013
8014 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8015
8016         * regcache.h (regcache_cooked_read): Remove, update callers to
8017         use readable_regcache::cooked_read instead.
8018         * regcache.c (regcache_cooked_read): Remove.
8019
8020 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8021
8022         * regcache.h (regcache_raw_write): Remove, update callers to use
8023         regcache::raw_write instead.
8024         * regcache.c (regcache_raw_write): Remove.
8025
8026 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8027
8028         * regcache.h (regcache_raw_read): Remove, update callers to use
8029         readable_regcache::raw_read instead.
8030         * regcache.c (regcache_raw_read): Remove.
8031
8032 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8033
8034         * regcache.h (regcache_raw_update): Remove, update callers to
8035         use readable_regcache::raw_update instead.
8036         * regcache.c (regcache_raw_update): Remove.
8037
8038 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8039
8040         * regcache.h (regcache_register_status): Remove, update callers
8041         to use reg_buffer::get_register_status directly instead.
8042         * regcache.c (regcache_register_status): Remove.
8043
8044 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8045
8046         * regcache.h (regcache_get_ptid): Remove, update all callers to
8047         call regcache::ptid instead.
8048         * regcache.c (regcache_get_ptid): Remove.
8049
8050 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8051
8052         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8053
8054 2018-05-30  Pedro Alves  <palves@redhat.com>
8055
8056         * common/common-exceptions.h (exception_rethrow): Use
8057         ATTRIBUTE_NORETURN.
8058
8059 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8060
8061         * breakpoint.c (print_solib_event, check_status_catch_solib):
8062         Remove struct keyword in range-based for loops.
8063         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8064         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8065         Likewise.
8066         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8067         Likewise.
8068         * symfile.c (addr_info_make_relative): Likewise.
8069         * thread.c (value_in_thread_stack_temporaries): Likewise.
8070
8071 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8072
8073         PR gdb/16841
8074         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8075         aggregate type to get its real type before accessing it.
8076
8077 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8078
8079         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8080         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8081         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8082         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8083         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8084         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8085         * printcmd.c (info_address_command): Likewise.
8086
8087 2018-05-29  Tom Tromey  <tom@tromey.com>
8088
8089         * windows-nat.c (handle_exception): Update fall-through comment.
8090
8091 2018-05-29  Tom Tromey  <tom@tromey.com>
8092
8093         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8094         (struct program_space) <added_solibs>: Now a std::vector.
8095         * breakpoint.c (print_solib_event): Update.
8096         (check_status_catch_solib): Update.
8097         * progspace.c (clear_program_space_solib_cache): Update.
8098         * solib.c (update_solib_list): Update.
8099
8100 2018-05-29  Tom Tromey  <tom@tromey.com>
8101
8102         * python/py-type.c (typy_richcompare): Update.
8103         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8104         * gdbtypes.h (types_deeply_equal): Return bool.
8105         (types_equal): Likewise.
8106         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8107         declare VEC.
8108         (check_types_equal): Change worklist to std::vector.  Return
8109         bool.
8110         (struct type_equality_entry): Add constructor.
8111         (compare_maybe_null_strings): Return bool.
8112         (check_types_worklist): Return bool.  Change worklist to
8113         std::vector.
8114         (types_deeply_equal): Use std::vector.
8115         (types_equal): Return bool.
8116         (compare_maybe_null_strings): Simplify.
8117
8118 2018-05-29  Tom Tromey  <tom@tromey.com>
8119
8120         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8121
8122 2018-05-29  Tom Tromey  <tom@tromey.com>
8123
8124         * objc-lang.h: Don't include cp-support.h.
8125         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8126         declare VEC.
8127
8128 2018-05-27  Tom Tromey  <tom@tromey.com>
8129
8130         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8131
8132 2018-05-25  Tom Tromey  <tom@tromey.com>
8133
8134         * value.c (value::location): Initialize.
8135
8136 2018-05-25  Tom Tromey  <tom@tromey.com>
8137
8138         * dbxread.c (init_bincl_list): Remove.
8139         (bincl_list): Now a std::vector.
8140         (bincls_allocated, next_bincl): Remove.
8141         (free_bincl_list, do_free_bincl_list_cleanup)
8142         (make_cleanup_free_bincl_list): Remove.
8143         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8144         unique_xmalloc_ptr.
8145         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8146         (struct header_file_location): Add constructor.
8147         (add_bincl_to_list): Remove.
8148
8149 2018-05-25  Tom Tromey  <tom@tromey.com>
8150
8151         * tui/tui.c (tui_enable): Update.
8152         * mi/mi-interp.c (mi_interp::init): Update.
8153         * interps.h (class interp) <name>: New method.
8154         <m_name>: Rename from name.
8155         (~scoped_restore_interp): Update.
8156         * interps.c (interp::interp): Update.
8157         (interp_add, interp_set, interp_lookup_existing)
8158         (current_interp_named_p): Update.
8159
8160 2018-05-25  Tom Tromey  <tom@tromey.com>
8161
8162         * interps.c (interp_name): Remove.
8163         * mi/mi-interp.c (mi_interp::init): Update.
8164         * interps.h (interp_name): Remove.
8165         (~scoped_restore_interp): Update.
8166         * tui/tui.c (tui_enable): Update.
8167
8168 2018-05-25  Tom Tromey  <tom@tromey.com>
8169
8170         * utils.c (fputs_maybe_filtered): Update.
8171         * linespec.c (decode_line_full): Update.
8172         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8173         (mi_print_breakpoint_for_event, mi_solib_loaded)
8174         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8175         (mi_user_selected_context_changed): Update.
8176         * mi/mi-main.c (mi_execute_command): Update.
8177         * cli/cli-script.c (execute_control_command): Update.
8178         * python/python.c (execute_gdb_command): Update.
8179         * solib.c (info_sharedlibrary_command): Update.
8180         * interps.c (interp_ui_out): Remove.
8181         * interps.h (interp_ui_out): Remove.
8182
8183 2018-05-25  Tom Tromey  <tom@tromey.com>
8184
8185         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8186         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8187         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8188
8189 2018-05-25  Tom Tromey  <tom@tromey.com>
8190
8191         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8192         * interps.c (interp_exec): Use scoped_restore.
8193
8194 2018-05-25  Tom Tromey  <tom@tromey.com>
8195
8196         * remote.c (remote_target::remote_file_get): Use
8197         gdb::byte_vector.
8198         (remote_target::remote_file_put): Likewise.
8199
8200 2018-05-25  Tom Tromey  <tom@tromey.com>
8201
8202         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8203         a std::string.
8204         (get_pe_section_index, add_pe_exported_sym): Update.
8205         (read_pe_exported_syms): Use gdb::def_vector.
8206
8207 2018-05-25  Tom Tromey  <tom@tromey.com>
8208
8209         * frame.c (remove_prev_frame): Remove.
8210         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8211
8212 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8213
8214         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8215         Remove prototypes.
8216         * mips-linux-nat.c (supply_fpregset): Always call
8217         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8218         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8219         `mips_fill_fpregset'.
8220         * mips-linux-tdep.c (mips_supply_fpregset)
8221         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8222         (mips_fill_fpregset_wrapper): Remove functions.
8223         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8224         (mips_linux_fpregset): Remove variable.
8225         (mips_linux_iterate_over_regset_sections): Use
8226         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8227         (mips_linux_o32_sigframe_init): Remove comment.
8228
8229 2018-05-25  Pedro Alves  <palves@redhat.com>
8230
8231         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8232         (struct readahead_cache, struct packet_reg, struct
8233         remote_arch_state, class remote_state): Move higher up in the
8234         file.
8235         (remote_target::m_remote_state): Now an object instead of a pointer.
8236         (remote_target::get_remote_state): Adjust.
8237
8238 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8239
8240         * stack.c (select_and_print_frame): Delete.
8241         (struct function_bounds): Move struct within function.
8242         (func_command): Most content moved into new function
8243         find_frame_for_function, use new function, print result, add
8244         function comment.
8245         (find_frame_for_function): New function, now returns a result.
8246
8247 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8248
8249         * stack.c (iterate_over_block_arg_vars): Fix comment.
8250         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8251
8252 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8253
8254         PR gdb/23203
8255         * frame.c
8256         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8257         Define.
8258         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8259         Define.
8260         * frame.h (class scoped_restore_selected_frame): New class.
8261         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8262         of any exception, use scoped_restore_selected_frame to restore the
8263         frame instead.
8264
8265 2018-05-24  Pedro Alves  <palves@redhat.com>
8266
8267         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8268         override.
8269
8270 2018-05-23  Tom Tromey  <tom@tromey.com>
8271
8272         * complaints.c (struct complaints): Remove.
8273         (symfile_complaint_book): Remove.
8274         (series): New global.
8275         (complaint_internal): Update.
8276         (clear_complaints): Update.
8277
8278 2018-05-23  Tom Tromey  <tom@tromey.com>
8279
8280         * complaints.c (counters): New global.
8281         (struct complain): Remove.
8282         (struct complaints) <root>: Remove.
8283         (complaint_sentinel): Remove.
8284         (symfile_complaint_book): Update.
8285         (find_complaint) Remove.
8286         (complaint_internal, clear_complaints): Update.
8287
8288 2018-05-23  Tom Tromey  <tom@tromey.com>
8289
8290         * complaints.c (struct complain) <file, line>: Remove.
8291         (find_complaint): Remove file, line parameters.
8292         (complaint_internal): Update.
8293
8294 2018-05-23  Tom Tromey  <tom@tromey.com>
8295
8296         * complaints.c (vcomplaint): Remove.
8297         (complaint_internal) Merge in contents of vcomplaint.
8298
8299 2018-05-23  Tom Tromey  <tom@tromey.com>
8300
8301         * complaints.c (struct complaints) <explanation>: Remove.
8302         (symfile_explanations): Remove.
8303         (symfile_complaint_book): Update.
8304         (vcomplaint): Update.
8305         (struct explanation): Remove.
8306
8307 2018-05-23  Tom Tromey  <tom@tromey.com>
8308
8309         * complaints.c (symfile_complaints): Remove.
8310         (complaint_internal): Remove "complaints" parameter.
8311         (clear_complaints, vcomplaint): Remove "c" parameter.
8312         (get_complaints): Remove.
8313         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8314         (dwarf2_debug_line_missing_file_complaint)
8315         (dwarf2_debug_line_missing_end_sequence_complaint)
8316         (dwarf2_complex_location_expr_complaint)
8317         (dwarf2_const_value_length_mismatch_complaint)
8318         (dwarf2_section_buffer_overflow_complaint)
8319         (dwarf2_macro_malformed_definition_complaint)
8320         (dwarf2_invalid_attrib_class_complaint)
8321         (create_addrmap_from_index, dw2_symtab_iter_next)
8322         (dw2_expand_marked_cus)
8323         (dw2_debug_names_iterator::find_vec_in_debug_names)
8324         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8325         (create_debug_type_hash_table, init_cutu_and_read_dies)
8326         (partial_die_parent_scope, add_partial_enumeration)
8327         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8328         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8329         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8330         (create_cus_hash_table, create_dwp_hash_table)
8331         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8332         (dwarf2_rnglists_process, dwarf2_ranges_process)
8333         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8334         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8335         (handle_struct_member_die, process_structure_scope)
8336         (read_array_type, read_common_block, read_module_type)
8337         (read_tag_pointer_type, read_typedef, read_base_type)
8338         (read_subrange_type, load_partial_dies, partial_die_info::read)
8339         (partial_die_info::read, partial_die_info::read)
8340         (partial_die_info::read, read_checked_initial_length_and_offset)
8341         (dwarf2_string_attr, read_formatted_entries)
8342         (dwarf_decode_line_header)
8343         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8344         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8345         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8346         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8347         (get_signatured_type, get_DW_AT_signature_type)
8348         (decode_locdesc, file_file_name, consume_improper_spaces)
8349         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8350         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8351         (dwarf2_symbol_mark_computed, set_die_type)
8352         (read_attribute_value): Update.
8353         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8354         Update.
8355         * dbxread.c (unknown_symtype_complaint)
8356         (lbrac_mismatch_complaint, repeated_header_complaint)
8357         (set_namestring, function_outside_compilation_unit_complaint)
8358         (read_dbx_symtab, process_one_symbol): Update.
8359         * gdbtypes.c (stub_noname_complaint): Update.
8360         * windows-nat.c (handle_unload_dll): Update.
8361         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8362         (decode_base_type): Update.
8363         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8364         (eb_complaint, record_include_begin, record_include_end)
8365         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8366         (process_xcoff_symbol, read_symbol)
8367         (function_outside_compilation_unit_complaint)
8368         (scan_xcoff_symtab): Update.
8369         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8370         * buildsym.c (finish_block_internal, make_blockvector)
8371         (end_symtab_get_static_block, augment_type_symtab): Update.
8372         * dtrace-probe.c (dtrace_process_dof)
8373         (dtrace_static_probe_ops::get_probes): Update.
8374         * complaints.h (struct complaint): Don't declare.
8375         (symfile_complaints): Remove.
8376         (complaint_internal): Remove "complaints" parameter.
8377         (complaint): Likewise.
8378         (clear_complaints): Likewise.
8379         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8380         (reread_symbols): Update.
8381         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8382         (dwarf2_frame_cache, decode_frame_entry): Update.
8383         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8384         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8385         (info_selectors_command): Update.
8386         * macrotab.c (macro_include, check_for_redefinition)
8387         (macro_undef): Update.
8388         * objfiles.c (filter_overlapping_sections): Update.
8389         * stabsread.c (invalid_cpp_abbrev_complaint)
8390         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8391         (define_symbol, error_type, read_type, rs6000_builtin_type)
8392         (stabs_method_name_from_physname, read_member_functions)
8393         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8394         (attach_fields_to_type, complain_about_struct_wipeout)
8395         (read_range_type, read_args, common_block_start)
8396         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8397         Update.
8398         * mdebugread.c (index_complaint, unknown_ext_complaint)
8399         (basic_type_complaint, bad_tag_guess_complaint)
8400         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8401         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8402         (parse_procedure, parse_lines)
8403         (function_outside_compilation_unit_complaint)
8404         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8405         (bad_tag_guess_complaint, reg_value_complaint): Update.
8406         * cp-support.c (demangled_name_complaint): Update.
8407         * macroscope.c (sal_macro_scope): Update.
8408         * dwarf-index-write.c (class debug_names): Update.
8409
8410 2018-05-23  Tom Tromey  <tom@tromey.com>
8411
8412         * complaints.c (clear_complaints): Remove "noisy" parameter.
8413         * complaints.h (clear_complaints): Update.
8414         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8415         (reread_symbols): Update.
8416
8417 2018-05-23  Tom Tromey  <tom@tromey.com>
8418
8419         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8420         SUBSEQUENT_MESSAGE.
8421         (vcomplaint, clear_complaints): Update.
8422         (symfile_explanations): Remove some messages.
8423
8424 2018-05-23  Tom Tromey  <tom@tromey.com>
8425
8426         * complaints.c (internal_complaint): Remove.
8427         * complaints.h (internal_complaint): Remove.
8428
8429 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8430
8431         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8432
8433 2018-05-22  Pedro Alves  <palves@redhat.com>
8434
8435         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8436         (remote_fileio_badfd, remote_fileio_return_errno)
8437         (remote_fileio_return_success, remote_fileio_func_open)
8438         (remote_fileio_func_open, remote_fileio_func_close)
8439         (remote_fileio_func_read, remote_fileio_func_write)
8440         (remote_fileio_func_lseek, remote_fileio_func_rename)
8441         (remote_fileio_func_unlink, remote_fileio_func_stat)
8442         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8443         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8444         remote_target parameter.
8445         (remote_fio_func_map) <func>: Add remote_target parameter.
8446         (do_remote_fileio_request, remote_fileio_request):
8447         * remote-fileio.h (remote_fileio_request):
8448         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8449         remote_target parameter.
8450         (remote_notif_process, handle_notification): Adjust to pass down
8451         the remote.
8452         (remote_notif_state_allocate): Add remote_target parameter.  Save
8453         it.
8454         * remote-notif.h (struct remote_target): Forward declare.
8455         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8456         remote_target parameter.
8457         (struct remote_notif_state) <remote>: New field.
8458         (remote_notif_ack, remote_notif_parse): Add remote_target
8459         parameter.
8460         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8461         remote_target parameter.
8462         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8463         (threads_listing_context, rmt_thread_action, protocol_feature)
8464         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8465         (packet_result, struct threads_listing_context, remote_state):
8466         Move definitions and declarations higher up.
8467         (remote_target) <~remote_target>: Declare.
8468         (remote_download_command_source, remote_file_put, remote_file_get)
8469         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8470         (remote_hostio_pread_vFile, remote_hostio_send_command)
8471         (remote_hostio_set_filesystem, remote_hostio_open)
8472         (remote_hostio_close, remote_hostio_unlink, remote_state)
8473         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8474         (get_memory_write_packet_size, get_memory_read_packet_size)
8475         (append_pending_thread_resumptions, remote_detach_1)
8476         (append_resumption, remote_resume_with_vcont)
8477         (add_current_inferior_and_thread, wait_ns, wait_as)
8478         (process_stop_reply, remote_notice_new_inferior)
8479         (process_initial_stop_replies, remote_add_thread)
8480         (btrace_sync_conf, remote_btrace_maybe_reopen)
8481         (remove_new_fork_children, kill_new_fork_children)
8482         (discard_pending_stop_replies, stop_reply_queue_length)
8483         (check_pending_events_prevent_wildcard_vcont)
8484         (discard_pending_stop_replies_in_queue, stop_reply)
8485         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8486         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8487         (remote_interrupt_as, remote_interrupt_ns)
8488         (remote_get_noisy_reply, remote_query_attached)
8489         (remote_add_inferior, remote_current_thread, get_current_thread)
8490         (set_thread, set_general_thread, set_continue_thread)
8491         (set_general_process, write_ptid)
8492         (remote_unpack_thread_info_response, remote_get_threadinfo)
8493         (parse_threadlist_response, remote_get_threadlist)
8494         (remote_threadlist_iterator, remote_get_threads_with_ql)
8495         (remote_get_threads_with_qxfer)
8496         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8497         (get_offsets, remote_check_symbols, remote_supported_packet)
8498         (remote_query_supported, remote_packet_size)
8499         (remote_serial_quit_handler, remote_detach_pid)
8500         (remote_vcont_probe, remote_resume_with_hc)
8501         (send_interrupt_sequence, interrupt_query)
8502         (remote_notif_get_pending_events, fetch_register_using_p)
8503         (send_g_packet, process_g_packet, fetch_registers_using_g)
8504         (store_register_using_P, store_registers_using_G)
8505         (set_remote_traceframe, check_binary_download)
8506         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8507         (remote_xfer_live_readonly_partial, remote_read_bytes)
8508         (remote_send_printf, remote_flash_write, readchar)
8509         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8510         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8511         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8512         (extended_remote_disable_randomization, extended_remote_run)
8513         (send_environment_packet, extended_remote_environment_support)
8514         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8515         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8516         (packet_command): Now methods of ...
8517         (remote_target): ... this class.
8518         (m_remote_state) <remote_target>: New field.
8519         (struct remote_state) <stop_reply_queue,
8520         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8521         fields.
8522         (remote_state::remote_state): Allocate stop_reply_queue.
8523         (remote_state): Delete global.
8524         (get_remote_state_raw): Delete.
8525         (remote_target::get_remote_state): Allocate m_remote_state on
8526         demand.
8527         (get_current_remote_target): New.
8528         (remote_ops, extended_remote_ops): Delete.
8529         (wait_forever_enabled_p, remote_async_inferior_event_token):
8530         Delete, moved to struct remote_state.
8531         (remote_target::close): Delete self.  Destruction bits split to
8532         ...
8533         (remote_target::~remote_target): ... this.
8534         (show_memory_packet_size): Adjust to use
8535         get_current_remote_target.
8536         (struct protocol_feature) <func>: Add remote_target parameter.
8537         All callers adjusted.
8538         (curr_quit_handler_target): New.
8539         (remote_serial_quit_handler): Reimplement.
8540         (remote_target::open_1): Adjust to use get_current_remote_target.
8541         Heap-allocate remote_target/extended_remote_target instances.
8542         (vcont_builder::vcont_builder): Add remote_target parameter, and
8543         save it in m_remote.  All callers adjusted.
8544         (vcont_builder::m_remote): New field.
8545         (vcont_builder::restart, vcont_builder::flush)
8546         (vcont_builder::push_action): Use it.
8547         (remote_target::commit_resume): Use it.
8548         (struct queue_iter_param) <remote>: New field.
8549         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8550         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8551         (check_pending_event_prevents_wildcard_vcont_callback)
8552         (remote_target::check_pending_events_prevent_wildcard_vcont)
8553         (remote_target::discard_pending_stop_replies)
8554         (remote_target::discard_pending_stop_replies_in_queue)
8555         (remote_target::remote_notif_remove_queued_reply): Fill in
8556         'remote' field.
8557         (remote_notif_get_pending_events): New.
8558         (remote_target::readchar, remote_target::remote_serial_write):
8559         Save/restore curr_quit_handler_target.
8560         (putpkt): New.
8561         (kill_new_fork_children): Fill in 'remote' field.
8562         (packet_command): Use get_current_remote_target, defer to
8563         remote_target method of same name.
8564         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8565         parameter, and save it in m_remote.  All callers adjusted.
8566         (scoped_remote_fd::release): Use m_remote.
8567         (scoped_remote_fd::m_remote): New field.
8568         (remote_file_put, remote_file_get, remote_file_delete): Use
8569         get_current_remote_target, defer to remote_target method of same
8570         name.
8571         (remote_btrace_reset): Add remote_state paremeter.  Update all
8572         callers.
8573         (remote_async_inferior_event_handler). Pass down 'data'.
8574         (remote_new_objfile): Use get_current_remote_target.
8575         (remote_target::vcont_r_supported): New.
8576         (set_range_stepping): Use get_current_remote_target and
8577         remote_target::vcont_r_supported.
8578         (_initialize_remote): Don't allocate 'remote_state' and
8579         'stop_reply_queue' globals.
8580         * remote.h (struct remote_target): Forward declare.
8581         (getpkt, putpkt, remote_notif_get_pending_events): Add
8582         'remote_target' parameter.
8583
8584 2018-05-22  Pedro Alves  <palves@redhat.com>
8585
8586         * remote.c (vcont_builder): Now a class.  Make all data members
8587         private.
8588         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8589         Declare methods.
8590         (vcont_builder_restart): Rename to ...
8591         (vcont_builder::restart): ... this.
8592         (vcont_builder_flush): Rename to ...
8593         (vcont_builder::flush): ... this.
8594         (vcont_builder_push_action): Rename to ...
8595         (vcont_builder::push_action): ... this.
8596         (remote_target::commit_resume): Adjust.
8597
8598 2018-05-22  Pedro Alves  <palves@redhat.com>
8599
8600         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8601         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8602         (get_fixed_memory_packet_size): New.
8603         (get_memory_packet_size): Use it.
8604         (set_memory_packet_size): Don't override the config size with
8605         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8606         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8607         Don't refer to get_memory_packet_size if not connected to a remote
8608         target.  Show "(default)" if configured size is 0.
8609
8610 2018-05-22  Pedro Alves  <palves@redhat.com>
8611
8612         * remote.c (remote_target::mourn_inferior): Move
8613         discard_pending_stop_replies call here from ...
8614         (_initialize_remote): ... here.
8615
8616 2018-05-22  Pedro Alves  <palves@redhat.com>
8617
8618         * remote.c (compare_section_command): Remove set_general_process
8619         call.
8620
8621 2018-05-22  Pedro Alves  <palves@redhat.com>
8622
8623         * remote.c (struct packet_reg, struct remote_arch_state):
8624         Move higher up in the file.
8625         (remote_state) <m_arch_states>: Store remote_arch_state values
8626         instead of remote_arch_state pointers.
8627         (remote_state::get_remote_arch_state): Adjust.
8628
8629 2018-05-22  Pedro Alves  <palves@redhat.com>
8630
8631         * remote.c: Include <unordered_map>.
8632         (remote_state): Now a class.
8633         (remote_state) <get_remote_arch_state>: Declare method.
8634         <get_remote_arch_state>: New field.
8635         (remote_arch_state) <remote_arch_state>: Declare ctor.
8636         <regs>: Now a unique_ptr.
8637         (remote_gdbarch_data_handle): Delete.
8638         (get_remote_arch_state): Delete.
8639         (remote_state::get_remote_arch_state): New.
8640         (get_remote_state): Adjust to call remote_state's
8641         get_remote_arch_state method.
8642         (init_remote_state): Delete, bits factored out to ...
8643         (remote_arch_state::remote_arch_state): ... this new method.
8644         (get_remote_packet_size, get_memory_packet_size)
8645         (process_g_packet, remote_target::fetch_registers)
8646         (remote_target::prepare_to_store, store_registers_using_G)
8647         (remote_target::store_registers, remote_target::get_trace_status):
8648         Adjust to call remote_state's method.
8649         (_initialize_remote): Remove reference to
8650         remote_gdbarch_data_handle.
8651
8652 2018-05-22  Pedro Alves  <palves@redhat.com>
8653
8654         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8655         pread>: New method declarations.
8656         (remote_target::open_1): Adjust.
8657         (readahead_cache_invalidate): Rename to ...
8658         (readahead_cache::invalidate): ... this, and adjust to be a class
8659         method.
8660         (readahead_cache_invalidate_fd): Rename to ...
8661         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8662         class method.
8663         (remote_hostio_pwrite): Adjust.
8664         (remote_hostio_pread_from_cache): Rename to ...
8665         (readahead_cache::pread): ... this, and adjust to be a class
8666         method.
8667         (remote_hostio_close): Adjust.
8668
8669 2018-05-22  Pedro Alves  <palves@redhat.com>
8670
8671         * remote.c (remote_hostio_close_cleanup): Delete.
8672         (class scoped_remote_fd): New.
8673         (remote_file_put, remote_file_get): Use it.
8674
8675 2018-05-22  Pedro Alves  <palves@redhat.com>
8676
8677         (struct vCont_action_support): Use bool and initialize all fields.
8678         (struct readahead_cache): Initialize all fields.
8679         (remote_state): Use bool and initialize all fields.
8680         (remote_state::remote_state, remote_state::~remote_state): New.
8681         (new_remote_state): Delete.
8682         (_initialize_remote): Use new to allocate remote_state.
8683
8684 2018-05-22  Pedro Alves  <palves@redhat.com>
8685             張俊芝  <zjz@zjz.name>
8686
8687         PR gdb/22973
8688         * c-exp.y: Include "c-support.h".
8689         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8690         of tolower.  Use c_ident_is_alpha to scan names.
8691         * c-lang.c: Include "c-support.h".
8692         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8693         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8694         * c-support.h: New file, with bits factored out from ...
8695         * cp-name-parser.y: ... this file.
8696         Include "c-support.h".
8697         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8698         c-support.h and renamed.
8699         (symbol_end, yylex): Adjust.
8700
8701 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8702
8703         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8704         parameter type to CORE_ADDR.
8705         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8706         parameter type in declaration to CORE_ADDR.
8707         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8708         target_auxv_search to get AT_HWCAP and use the result to get the
8709         target description.
8710         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8711         to CORE_ADDR. Remove the cast of the return value to unsigned
8712         long. Fix error predicate of target_auxv_search.
8713         (ppc_linux_nat_target::read_description): Change the type of the
8714         hwcap variable to CORE_ADDR.
8715
8716 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8717
8718         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8719         if the size of fpscr is larger than 32 bits.
8720
8721 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8722
8723         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8724         (ppc32_linux_vsxregmap): New global.
8725         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8726         regcache_supply_regset, and regcache_collect_regset.
8727         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8728         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8729         (fetch_vsx_register, store_vsx_register): Remove.
8730         (fetch_vsx_registers): Add regno parameter. Get regset using
8731         ppc_linux_vsxregset. Use regset to supply registers.
8732         (store_vsx_registers): Add regno parameter. Get regset using
8733         ppc_linux_vsxregset. Use regset to collect registers.
8734         (fetch_register): Call fetch_vsx_registers instead of
8735         fetch_vsx_register.
8736         (store_register): Call store_vsx_registers instead of
8737         store_vsx_register.
8738         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8739         new regno parameter.
8740         (store_ppc_registers): Call store_vsx_registers with -1 for the
8741         new regno parameter.
8742         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8743         (ppc_collect_vsxregset): Remove.
8744
8745 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8746
8747         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8748         offset fields.
8749         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8750         for vector register offset fields.
8751         (ppc64_fbsd_reg_offsets): Likewise.
8752         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8753         to vector register offset fields.
8754         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8755         to vector register offset fields.
8756         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8757         vector register offset fields.
8758         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8759         initializers for vector register offset fields.
8760         (rs6000_aix64_reg_offsets): Likewise.
8761         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8762         (ppc_supply_vrregset): Remove.
8763         (ppc_collect_vrregset): Remove.
8764         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8765         (ppc_linux_vrregset) : New function.
8766         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8767         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8768         (ppc32_linux_vrregset): Remove.
8769         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8770         and use result instead of ppc32_linux_vrregset.
8771         (ppc32_linux_reg_offsets): Remove initializers for vector register
8772         offset fields.
8773         (ppc64_linux_reg_offsets): Likewise.
8774         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8775         * ppc-linux-nat.c: Include regset.h.
8776         (gdb_vrregset_t): Adjust comment to account for little-endian
8777         mode.
8778         (supply_vrregset, fill_vrregset): Remove.
8779         (fetch_altivec_register, store_altivec_register): Remove.
8780         (fetch_altivec_registers): Add regno parameter. Get regset using
8781         ppc_linux_vrregset. Use regset to supply registers.
8782         (store_altivec_registers): Add regno parameter. Get regset using
8783         ppc_linux_vrregset. Use regset to collect registers.
8784         (fetch_register): Call fetch_altivec_registers instead of
8785         fetch_altivec_register.
8786         (store_register): Call store_altivec_registers instead of
8787         store_altivec_register.
8788         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8789         the new regno parameter.
8790         (store_ppc_registers): Call store_altivec_registers with -1 for
8791         the new regno parameter.
8792
8793 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8794
8795         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8796         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8797         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8798         (gdb_vrregset_t): Change array type size to
8799         PPC_LINUX_SIZEOF_VRREGSET.
8800         (gdb_vsxregset_t): Change array type size to
8801         PPC_LINUX_SIZEOF_VSXREGSET.
8802         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8803         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8804         PPC_LINUX_SIZEOF_VSXREGSET.
8805
8806 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8807
8808         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8809         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8810         nat/ppc-linux.c.
8811         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8812         ppc_linux_target_wordsize with tid.
8813         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8814         wordsize with tid.
8815         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8816         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8817         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8818         tid parameter. Remove static specifier.
8819         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8820         (ppc_linux_target_wordsize): New declaration.
8821
8822 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8823
8824         * arch/ppc-linux-common.c: New file.
8825         * arch/ppc-linux-common.h: New file.
8826         * arch/ppc-linux-tdesc.h: New file.
8827         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8828         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8829         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8830         arch/ppc-linux-tdesc.h.
8831         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8832         arch/ppc-linux-tdesc.h.
8833         (ppc_linux_nat_target::read_description): Remove target
8834         description matching code. Fill a ppc_linux_features struct and
8835         call ppc_linux_match_description with it. Move comment about ISA
8836         2.05 to ppc-linux-common.c.
8837         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8838         arch/ppc-linux-tdesc.h.
8839         (ppc_linux_core_read_description): Remove target description
8840         matching code. Fill a ppc_linux_features struct and call
8841         ppc_linux_match_description with it.
8842         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8843         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8844         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8845         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8846         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8847         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8848         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8849         (tdesc_powerpc_e500l): Remove.
8850
8851 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8852
8853         * ada-lang.c (catch_assert_command): Pass empty string instead
8854         of NULL for excep_string argument.
8855
8856 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8857
8858         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8859         the width of the requested register exceeds the width of the
8860         `ptrace' data type.
8861
8862 2018-05-21  Tom Tromey  <tom@tromey.com>
8863
8864         * printcmd.c (output_command): Remove.
8865         (output_command_const): Rename to output_command.
8866         * valprint.h (output_command): Rename from output_command_const.
8867         * tracepoint.c (trace_dump_actions): Call output_command.
8868
8869 2018-05-21  Tom Tromey  <tom@tromey.com>
8870
8871         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8872         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8873         * ada-lang.h (create_ada_exception_catchpoint): Update.
8874         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8875         std::string.
8876         (create_excep_cond_exprs, ~ada_catchpoint)
8877         (should_stop_exception, print_one_exception)
8878         (print_mention_exception, print_recreate_exception): Update.
8879         (ada_get_next_arg): Remove.
8880         (catch_ada_exception_command_split): Use std::string.  Change type
8881         of "excep_string", "cond_string".
8882         (catch_ada_exception_command): Update.
8883         (create_ada_exception_catchpoint): Change type of excep_string.
8884         (ada_exception_sal): Remove excep_string parameter.
8885         (~ada_catchpoint): Remove.
8886
8887 2018-05-21  Tom Tromey  <tom@tromey.com>
8888
8889         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8890         cleanup.
8891
8892 2018-05-21  Tom Tromey  <tom@tromey.com>
8893
8894         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8895         Return unique_xmalloc_ptr.
8896         (print_it_exception): Update.
8897
8898 2018-05-21  Tom Tromey  <tom@tromey.com>
8899
8900         * tracepoint.c (trace_dump_actions): Use std::string.
8901
8902 2018-05-21  Tom Tromey  <tom@tromey.com>
8903
8904         * symfile.c (reread_symbols): Use std::string for original_name.
8905
8906 2018-05-21  Tom Tromey  <tom@tromey.com>
8907
8908         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8909         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8910         constructor.
8911
8912 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8913
8914         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8915         instance to...
8916         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8917         * objfiles.c (get_objfile_bfd_data): Allocate
8918         objfile_per_bfd_storage with obstack_new when allocating on
8919         obstack.
8920
8921 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8922
8923         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8924         OBSTACK_ZALLOC.
8925         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8926         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8927         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8928         (add_pending): Likewise.
8929         (parse_symbol): Likewise.
8930         (parse_partial_symbols): Likewise.
8931         (psymtab_to_symtab_1): Likewise.
8932         (new_psymtab): Likewise.
8933         (elfmdebug_build_psymtabs): Likewise.
8934         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8935         * objfiles.c (get_objfile_bfd_data): Likewise.
8936         (objfile_register_static_link): Likewise.
8937         * psymtab.c (allocate_psymtab): Likewise.
8938         * stabsread.c (read_member_functions): Likewise.
8939         * xcoffread.c (xcoff_end_psymtab): Likewise.
8940
8941 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8942
8943         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8944         compiler supports std::is_trivially_constructible.
8945         * common/poison.h: Include obstack.h.
8946         (IsMallocable): Define to is_trivially_constructible if the
8947         compiler supports it, define to true_type otherwise.
8948         (xobnew): New.
8949         (XOBNEW): Redefine.
8950         (xobnewvec): New.
8951         (XOBNEWVEC): Redefine.
8952         * gdb_obstack.h (obstack_zalloc): New.
8953         (OBSTACK_ZALLOC): Redefine.
8954         (obstack_calloc): New.
8955         (OBSTACK_CALLOC): Redefine.
8956         (obstack_new): New.
8957         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8958         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8959         gdbarch.c.
8960         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8961         obstack_calloc/obstack_zalloc.
8962         (gdbarch_obstack_zalloc): Remove.
8963         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8964
8965 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8966
8967         * stack.c (backtrace_command_1): Remove useless variable int i.
8968
8969 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8970
8971         * stack.c (print_frame_info): Fix comment.
8972
8973 2018-05-18  Tom Tromey  <tom@tromey.com>
8974
8975         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8976         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8977         (~dwarf2_per_objfile): Update
8978         (dwarf2_get_dwz_file): Use new.
8979         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8980         unique_ptr.
8981
8982 2018-05-18  Tom Tromey  <tom@tromey.com>
8983
8984         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8985         unique_ptr.
8986         * dwarf2read.c (struct dwp_file): Add constructor and
8987         initializers.
8988         (open_and_init_dwp_file): Return a unique_ptr.
8989         (dwarf2_per_objfile, create_dwp_hash_table)
8990         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8991         (lookup_dwo_unit_in_dwp): Update.
8992         (open_and_init_dwp_file, get_dwp_file): Update.
8993
8994 2018-05-18  Tom Tromey  <tom@tromey.com>
8995
8996         * dwarf2read.c (dwarf2_per_objfile): Update.
8997         (struct mapped_index): Add initializers.
8998         (dwarf2_read_index): Use new.
8999         (dw2_symtab_iter_init): Update.
9000         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9001         unique_ptr.
9002
9003 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9004
9005         * dwarf2read.c (mapped_index) <total_size>: Remove.
9006
9007 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9008
9009         * unittests/format_pieces-selftests.c (test_format_specifier):
9010         Add ARI comments.
9011
9012 2018-05-18  Tom Tromey  <tom@tromey.com>
9013
9014         * c-typeprint.c (maybe_print_hole): New function.
9015         (c_print_type_struct_field_offset): Update.
9016         (c_type_print_base_struct_union): Call maybe_print_hole.
9017
9018 2018-05-17  Keith Seitz  <keiths@redhat.com>
9019
9020         * breakpoint.c (build_bpstat_chain): New function, moved from
9021         bpstat_stop_status.
9022         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9023         If no stop chain is passed, call build_bpstat_chain to build it.
9024         * breakpoint.h (build_bpstat_chain): Declare.
9025         (bpstat_stop_status): Move documentation here from breakpoint.c.
9026         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9027         build the stop chain and pass it to skip_inline_frames.
9028         Pass this stop chain to bpstat_stop_status.
9029         * inline-frame.c: Include breakpoint.h.
9030         (stopped_by_user_bp_inline_frame): New function.
9031         (skip_inline_frames): Add parameter `stop_chain'.
9032         Move documention to inline-frame.h.
9033         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9034         whether the frame should be elided.
9035         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9036         Add moved documentation and update for new parameter.
9037
9038 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9039
9040         PR cli/14975
9041         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9042         unittests/format_pieces-selftests.c.
9043         * common/format.h (format_piece) <operator==>: New.
9044         (format_pieces) <operator[]>: Remove.
9045         * common/format.c (format_pieces::format_pieces): Handle \e.
9046         * unittests/format_pieces-selftests.c: New.
9047
9048 2018-05-17  Tom Tromey  <tom@tromey.com>
9049
9050         PR symtab/23010:
9051         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9052         (dw2_instantiate_symtab): Add skip_partial parameter.
9053         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9054         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9055         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9056         (dw2_expand_symtabs_matching_one)
9057         (dw2_find_pc_sect_compunit_symtab)
9058         (dw2_debug_names_lookup_symbol)
9059         (dw2_debug_names_expand_symtabs_for_function): Update.
9060         (init_cutu_and_read_dies): Add skip_partial parameter.
9061         (process_psymtab_comp_unit, build_type_psymtabs_1)
9062         (process_skeletonless_type_unit, load_partial_comp_unit)
9063         (psymtab_to_symtab_1): Update.
9064         (load_full_comp_unit): Add skip_partial parameter.
9065         (process_imported_unit_die, dwarf2_read_addr_index)
9066         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9067         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9068         (read_signatured_type): Update.
9069
9070 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9071
9072         * value.c (release_value): Remove unused variable.
9073         (record_latest_value): Likewise.
9074         (access_value_history): Likewise.
9075         (preserve_values): Likewise.
9076
9077 2018-05-17  Tom Tromey  <tom@tromey.com>
9078
9079         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9080         Initialize.
9081
9082 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9083
9084         PR gdb/22286
9085         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9086         Also handle registers whose width is not a multiple of
9087         PTRACE_TYPE_RET.
9088         (linux_nat_trad_target::store_register): Likewise.
9089
9090 2018-05-16  Tom Tromey  <tom@tromey.com>
9091
9092         * gdbcore.h (core_bfd): Redefine.
9093         * corelow.c (core_target::close): Update.
9094         (core_target_open): Update.
9095         * progspace.h (struct program_space) <cbfd>: Now a
9096         gdb_bfd_ref_ptr.
9097
9098 2018-05-16  Tom Tromey  <tom@tromey.com>
9099
9100         PR cli/19551:
9101         * symfile-add-flags.h (enum symfile_add_flags)
9102         <SYMFILE_NOT_FILENAME>: New constant.
9103         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9104         objfile name from BFD.
9105         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9106         * minidebug.c (find_separate_debug_file_in_section): Put
9107         ".gnu_debugdata" into BFD's file name.
9108
9109 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9110
9111         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9112         Remove.
9113
9114 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9115
9116         PR binutils/21446
9117         * aarch64-tdep.c (aarch64_analyze_prologue,
9118         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9119         Indicate not interested in errors.
9120
9121 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9122
9123         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9124         Supply the MIPS_ZERO_REGNUM register.
9125
9126 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9127
9128         * mips-tdep.c (mask_address_var): Make variable static.
9129
9130 2018-05-14  Tom Tromey  <tom@tromey.com>
9131
9132         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9133
9134 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9135
9136         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9137         FXSAVE_ADDR for the mxcsr register.
9138
9139 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9140
9141         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9142
9143 2018-05-11  Pedro Alves  <palves@redhat.com>
9144
9145         * corelow.c (core_target) <core_target>: No longer inline.
9146         Initialize m_core_gdbarch, m_core_vec and build the section table
9147         here.
9148         <~core_target>: New.
9149         <core_gdbarch, get_core_register_section>: New methods.
9150         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9151         factored out from ...
9152         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9153         (core_ops): Delete.
9154         (sniff_core_bfd): Add gdbarch parameter.
9155         (core_close): Delete, merged into ...
9156         (core_target::close): ... here.  Delete self.
9157         (core_close_cleanup): Delete.
9158         (core_target_open): Allocate a core_target on the heap.  Use a
9159         unique_ptr instead of a cleanup.  Bits moved into the core_target
9160         ctor.  Adjust to use core_target methods instead of globals.
9161         (get_core_register_section): Rename to ...
9162         (core_target::get_core_register_section): ... this and adjust.
9163         (struct get_core_registers_cb_data): New.
9164         (get_core_registers_cb): Use it.  Use bool.
9165         (core_target::fetch_registers, core_target::files_info)
9166         (core_target::xfer_partial, core_target::read_description)
9167         (core_target::pid_to, core_target::thread_name): Adjust to
9168         reference class fields instead of globals.
9169         * target.h (struct target_ops_deleter, target_ops_up): New.
9170
9171 2018-05-11  Pedro Alves  <palves@redhat.com>
9172
9173         * corefile.c (core_file_command): Move to corelow.c.
9174         * corelow.c (the_core_target): Delete.
9175         (core_file_command): Moved from corefile.c.  Check exec_bfd
9176         instead of the_core_target.  Use target_detach instead of calling
9177         into the_core_target directly.
9178         (maybe_say_no_core_file_now): New.
9179         (core_target::detach): Use it.
9180         (_initialize_corelow): Remove references to the_core_target.
9181         * gdbcore.h (the_core_target): Delete.
9182
9183 2018-05-11  Tom Tromey  <tromey@redhat.com>
9184             Pedro Alves  <palves@redhat.com>
9185
9186         * corefile.c (core_bfd): Remove.
9187         * gdbcore.h (core_bfd): Now a macro.
9188         * progspace.h (struct program_space) <cbfd>: New field.
9189
9190 2018-05-11  Tom Tromey  <tom@tromey.com>
9191
9192         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9193         gdb::def_vector.
9194
9195 2018-05-10  Tom Tromey  <tom@tromey.com>
9196
9197         * configure: Rebuild.
9198         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9199
9200 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9201
9202         PR server/23158:
9203         * regformats/regdat.sh: Adjust script, following the addition
9204         of the new expedite_regs parameter to init_target_desc.
9205
9206 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9207     
9208         PR gdb/23127
9209         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9210         set_gdbarch_significant_addr_bit.
9211         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9212         set_gdbarch_significant_addr_bit.
9213         * utils.c (address_significant): Update to sign extend addr.
9214
9215 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9216
9217         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9218         (xtensa_linux_init_abi): Limit tdep->num_regs by
9219         tdep->num_nopriv_regs.
9220         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9221         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9222         not initialized.
9223
9224 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9225
9226         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9227
9228 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9229
9230         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9231         (I387_MXCSR_INIT_VAL): New constant.
9232         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9233         buffer if it was supplied by the inferior.
9234         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9235         (i387_xsave_get_clear_bv): New function.
9236         (i387_supply_xsave): Only read x87 control registers from the
9237         xsave buffer if the feature is enabled, and the state will have
9238         been written, otherwise, provide a suitable default.
9239         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9240         including x87 control registers.  Update control registers if they
9241         have changed from the default value, and mark features as enabled
9242         as required.
9243         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9244
9245 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9246
9247         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9248
9249 2018-05-07  Tom Tromey  <tom@tromey.com>
9250
9251         * configure: Rebuild.
9252         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9253
9254 2018-05-07  Tom Tromey  <tom@tromey.com>
9255
9256         PR tdep/20362:
9257         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9258         bit.  Use correct value for VDIV.
9259
9260 2018-05-04  Tom Tromey  <tom@tromey.com>
9261
9262         * configure: Rebuild.
9263         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9264
9265 2018-05-04  Tom Tromey  <tom@tromey.com>
9266
9267         * linux-record.c (record_linux_system_call) <case
9268         RECORD_SYS_RECVFROM>: Add "break".
9269
9270 2018-05-04  Tom Tromey  <tom@tromey.com>
9271
9272         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9273         Add missing "break".
9274         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9275         Add missing "break".
9276
9277 2018-05-04  Tom Tromey  <tom@tromey.com>
9278
9279         * rs6000-tdep.c (ppc_process_record_op4)
9280         (ppc_process_record_op63): Add fall-through comment.
9281
9282 2018-05-04  Tom Tromey  <tom@tromey.com>
9283
9284         * i386-tdep.c (i386_process_record): Add fall-through comment.
9285
9286 2018-05-04  Tom Tromey  <tom@tromey.com>
9287
9288         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9289         comment.
9290
9291 2018-05-04  Tom Tromey  <tom@tromey.com>
9292
9293         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9294         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9295         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9296         comment.
9297         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9298         comment.
9299         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9300         comment.
9301
9302 2018-05-04  Tom Tromey  <tom@tromey.com>
9303
9304         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9305
9306 2018-05-04  Tom Tromey  <tom@tromey.com>
9307
9308         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9309         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9310         * symfile.c (section_is_mapped): Fix fall-through comment.
9311         * stabsread.c (define_symbol, read_member_functions): Fix
9312         fall-through comment.
9313         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9314         comment.
9315         * remote.c (remote_wait_as): Fix fall-through comment.
9316         * p-exp.y (yylex): Fix fall-through comment.
9317         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9318         comment.
9319         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9320         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9321         * jv-exp.y (yylex): Fix fall-through comment.
9322         * go-exp.y (lex_one_token): Fix fall-through comment.
9323         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9324         fall-through comment.
9325         * f-exp.y (yylex): Fix fall-through comment.
9326         * dwarf2read.c (process_die): Fix fall-through comments.
9327         * dbxread.c (process_one_symbol): Fix fall-through comment.
9328         * d-exp.y (lex_one_token): Fix fall-through comment.
9329         * cp-name-parser.y (yylex): Fix fall-through comment.
9330         * coffread.c (coff_symtab_read): Fix fall-through comment.
9331         * c-exp.y (lex_one_token): Fix fall-through comment.
9332         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9333         comment.
9334         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9335         comment.
9336
9337 2018-05-04  Tom Tromey  <tom@tromey.com>
9338
9339         PR python/22730:
9340         * NEWS: Mention gdb.execute change.
9341         * gdbcmd.h (execute_control_command): Don't declare.
9342         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9343         execute_control_commands, execute_control_commands_to_string.
9344         * cli/cli-script.h (execute_control_commands)
9345         (execute_control_commands_to_string): Declare.
9346         (execute_control_command): Add from_tty parameter.
9347         * cli/cli-script.c (execute_control_commands)
9348         (execute_control_commands_to_string): New functions.
9349         (execute_user_command): Use execute_control_commands.
9350         (execute_control_command_1): Add "from_tty" parameter.  Update.
9351         (execute_control_command): Likewise.
9352
9353 2018-05-04  Tom Tromey  <tom@tromey.com>
9354
9355         PR python/22731:
9356         * NEWS: Mention that breakpoint commands are writable.
9357         * python/py-breakpoint.c (bppy_set_commands): New function.
9358         (breakpoint_object_getset) <"commands">: Use it.
9359
9360 2018-05-04  Tom Tromey  <tom@tromey.com>
9361
9362         * tracepoint.c (actions_command): Update.
9363         * mi/mi-cmd-break.c (mi_command_line_array)
9364         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9365         (mi_read_next_line): Remove.
9366         (mi_cmd_break_commands): Update.
9367         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9368         function_view.
9369         * cli/cli-script.c (get_command_line): Update.
9370         (process_next_line): Use function_view.  Constify.
9371         (recurse_read_control_structure, read_command_lines)
9372         (read_command_lines_1): Change argument types to function_view.
9373         (do_define_command, document_command): Update.
9374         * breakpoint.h (check_tracepoint_command): Don't declare.
9375         * breakpoint.c (check_tracepoint_command): Remove.
9376         (commands_command_1, create_tracepoint_from_upload): Update.
9377
9378 2018-05-04  Tom Tromey  <tom@tromey.com>
9379
9380         PR gdb/11750:
9381         * cli/cli-script.h (enum command_control_type) <define_control>:
9382         New constant.
9383         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9384         (build_command_line, execute_control_command_1)
9385         (process_next_line): Likewise.
9386         (do_define_command): New function, extracted from define_command.
9387         (define_command): Use it.
9388
9389 2018-05-04  Tom Tromey  <tom@tromey.com>
9390
9391         * tracepoint.c (actions_command): Update.
9392         * cli/cli-script.h (read_command_lines): Update.
9393         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9394         (MAX_TMPBUF): Remove define.
9395         (define_command): Use string_printf.
9396         (document_command): Likewise.
9397         * breakpoint.c (commands_command_1): Update.
9398
9399 2018-05-04  Tom Tromey  <tom@tromey.com>
9400
9401         * top.c (execute_command): Update.
9402         * cli/cli-script.h (print_command_lines): Now varargs.
9403         * cli/cli-script.c (print_command_lines): Now varargs.
9404         (execute_control_command_1) <case while_control, case if_control>:
9405         Update.
9406
9407 2018-05-04  Tom Tromey  <tom@tromey.com>
9408
9409         * tracepoint.c (all_tracepoint_actions): Rename from
9410         all_tracepoint_actions_and_cleanup.  Change return type.
9411         (actions_command, encode_actions_1, encode_actions)
9412         (trace_dump_actions, tdump_command): Update.
9413         * remote.c (remote_download_command_source): Update.
9414         * python/python.c (gdbpy_eval_from_control_command)
9415         (python_command, python_interactive_command): Update.
9416         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9417         * guile/guile.c (guile_command)
9418         (gdbscm_eval_from_control_command, guile_command): Update.
9419         * compile/compile.c (compile_code_command)
9420         (compile_print_command, compile_to_object): Update.
9421         * cli/cli-script.h (struct command_lines_deleter): New.
9422         (counted_command_line): New typedef.
9423         (struct command_line): Add constructor, destructor.
9424         <body_list>: Remove.
9425         <body_list_0, body_list_1>: New members.
9426         (command_line_up): Remove typedef.
9427         (read_command_lines, read_command_lines_1, get_command_line):
9428         Update.
9429         (copy_command_lines): Don't declare.
9430         * cli/cli-script.c (build_command_line): Use "new".
9431         (get_command_line): Return counted_command_line.
9432         (print_command_lines, execute_user_command)
9433         (execute_control_command_1, while_command, if_command): Update.
9434         (realloc_body_list): Remove.
9435         (process_next_line, recurse_read_control_structure): Update.
9436         (read_command_lines, read_command_lines_1): Return counted_command_line.
9437         (free_command_lines): Use "delete".
9438         (copy_command_lines): Remove.
9439         (define_command, document_command, show_user_1): Update.
9440         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9441         a counted_command_line.
9442         * breakpoint.h (counted_command_line): Remove typedef.
9443         (breakpoint_set_commands): Update.
9444         * breakpoint.c (check_no_tracepoint_commands)
9445         (validate_commands_for_breakpoint): Update.
9446         (breakpoint_set_commands): Change commands to be a
9447         counted_command_line.
9448         (commands_command_1, update_dprintf_command_list)
9449         (create_tracepoint_from_upload): Update.
9450
9451 2018-05-04  Tom Tromey  <tom@tromey.com>
9452
9453         * cli/cli-decode.h (cmd_list_element): New constructor.
9454         (~cmd_list_element): New destructor.
9455         (struct cmd_list_element): Add initializers.
9456         * cli/cli-decode.c (do_add_cmd): Use "new".
9457         (delete_cmd): Use "delete".
9458
9459 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9460             Pedro Alves <palves@redhat.com>
9461
9462         PR breakpoints/19806 and support for PR external/20207.
9463         * NEWS: Mention Aarch64 watchpoint improvements.
9464         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9465         watchpoints and PR external/20207 watchpoints.
9466         * nat/aarch64-linux-hw-point.c
9467         (kernel_supports_any_contiguous_range): New.
9468         (aarch64_watchpoint_offset): New.
9469         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9470         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9471         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9472         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9473         next_addr_orig_p.  Support PR external/20207 watchpoints.
9474         (aarch64_downgrade_regs): New.
9475         (aarch64_dr_state_insert_one_point): New parameters offset and
9476         addr_orig.
9477         (aarch64_dr_state_remove_one_point): Likewise.
9478         (aarch64_handle_breakpoint): Update caller.
9479         (aarch64_handle_aligned_watchpoint): Likewise.
9480         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9481         aligned_offset.
9482         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9483         aarch64_downgrade_regs.
9484         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9485         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9486         (DR_CONTROL_MASK): ... this.
9487         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9488         (unsigned int aarch64_watchpoint_offset): New prototype.
9489         (aarch64_linux_set_debug_regs): Remove const from state.
9490         * utils.c (align_up, align_down): Move to ...
9491         * common/common-utils.c (align_up, align_down): ... here.
9492         * utils.h (align_up, align_down): Move to ...
9493         * common/common-utils.h (align_up, align_down): ... here.
9494
9495 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9496
9497         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9498         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9499         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9500         Re-implement to match the ABI as summarized in GCC's
9501         gcc/config/sparc/sparc.c.  All callers updated.
9502         (sparc32_store_arguments): Remove assertion.
9503
9504 2018-05-04  Tom Tromey  <tom@tromey.com>
9505
9506         * printcmd.c: Don't include tui.h.
9507         (decode_format): Use skip_spaces.
9508
9509 2018-05-04  Tom Tromey  <tom@tromey.com>
9510
9511         PR gdb/22619:
9512         * printcmd.c (last_count): New global.
9513         (x_command): Use saved count when repeating.
9514
9515 2018-05-04  Tom Tromey  <tom@tromey.com>
9516
9517         * nto-procfs.c (do_closedir_cleanup): Remove.
9518         (procfs_pidlist): Use gdb_dir_up.
9519         * procfs.c (do_closedir_cleanup): Remove.
9520         (proc_update_threads): Use gdb_dir_up.
9521         * common/filestuff.h (struct gdb_dir_deleter): New.
9522         (gdb_dir_up): New typedef.
9523
9524 2018-05-04  Tom Tromey  <tom@tromey.com>
9525
9526         * ada-lang.c (print_mention_exception): Use std::string.
9527
9528 2018-05-04  Tom Tromey  <tom@tromey.com>
9529
9530         * ada-lang.c (create_excep_cond_exprs): Update.
9531         (ada_exception_catchpoint_cond_string): Use std::string.
9532
9533 2018-05-04  Tom Tromey  <tom@tromey.com>
9534
9535         * ada-lang.c (xget_renaming_scope): Return std::string.
9536         (old_renaming_is_invisible): Update.
9537
9538 2018-05-04  Tom Tromey  <tom@tromey.com>
9539
9540         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9541         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9542
9543 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9544
9545         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9546
9547 2018-05-04  Tom Tromey  <tom@tromey.com>
9548
9549         * remote.c (remote_query_supported_append): Change type.
9550         (remote_check_symbols): Update.
9551
9552 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9553
9554         PR gdb/11420
9555         * configure.ac: Prepend libpython.
9556         * python/python-config.py: Likewise.
9557         * configure: Regenerate.
9558
9559 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9560
9561         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9562
9563 2018-05-03  Pedro Alves  <palves@redhat.com>
9564
9565         * s390-linux-nat.c
9566         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9567         override.  Write 'true' instead of '1'.
9568         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9569         declaration.
9570
9571 2018-05-02  Pedro Alves  <palves@redhat.com>
9572
9573         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9574         add_inf_child_target.
9575         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9576         add_inf_child_target.
9577         * aix-thread.c (aix_thread_target_info): New.
9578         (aix_thread_target) <shortname, longname, doc>: Delete.
9579         <info>: New.
9580         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9581         add_inf_child_target.
9582         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9583         add_inf_child_target.
9584         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9585         add_inf_child_target.
9586         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9587         add_inf_child_target.
9588         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9589         add_inf_child_target.
9590         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9591         add_inf_child_target.
9592         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9593         add_inf_child_target.
9594         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9595         add_inf_child_target.
9596         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9597         add_inf_child_target.
9598         * bfd-target.c (target_bfd_target_info): New.
9599         (target_bfd) <shortname, longname, doc>: Delete.
9600         <info>: New.
9601         * bsd-kvm.c (bsd_kvm_target_info): New.
9602         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9603         <info>: New.
9604         (bsd_kvm_target::open): Rename to ...
9605         (bsd_kvm_target_open): ... this.  Adjust.
9606         * bsd-uthread.c (bsd_uthread_target_info): New.
9607         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9608         <info>: New.
9609         * corefile.c (core_file_command): Adjust.
9610         * corelow.c (core_target_info): New.
9611         (core_target) <shortname, longname, doc>: Delete.
9612         <info>: New.
9613         (core_target::open): Rename to ...
9614         (core_target_open): ... this.  Adjust.
9615         * ctf.c (ctf_target_info): New.
9616         (ctf_target) <shortname, longname, doc>: Delete.
9617         <info>: New.
9618         (ctf_target::open): Rename to ...
9619         (ctf_target_open): ... this.
9620         (_initialize_ctf): Adjust.
9621         * exec.c (exec_target_info): New.
9622         (exec_target) <shortname, longname, doc>: Delete.
9623         <info>: New.
9624         (exec_target::open): Rename to ...
9625         (exec_target_open): ... this.
9626         * gdbcore.h (core_target_open): Declare.
9627         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9628         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9629         add_inf_child_target.
9630         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9631         add_inf_child_target.
9632         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9633         add_inf_child_target.
9634         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9635         add_inf_child_target.
9636         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9637         add_inf_child_target.
9638         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9639         add_inf_child_target.
9640         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9641         add_inf_child_target.
9642         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9643         add_inf_child_target.
9644         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9645         add_inf_child_target.
9646         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9647         add_inf_child_target.
9648         * inf-child.c (inf_child_target_info): New.
9649         (inf_child_target::info): New.
9650         (inf_child_open_target): Remove 'target' parameter.  Use
9651         get_native_target instead.
9652         (inf_child_target::open): Delete.
9653         (add_inf_child_target): New.
9654         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9655         Delete.
9656         <info>: New.
9657         (add_inf_child_target): Declare.
9658         (inf_child_open_target): Declare.
9659         * linux-thread-db.c (thread_db_target_info): New.
9660         (thread_db_target) <shortname, longname, doc>: Delete.
9661         <info>: New.
9662         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9663         add_inf_child_target.
9664         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9665         add_inf_child_target.
9666         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9667         add_inf_child_target.
9668         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9669         add_inf_child_target.
9670         * make-target-delegates (print_class): Adjust.
9671         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9672         add_inf_child_target.
9673         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9674         add_inf_child_target.
9675         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9676         add_inf_child_target.
9677         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9678         add_inf_child_target.
9679         * nto-procfs.c (nto_native_target_info): New.
9680         (nto_procfs_target_native) <shortname, longname, doc>:
9681         Delete.
9682         <info>: New.
9683         (nto_procfs_target_info): New.
9684         (nto_procfs_target_procfs) <shortname, longname, doc>:
9685         Delete.
9686         <info>: New.
9687         (init_procfs_targets): Adjust.
9688         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9689         add_inf_child_target.
9690         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9691         add_inf_child_target.
9692         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9693         add_inf_child_target.
9694         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9695         add_inf_child_target.
9696         * ravenscar-thread.c (ravenscar_target_info): New.
9697         (ravenscar_thread_target) <shortname, longname, doc>:
9698         Delete.
9699         <info>: New.
9700         * record-btrace.c (record_btrace_target_info):
9701         (record_btrace_target) <shortname, longname, doc>: Delete.
9702         <info>: New.
9703         (record_btrace_target::open): Rename to ...
9704         (record_btrace_target_open): ... this.  Adjust.
9705         * record-full.c (record_longname, record_doc): New.
9706         (record_full_base_target) <shortname, longname, doc>: Delete.
9707         <info>: New.
9708         (record_full_target_info): New.
9709         (record_full_target): <shortname>: Delete.
9710         <info>: New.
9711         (record_full_core_open_1, record_full_open_1): Update comments.
9712         (record_full_base_target::open): Rename to ...
9713         (record_full_open): ... this.
9714         (cmd_record_full_restore): Update.
9715         (_initialize_record_full): Update.
9716         * remote-sim.c (remote_sim_target_info): New.
9717         (gdbsim_target) <shortname, longname, doc>: Delete.
9718         <info>: New.
9719         (gdbsim_target::open): Rename to ...
9720         (gdbsim_target_open): ... this.
9721         (_initialize_remote_sim): Adjust.
9722         * remote.c (remote_doc): New.
9723         (remote_target_info): New.
9724         (remote_target) <shortname, longname, doc>: Delete.
9725         <info>: New.
9726         (extended_remote_target_info): New.
9727         (extended_remote_target) <shortname, longname, doc>: Delete.
9728         <info>: New.
9729         (remote_target::open_1): Make static.  Adjust.
9730         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9731         * s390-linux-nat.c (_initialize_s390_nat): Use
9732         add_inf_child_target.
9733         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9734         add_inf_child_target.
9735         * sol-thread.c (thread_db_target_info): New.
9736         (sol_thread_target) <shortname, longname, doc>: Delete.
9737         <info>: New.
9738         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9739         add_inf_child_target.
9740         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9741         add_inf_child_target.
9742         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9743         add_inf_child_target.
9744         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9745         add_inf_child_target.
9746         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9747         add_inf_child_target.
9748         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9749         add_inf_child_target.
9750         * spu-linux-nat.c (_initialize_spu_nat): Use
9751         add_inf_child_target.
9752         * spu-multiarch.c (spu_multiarch_target_info): New.
9753         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9754         <info>: New.
9755         * target-delegates.c: Regenerate.
9756         * target.c: Include <unordered_map>.
9757         (target_ops_p): Delete.
9758         (DEF_VEC_P(target_ops_p)): Delete.
9759         (target_factories): New.
9760         (test_target_info): New.
9761         (test_target_ops::info): New.
9762         (open_target): Adjust to use target_factories.
9763         (add_target_with_completer): Rename to ...
9764         (add_target): ... this.  Change prototype.  Register target_info
9765         and open callback in target_factories.  Register target_info in
9766         command context instead of target_ops.
9767         (add_target): Delete old implementation.
9768         (add_deprecated_target_alias): Change prototype.  Adjust.
9769         (the_native_target): New.
9770         (set_native_target, get_native_target): New.
9771         (find_default_run_target): Use the_native_target.
9772         (find_attach_target, find_run_target): Simplify.
9773         (target_ops::open): Delete.
9774         (dummy_target_info): New.
9775         (dummy_target::shortname, dummy_target::longname)
9776         (dummy_target::doc): Delete.
9777         (dummy_target::info): New.
9778         (debug_target::shortname, debug_target::longname)
9779         (debug_target::doc): Delete.
9780         (debug_target::info): New.
9781         * target.h (struct target_info): New.
9782         (target_ops::~target_ops): Add comment.
9783         (target_ops::info): New.
9784         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9785         longer virtual.  Implement in terms of target_info.
9786         (set_native_target, get_native_target): Declare.
9787         (target_open_ftype): New.
9788         (add_target, add_target_with_completer)
9789         (add_deprecated_target_alias): Change prototype.
9790         (test_target) <shortname, longname, doc>: Delete.
9791         <info>: New.
9792         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9793         add_inf_child_target.
9794         * tracefile-tfile.c (tfile_target_info): New.
9795         (tfile_target) <shortname, longname, doc>: Delete.
9796         <info>: New.
9797         (tfile_target::open): Rename to ...
9798         (tfile_target_open): ... this.
9799         (_initialize_tracefile_tfile): Adjust.
9800         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9801         add_inf_child_target.
9802         * windows-nat.c (_initialize_windows_nat): Use
9803         add_inf_child_target.
9804         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9805         add_inf_child_target.
9806
9807 2018-05-02  Pedro Alves  <palves@redhat.com>
9808
9809         * linux-nat.h (linux_nat_target) <low_new_thread,
9810         low_delete_thread, low_new_fork, low_forget_process,
9811         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9812         New virtual methods.
9813         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9814         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9815         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9816         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9817         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9818         Delete.
9819         * linux-fork.c (delete_fork): Adjust to call low method.
9820         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9821         (linux_nat_new_fork, linux_nat_forget_process_hook)
9822         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9823         (linux_nat_status_is_event):
9824         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9825         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9826         to call low method.
9827         (sigtrap_is_event): Rename to ...
9828         (linux_nat_target::low_status_is_event): ... this.
9829         (linux_nat_set_status_is_event): Delete.
9830         (save_stop_reason, linux_nat_wait_1)
9831         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9832         low methods.
9833         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9834         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9835         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9836         (linux_nat_set_prepare_to_resume): Delete.
9837         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9838         low virtual methods.
9839         * amd64-linux-nat.c: Likewise.
9840         * arm-linux-nat.c: Likewise.
9841         * i386-linux-nat.c: Likewise.
9842         * ia64-linux-nat.c: Likewise.
9843         * mips-linux-nat.c: Likewise.
9844         * ppc-linux-nat.c: Likewise.
9845         * s390-linux-nat.c: Likewise.
9846         * sparc64-linux-nat.c: Likewise.
9847         * x86-linux-nat.c: Likewise.
9848         * x86-linux-nat.h: Include "nat/x86-linux.h".
9849         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9850         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9851         Override methods.
9852
9853 2018-05-02  Pedro Alves  <palves@redhat.com>
9854
9855         * target.h (target_ops)
9856         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9857         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9858         stopped_by_watchpoint, have_continuable_watchpoint,
9859         stopped_data_address, watchpoint_addr_within_range,
9860         can_accel_watchpoint_condition, can_run, thread_alive,
9861         has_all_memory, has_memory, has_stack, has_registers,
9862         has_execution, can_async_p, is_async_p, supports_non_stop,
9863         always_non_stop_p, can_execute_reverse, supports_multi_process,
9864         supports_enable_disable_tracepoint,
9865         supports_disable_randomization, supports_string_tracing,
9866         supports_evaluation_of_breakpoint_conditions,
9867         can_run_breakpoint_commands, filesystem_is_local,
9868         can_download_tracepoint, get_trace_state_variable_value,
9869         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9870         record_is_replaying, record_will_replay,
9871         augmented_libraries_svr4_read>: Adjust to return bool.
9872         * aarch64-linux-nat.c: All implementations adjusted.
9873         * aix-thread.c: All implementations adjusted.
9874         * arm-linux-nat.c: All implementations adjusted.
9875         * breakpoint.c: All implementations adjusted.
9876         * bsd-kvm.c: All implementations adjusted.
9877         * bsd-uthread.c: All implementations adjusted.
9878         * corelow.c: All implementations adjusted.
9879         * ctf.c: All implementations adjusted.
9880         * darwin-nat.c: All implementations adjusted.
9881         * darwin-nat.h: All implementations adjusted.
9882         * exec.c: All implementations adjusted.
9883         * fbsd-nat.c: All implementations adjusted.
9884         * fbsd-nat.h: All implementations adjusted.
9885         * gnu-nat.c: All implementations adjusted.
9886         * gnu-nat.h: All implementations adjusted.
9887         * go32-nat.c: All implementations adjusted.
9888         * ia64-linux-nat.c: All implementations adjusted.
9889         * inf-child.c: All implementations adjusted.
9890         * inf-child.h: All implementations adjusted.
9891         * inf-ptrace.c: All implementations adjusted.
9892         * inf-ptrace.h: All implementations adjusted.
9893         * linux-nat.c: All implementations adjusted.
9894         * linux-nat.h: All implementations adjusted.
9895         * mips-linux-nat.c: All implementations adjusted.
9896         * nto-procfs.c: All implementations adjusted.
9897         * ppc-linux-nat.c: All implementations adjusted.
9898         * procfs.c: All implementations adjusted.
9899         * ravenscar-thread.c: All implementations adjusted.
9900         * record-btrace.c: All implementations adjusted.
9901         * record-full.c: All implementations adjusted.
9902         * remote-sim.c: All implementations adjusted.
9903         * remote.c: All implementations adjusted.
9904         * s390-linux-nat.c: All implementations adjusted.
9905         * sol-thread.c: All implementations adjusted.
9906         * spu-multiarch.c: All implementations adjusted.
9907         * target-delegates.c: All implementations adjusted.
9908         * target.c: All implementations adjusted.
9909         * target.h: All implementations adjusted.
9910         * tracefile-tfile.c: All implementations adjusted.
9911         * tracefile.c: All implementations adjusted.
9912         * tracefile.h: All implementations adjusted.
9913         * windows-nat.c: All implementations adjusted.
9914         * x86-linux-nat.h: All implementations adjusted.
9915         * x86-nat.h: All implementations adjusted.
9916
9917 2018-05-02  Pedro Alves  <palves@redhat.com>
9918
9919         * make-target-delegates (scan_target_h): Don't trim lines here.
9920         Replace sequences of tabs and/or whitespace with a single
9921         whitespace.
9922         (top level, parsing methods): Trim each line before processing it
9923         here.
9924
9925 2018-05-02  Pedro Alves  <palves@redhat.com>
9926             John Baldwin  <jhb@freebsd.org>
9927
9928         * target.h (enum strata) <debug_stratum>: New.
9929         (struct target_ops) <all delegation methods>: Replace by C++
9930         virtual methods, and drop "to_" prefix.  All references updated
9931         throughout.
9932         <to_shortname, to_longname, to_doc, to_data,
9933         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9934         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9935         virtual methods.  All references updated throughout.
9936         <can_attach, supports_terminal_ours, can_create_inferior,
9937         get_thread_control_capabilities, attach_no_wait>: New
9938         virtual methods.
9939         <insert_breakpoint, remove_breakpoint>: Now
9940         TARGET_DEFAULT_NORETURN methods.
9941         <info_proc>: Now returns bool.
9942         <to_magic>: Delete.
9943         (OPS_MAGIC): Delete.
9944         (current_target): Delete.  All references replaced by references
9945         to ...
9946         (target_stack): ... this.  New.
9947         (target_shortname, target_longname): Adjust.
9948         (target_can_run): Now a function declaration.
9949         (default_child_has_all_memory, default_child_has_memory)
9950         (default_child_has_stack, default_child_has_registers)
9951         (default_child_has_execution): Remove target_ops parameter.
9952         (complete_target_initialization): Delete.
9953         (memory_breakpoint_target): New template class.
9954         (test_target_ops): Refactor as a C++ class with virtual methods.
9955         * make-target-delegates (NAME_PART): Tighten.
9956         (POINTER_PART, CP_SYMBOL): New.
9957         (SIMPLE_RETURN_PART): Reimplement.
9958         (VEC_RETURN_PART): Expect less.
9959         (RETURN_PART, VIRTUAL_PART): New.
9960         (METHOD): Adjust to C++ virtual methods.
9961         (scan_target_h): Remove reference to C99.
9962         (dname): Output "target_ops::" prefix.
9963         (write_function_header): Adjust to output a C++ class method.
9964         (write_declaration): New.
9965         (write_delegator): Adjust to output a C++ class method.
9966         (tdname): Output "dummy_target::" prefix.
9967         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9968         method.
9969         (tdefault_names, debug_names): Delete.
9970         (return_types, tdefaults, styles, argtypes_array): New.
9971         (top level): All methods are delegators.
9972         (print_class): New.
9973         (top level): Print dummy_target and debug_target classes.
9974         * target-delegates.c: Regenerate.
9975         * target-debug.h (target_debug_print_enum_info_proc_what)
9976         (target_debug_print_thread_control_capabilities)
9977         (target_debug_print_thread_info_p): New.
9978         * target.c (dummy_target): Delete.
9979         (the_dummy_target, the_debug_target): New.
9980         (target_stack): Now extern.
9981         (set_targetdebug): Push/unpush debug target.
9982         (default_child_has_all_memory, default_child_has_memory)
9983         (default_child_has_stack, default_child_has_registers)
9984         (default_child_has_execution): Remove target_ops parameter.
9985         (complete_target_initialization): Delete.
9986         (add_target_with_completer): No longer call
9987         complete_target_initialization.
9988         (target_supports_terminal_ours): Use regular delegation.
9989         (update_current_target): Delete.
9990         (push_target): No longer check magic number.  Don't call
9991         update_current_target.
9992         (unpush_target): Don't call update_current_target.
9993         (target_is_pushed): No longer check magic number.
9994         (target_require_runnable): Skip for all stratums over
9995         process_stratum.
9996         (target_ops::info_proc): New.
9997         (target_info_proc): Use find_target_at and
9998         find_default_run_target.
9999         (target_supports_disable_randomization): Use regular delegation.
10000         (target_get_osdata): Use find_target_at.
10001         (target_ops::open, target_ops::close, target_ops::can_attach)
10002         (target_ops::attach, target_ops::can_create_inferior)
10003         (target_ops::create_inferior, target_ops::can_run)
10004         (target_can_run): New.
10005         (default_fileio_target): Use regular delegation.
10006         (target_ops::fileio_open, target_ops::fileio_pwrite)
10007         (target_ops::fileio_pread, target_ops::fileio_fstat)
10008         (target_ops::fileio_close, target_ops::fileio_unlink)
10009         (target_ops::fileio_readlink): New.
10010         (target_fileio_open_1, target_fileio_unlink)
10011         (target_fileio_readlink): Always call the target method.  Handle
10012         FILEIO_ENOSYS.
10013         (return_zero, return_zero_has_execution): Delete.
10014         (init_dummy_target): Delete.
10015         (dummy_target::dummy_target, dummy_target::shortname)
10016         (dummy_target::longname, dummy_target::doc)
10017         (debug_target::debug_target, debug_target::shortname)
10018         (debug_target::longname, debug_target::doc): New.
10019         (target_supports_delete_record): Use regular delegation.
10020         (setup_target_debug): Delete.
10021         (maintenance_print_target_stack): Skip debug_stratum.
10022         (initialize_targets): Instantiate the_dummy_target and
10023         the_debug_target.
10024         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10025         use target_stack.
10026         (target_auxv_search, fprint_target_auxv): Adjust.
10027         (info_auxv_command): Adjust to use target_stack.
10028         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10029         * exceptions.c (print_flush): Handle a NULL target_stack.
10030         * regcache.c (target_ops_no_register): Refactor as class with
10031         virtual methods.
10032
10033         * exec.c (exec_target): New class.
10034         (exec_ops): Now an exec_target.
10035         (exec_open, exec_close_1, exec_get_section_table)
10036         (exec_xfer_partial, exec_files_info, exec_has_memory)
10037         (exec_make_note_section): Refactor as exec_target methods.
10038         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10039         Delete.
10040         (exec_target::find_memory_regions): New.
10041         (_initialize_exec): Don't call init_exec_ops.
10042         * gdbcore.h (exec_file_clear): Delete.
10043
10044         * corefile.c (core_target): Delete.
10045         (core_file_command): Adjust.
10046         * corelow.c (core_target): New class.
10047         (the_core_target): New.
10048         (core_close): Remove target_ops parameter.
10049         (core_close_cleanup): Adjust.
10050         (core_target::close): New.
10051         (core_open, core_detach, get_core_registers, core_files_info)
10052         (core_xfer_partial, core_thread_alive, core_read_description)
10053         (core_pid_to_str, core_thread_name, core_has_memory)
10054         (core_has_stack, core_has_registers, core_info_proc): Rework as
10055         core_target methods.
10056         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10057         (_initialize_corelow): Initialize the_core_target.
10058         * gdbcore.h (core_target): Delete.
10059         (the_core_target): New.
10060
10061         * ctf.c: (ctf_target): New class.
10062         (ctf_ops): Now a ctf_target.
10063         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10064         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10065         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10066         methods.
10067         (init_ctf_ops): Delete.
10068         (_initialize_ctf): Don't call it.
10069         * tracefile-tfile.c (tfile_target): New class.
10070         (tfile_ops): Now a tfile_target.
10071         (tfile_open, tfile_close, tfile_files_info)
10072         (tfile_get_tracepoint_status, tfile_trace_find)
10073         (tfile_fetch_registers, tfile_xfer_partial)
10074         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10075         Refactor as tfile_target methods.
10076         (tfile_xfer_partial_features): Remove target_ops parameter.
10077         (init_tfile_ops): Delete.
10078         (_initialize_tracefile_tfile): Don't call it.
10079         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10080         (tracefile_has_stack, tracefile_has_registers)
10081         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10082         tracefile_target methods.
10083         (init_tracefile_ops): Delete.
10084         (tracefile_target::tracefile_target): New.
10085         * tracefile.h: Include "target.h".
10086         (tracefile_target): New class.
10087         (init_tracefile_ops): Delete.
10088
10089         * spu-multiarch.c (spu_multiarch_target): New class.
10090         (spu_ops): Now a spu_multiarch_target.
10091         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10092         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10093         (spu_search_memory, spu_mourn_inferior): Refactor as
10094         spu_multiarch_target methods.
10095         (init_spu_ops): Delete.
10096         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10097         complete_target_initialization.
10098
10099         * ravenscar-thread.c (ravenscar_thread_target): New class.
10100         (ravenscar_ops): Now a ravenscar_thread_target.
10101         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10102         (ravenscar_thread_alive, ravenscar_pid_to_str)
10103         (ravenscar_fetch_registers, ravenscar_store_registers)
10104         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10105         (ravenscar_stopped_by_hw_breakpoint)
10106         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10107         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10108         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10109         methods.
10110         (init_ravenscar_thread_ops): Delete.
10111         (_initialize_ravenscar): Remove references to
10112         init_ravenscar_thread_ops and complete_target_initialization.
10113
10114         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10115         (bsd_uthread_target): New class.
10116         (bsd_uthread_ops): Now a bsd_uthread_target.
10117         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10118         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10119         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10120         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10121         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10122         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10123         (bsd_uthread_target): Delete function.
10124         (_initialize_bsd_uthread): Remove reference to
10125         complete_target_initialization.
10126
10127         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10128         (target_bfd): ... this new class.
10129         (target_bfd_xfer_partial, target_bfd_get_section_table)
10130         (target_bfd_close): Refactor as target_bfd methods.
10131         (target_bfd::~target_bfd): New.
10132         (target_bfd_reopen): Adjust.
10133         (target_bfd::close): New.
10134
10135         * record-btrace.c (record_btrace_target): New class.
10136         (record_btrace_ops): Now a record_btrace_target.
10137         (record_btrace_open, record_btrace_stop_recording)
10138         (record_btrace_disconnect, record_btrace_close)
10139         (record_btrace_async, record_btrace_info)
10140         (record_btrace_insn_history, record_btrace_insn_history_range)
10141         (record_btrace_insn_history_from, record_btrace_call_history)
10142         (record_btrace_call_history_range)
10143         (record_btrace_call_history_from, record_btrace_record_method)
10144         (record_btrace_is_replaying, record_btrace_will_replay)
10145         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10146         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10147         (record_btrace_store_registers, record_btrace_prepare_to_store)
10148         (record_btrace_to_get_unwinder)
10149         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10150         (record_btrace_commit_resume, record_btrace_wait)
10151         (record_btrace_stop, record_btrace_can_execute_reverse)
10152         (record_btrace_stopped_by_sw_breakpoint)
10153         (record_btrace_supports_stopped_by_sw_breakpoint)
10154         (record_btrace_stopped_by_hw_breakpoint)
10155         (record_btrace_supports_stopped_by_hw_breakpoint)
10156         (record_btrace_update_thread_list, record_btrace_thread_alive)
10157         (record_btrace_goto_begin, record_btrace_goto_end)
10158         (record_btrace_goto, record_btrace_stop_replaying_all)
10159         (record_btrace_execution_direction)
10160         (record_btrace_prepare_to_generate_core)
10161         (record_btrace_done_generating_core): Refactor as
10162         record_btrace_target methods.
10163         (init_record_btrace_ops): Delete.
10164         (_initialize_record_btrace): Remove reference to
10165         init_record_btrace_ops.
10166         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10167         the execution_direction global.
10168         (record_full_base_target, record_full_target)
10169         (record_full_core_target): New classes.
10170         (record_full_ops): Now a record_full_target.
10171         (record_full_core_ops): Now a record_full_core_target.
10172         (record_full_target::detach, record_full_target::disconnect)
10173         (record_full_core_target::disconnect)
10174         (record_full_target::mourn_inferior, record_full_target::kill):
10175         New.
10176         (record_full_open, record_full_close, record_full_async): Refactor
10177         as methods of the record_full_base_target class.
10178         (record_full_resume, record_full_commit_resume): Refactor
10179         as methods of the record_full_target class.
10180         (record_full_wait, record_full_stopped_by_watchpoint)
10181         (record_full_stopped_data_address)
10182         (record_full_stopped_by_sw_breakpoint)
10183         (record_full_supports_stopped_by_sw_breakpoint)
10184         (record_full_stopped_by_hw_breakpoint)
10185         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10186         methods of the record_full_base_target class.
10187         (record_full_store_registers, record_full_xfer_partial)
10188         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10189         Refactor as methods of the record_full_target class.
10190         (record_full_can_execute_reverse, record_full_get_bookmark)
10191         (record_full_goto_bookmark, record_full_execution_direction)
10192         (record_full_record_method, record_full_info, record_full_delete)
10193         (record_full_is_replaying, record_full_will_replay)
10194         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10195         (record_full_stop_replaying): Refactor as methods of the
10196         record_full_base_target class.
10197         (record_full_core_resume, record_full_core_kill)
10198         (record_full_core_fetch_registers)
10199         (record_full_core_prepare_to_store)
10200         (record_full_core_store_registers, record_full_core_xfer_partial)
10201         (record_full_core_insert_breakpoint)
10202         (record_full_core_remove_breakpoint)
10203         (record_full_core_has_execution): Refactor
10204         as methods of the record_full_core_target class.
10205         (record_full_base_target::supports_delete_record): New.
10206         (init_record_full_ops): Delete.
10207         (init_record_full_core_ops): Delete.
10208         (record_full_save): Refactor as method of the
10209         record_full_base_target class.
10210         (_initialize_record_full): Remove references to
10211         init_record_full_ops and init_record_full_core_ops.
10212
10213         * remote.c (remote_target, extended_remote_target): New classes.
10214         (remote_ops): Now a remote_target.
10215         (extended_remote_ops): Now an extended_remote_target.
10216         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10217         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10218         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10219         (remote_pass_signals, remote_set_syscall_catchpoint)
10220         (remote_program_signals, )
10221         (remote_thread_always_alive): Remove target_ops parameter.
10222         (remote_thread_alive, remote_thread_name)
10223         (remote_update_thread_list, remote_threads_extra_info)
10224         (remote_static_tracepoint_marker_at)
10225         (remote_static_tracepoint_markers_by_strid)
10226         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10227         (remote_open): Refactor as methods of remote_target.
10228         (extended_remote_open, extended_remote_detach)
10229         (extended_remote_attach, extended_remote_post_attach):
10230         (extended_remote_supports_disable_randomization)
10231         (extended_remote_create_inferior): : Refactor as method of
10232         extended_remote_target.
10233         (remote_set_permissions, remote_open_1, remote_detach)
10234         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10235         (remote_resume, remote_commit_resume, remote_stop)
10236         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10237         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10238         (remote_prepare_to_store, remote_store_registers)
10239         (remote_flash_erase, remote_flash_done, remote_files_info)
10240         (remote_kill, remote_mourn, remote_insert_breakpoint)
10241         (remote_remove_breakpoint, remote_insert_watchpoint)
10242         (remote_watchpoint_addr_within_range)
10243         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10244         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10245         (remote_supports_stopped_by_sw_breakpoint)
10246         (remote_stopped_by_hw_breakpoint)
10247         (remote_supports_stopped_by_hw_breakpoint)
10248         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10249         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10250         (remote_verify_memory): Refactor as methods of remote_target.
10251         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10252         parameter.
10253         (remote_xfer_partial, remote_get_memory_xfer_limit)
10254         (remote_search_memory, remote_rcmd, remote_memory_map)
10255         (remote_pid_to_str, remote_get_thread_local_address)
10256         (remote_get_tib_address, remote_read_description): Refactor as
10257         methods of remote_target.
10258         (remote_target::fileio_open, remote_target::fileio_pwrite)
10259         (remote_target::fileio_pread, remote_target::fileio_close): New.
10260         (remote_hostio_readlink, remote_hostio_fstat)
10261         (remote_filesystem_is_local, remote_can_execute_reverse)
10262         (remote_supports_non_stop, remote_supports_disable_randomization)
10263         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10264         (remote_supports_enable_disable_tracepoint)
10265         (remote_supports_string_tracing)
10266         (remote_can_run_breakpoint_commands, remote_trace_init)
10267         (remote_download_tracepoint, remote_can_download_tracepoint)
10268         (remote_download_trace_state_variable, remote_enable_tracepoint)
10269         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10270         (remote_trace_start, remote_get_trace_status)
10271         (remote_get_tracepoint_status, remote_trace_stop)
10272         (remote_trace_find, remote_get_trace_state_variable_value)
10273         (remote_save_trace_data, remote_get_raw_trace_data)
10274         (remote_set_disconnected_tracing, remote_core_of_thread)
10275         (remote_set_circular_trace_buffer, remote_traceframe_info)
10276         (remote_get_min_fast_tracepoint_insn_len)
10277         (remote_set_trace_buffer_size, remote_set_trace_notes)
10278         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10279         (remote_disable_btrace, remote_teardown_btrace)
10280         (remote_read_btrace, remote_btrace_conf)
10281         (remote_augmented_libraries_svr4_read, remote_load)
10282         (remote_pid_to_exec_file, remote_can_do_single_step)
10283         (remote_execution_direction, remote_thread_handle_to_thread_info):
10284         Refactor as methods of remote_target.
10285         (init_remote_ops, init_extended_remote_ops): Delete.
10286         (remote_can_async_p, remote_is_async_p, remote_async)
10287         (remote_thread_events, remote_upload_tracepoints)
10288         (remote_upload_trace_state_variables): Refactor as methods of
10289         remote_target.
10290         (_initialize_remote): Remove references to init_remote_ops and
10291         init_extended_remote_ops.
10292
10293         * remote-sim.c (gdbsim_target): New class.
10294         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10295         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10296         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10297         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10298         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10299         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10300         Refactor as methods of gdbsim_target.
10301         (gdbsim_ops): Now a gdbsim_target.
10302         (init_gdbsim_ops): Delete.
10303         (gdbsim_cntrl_c): Adjust.
10304         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10305
10306         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10307         (the_amd64_linux_nat_target): New.
10308         (amd64_linux_fetch_inferior_registers)
10309         (amd64_linux_store_inferior_registers): Refactor as methods of
10310         amd64_linux_nat_target.
10311         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10312         * i386-linux-nat.c: Don't include "linux-nat.h".
10313         (i386_linux_nat_target): New class.
10314         (the_i386_linux_nat_target): New.
10315         (i386_linux_fetch_inferior_registers)
10316         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10317         as methods of i386_linux_nat_target.
10318         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10319         * inf-child.c (inf_child_ops): Delete.
10320         (inf_child_fetch_inferior_registers)
10321         (inf_child_store_inferior_registers): Delete.
10322         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10323         methods of inf_child_target.
10324         (inf_child_target::supports_terminal_ours)
10325         (inf_child_target::terminal_init)
10326         (inf_child_target::terminal_inferior)
10327         (inf_child_target::terminal_ours_for_output)
10328         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10329         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10330         New.
10331         (inf_child_open, inf_child_disconnect, inf_child_close)
10332         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10333         (inf_child_post_startup_inferior, inf_child_can_run)
10334         (inf_child_pid_to_exec_file): Refactor as methods of
10335         inf_child_target.
10336         (inf_child_follow_fork): Delete.
10337         (inf_child_target::can_create_inferior)
10338         (inf_child_target::can_attach): New.
10339         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10340         (inf_child_target::has_stack, inf_child_target::has_registers)
10341         (inf_child_target::has_execution): New.
10342         (inf_child_fileio_open, inf_child_fileio_pwrite)
10343         (inf_child_fileio_pread, inf_child_fileio_fstat)
10344         (inf_child_fileio_close, inf_child_fileio_unlink)
10345         (inf_child_fileio_readlink, inf_child_use_agent)
10346         (inf_child_can_use_agent): Refactor as methods of
10347         inf_child_target.
10348         (return_zero, inf_child_target): Delete.
10349         (inf_child_target::inf_child_target): New.
10350         * inf-child.h: Include "target.h".
10351         (inf_child_target): Delete function prototype.
10352         (inf_child_target): New class.
10353         (inf_child_open_target, inf_child_mourn_inferior)
10354         (inf_child_maybe_unpush_target): Delete.
10355         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10356         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10357         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10358         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10359         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10360         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10361         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10362         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10363         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10364         methods of inf_ptrace_target.
10365         (inf_ptrace_target): Delete function.
10366         * inf-ptrace.h: Include "inf-child.h".
10367         (inf_ptrace_target): Delete function declaration.
10368         (inf_ptrace_target): New class.
10369         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10370         * linux-nat.c (linux_target): New.
10371         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10372         (linux_nat_target::~linux_nat_target): New.
10373         (linux_child_post_attach, linux_child_post_startup_inferior)
10374         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10375         (linux_child_remove_fork_catchpoint)
10376         (linux_child_insert_vfork_catchpoint)
10377         (linux_child_remove_vfork_catchpoint)
10378         (linux_child_insert_exec_catchpoint)
10379         (linux_child_remove_exec_catchpoint)
10380         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10381         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10382         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10383         (linux_nat_stopped_data_address)
10384         (linux_nat_stopped_by_sw_breakpoint)
10385         (linux_nat_supports_stopped_by_sw_breakpoint)
10386         (linux_nat_stopped_by_hw_breakpoint)
10387         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10388         (linux_nat_kill, linux_nat_mourn_inferior)
10389         (linux_nat_xfer_partial, linux_nat_thread_alive)
10390         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10391         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10392         (linux_child_static_tracepoint_markers_by_strid)
10393         (linux_nat_is_async_p, linux_nat_can_async_p)
10394         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10395         (linux_nat_supports_multi_process)
10396         (linux_nat_supports_disable_randomization, linux_nat_async)
10397         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10398         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10399         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10400         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10401         methods of linux_nat_target.
10402         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10403         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10404         parameter.
10405         (check_stopped_by_watchpoint): Adjust.
10406         (linux_xfer_partial): Delete.
10407         (linux_target_install_ops, linux_target, linux_nat_add_target):
10408         Delete.
10409         (linux_nat_target::linux_nat_target): New.
10410         * linux-nat.h: Include "inf-ptrace.h".
10411         (linux_nat_target): New.
10412         (linux_target, linux_target_install_ops, linux_nat_add_target):
10413         Delete function declarations.
10414         (linux_target): Declare global.
10415         * linux-thread-db.c (thread_db_target): New.
10416         (thread_db_target::thread_db_target): New.
10417         (thread_db_ops): Delete.
10418         (the_thread_db_target): New.
10419         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10420         (thread_db_update_thread_list, thread_db_pid_to_str)
10421         (thread_db_extra_thread_info)
10422         (thread_db_thread_handle_to_thread_info)
10423         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10424         (thread_db_resume): Refactor as methods of thread_db_target.
10425         (init_thread_db_ops): Delete.
10426         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10427         * x86-linux-nat.c: Don't include "linux-nat.h".
10428         (super_post_startup_inferior): Delete.
10429         (x86_linux_nat_target::~x86_linux_nat_target): New.
10430         (x86_linux_child_post_startup_inferior)
10431         (x86_linux_read_description, x86_linux_enable_btrace)
10432         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10433         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10434         methods of x86_linux_nat_target.
10435         (x86_linux_create_target): Delete.  Bits folded ...
10436         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10437         pointer.
10438         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10439         (x86_linux_nat_target): New class.
10440         (x86_linux_create_target): Delete.
10441         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10442         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10443         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10444         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10445         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10446         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10447         make extern.
10448         (x86_use_watchpoints): Delete.
10449         * x86-nat.h: Include "breakpoint.h" and "target.h".
10450         (x86_use_watchpoints): Delete.
10451         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10452         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10453         (x86_insert_watchpoint, x86_remove_watchpoint)
10454         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10455         (x86_stopped_by_hw_breakpoint): New declarations.
10456         (x86_nat_target): New template class.
10457
10458         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10459         (the_ppc_linux_nat_target): New.
10460         (ppc_linux_fetch_inferior_registers)
10461         (ppc_linux_can_use_hw_breakpoint)
10462         (ppc_linux_region_ok_for_hw_watchpoint)
10463         (ppc_linux_ranged_break_num_registers)
10464         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10465         (ppc_linux_insert_mask_watchpoint)
10466         (ppc_linux_remove_mask_watchpoint)
10467         (ppc_linux_can_accel_watchpoint_condition)
10468         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10469         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10470         (ppc_linux_watchpoint_addr_within_range)
10471         (ppc_linux_masked_watch_num_registers)
10472         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10473         (ppc_linux_read_description): Refactor as methods of
10474         ppc_linux_nat_target.
10475         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10476
10477         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10478         (procfs_target): New class.
10479         (the_procfs_target): New.
10480         (procfs_target): Delete function.
10481         (procfs_auxv_parse, procfs_attach, procfs_detach)
10482         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10483         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10484         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10485         (procfs_create_inferior, procfs_update_thread_list)
10486         (procfs_thread_alive, procfs_pid_to_str)
10487         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10488         (procfs_stopped_data_address, procfs_insert_watchpoint)
10489         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10490         (proc_find_memory_regions, procfs_info_proc)
10491         (procfs_make_note_section): Refactor as methods of procfs_target.
10492         (_initialize_procfs): Adjust.
10493         * sol-thread.c (sol_thread_target): New class.
10494         (sol_thread_ops): Now a sol_thread_target.
10495         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10496         (sol_thread_fetch_registers, sol_thread_store_registers)
10497         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10498         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10499         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10500         (init_sol_thread_ops): Delete.
10501         (_initialize_sol_thread): Adjust.  Remove references to
10502         init_sol_thread_ops and complete_target_initialization.
10503
10504         * windows-nat.c (windows_nat_target): New class.
10505         (windows_fetch_inferior_registers)
10506         (windows_store_inferior_registers, windows_resume, windows_wait)
10507         (windows_attach, windows_detach, windows_pid_to_exec_file)
10508         (windows_files_info, windows_create_inferior)
10509         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10510         (windows_close, windows_pid_to_str, windows_xfer_partial)
10511         (windows_get_tib_address, windows_get_ada_task_ptid)
10512         (windows_thread_name, windows_thread_alive): Refactor as
10513         windows_nat_target methods.
10514         (do_initial_windows_stuff): Adjust.
10515         (windows_target): Delete function.
10516         (_initialize_windows_nat): Adjust.
10517
10518         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10519         (darwin_mourn_inferior, darwin_kill_inferior)
10520         (darwin_create_inferior, darwin_attach, darwin_detach)
10521         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10522         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10523         (darwin_supports_multi_process): Refactor as darwin_nat_target
10524         methods.
10525         (darwin_resume_to, darwin_files_info): Delete.
10526         (_initialize_darwin_inferior): Rename to ...
10527         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10528         * darwin-nat.h: Include "inf-child.h".
10529         (darwin_nat_target): New class.
10530         (darwin_complete_target): Delete.
10531         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10532         (darwin_target): New.
10533         (i386_darwin_fetch_inferior_registers)
10534         (i386_darwin_store_inferior_registers): Refactor as methods of
10535         darwin_nat_target.
10536         (darwin_complete_target): Delete, with ...
10537         (_initialize_i386_darwin_nat): ... bits factored out here.
10538
10539         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10540         (the_alpha_linux_nat_target): New.
10541         (alpha_linux_register_u_offset): Refactor as
10542         alpha_linux_nat_target method.
10543         (_initialize_alpha_linux_nat): Adjust.
10544         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10545         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10546         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10547         methods of linux_nat_trad_target.
10548         (linux_trad_target): Delete.
10549         * linux-nat-trad.h (linux_trad_target): Delete function.
10550         (linux_nat_trad_target): New class.
10551         * mips-linux-nat.c (mips_linux_nat_target): New class.
10552         (super_fetch_registers, super_store_registers, super_close):
10553         Delete.
10554         (the_mips_linux_nat_target): New.
10555         (mips64_linux_regsets_fetch_registers)
10556         (mips64_linux_regsets_store_registers)
10557         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10558         (mips_linux_register_u_offset, mips_linux_read_description)
10559         (mips_linux_can_use_hw_breakpoint)
10560         (mips_linux_stopped_by_watchpoint)
10561         (mips_linux_stopped_data_address)
10562         (mips_linux_region_ok_for_hw_watchpoint)
10563         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10564         (mips_linux_close): Refactor as methods of mips_linux_nat.
10565         (_initialize_mips_linux_nat): Adjust to C++ification.
10566
10567         * aix-thread.c (aix_thread_target): New class.
10568         (aix_thread_ops): Now an aix_thread_target.
10569         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10570         (aix_thread_fetch_registers, aix_thread_store_registers)
10571         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10572         (aix_thread_thread_alive, aix_thread_pid_to_str)
10573         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10574         Refactor as methods of aix_thread_target.
10575         (init_aix_thread_ops): Delete.
10576         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10577         and complete_target_initialization.
10578         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10579         (rs6000_nat_target): New class.
10580         (the_rs6000_nat_target): New.
10581         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10582         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10583         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10584         (super_create_inferior): Delete.
10585         (_initialize_rs6000_nat): Adjust to C++ification.
10586
10587         * arm-linux-nat.c (arm_linux_nat_target): New class.
10588         (the_arm_linux_nat_target): New.
10589         (arm_linux_fetch_inferior_registers)
10590         (arm_linux_store_inferior_registers, arm_linux_read_description)
10591         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10592         (arm_linux_remove_hw_breakpoint)
10593         (arm_linux_region_ok_for_hw_watchpoint)
10594         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10595         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10596         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10597         arm_linux_nat_target.
10598         (_initialize_arm_linux_nat): Adjust to C++ification.
10599
10600         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10601         (the_aarch64_linux_nat_target): New.
10602         (aarch64_linux_fetch_inferior_registers)
10603         (aarch64_linux_store_inferior_registers)
10604         (aarch64_linux_child_post_startup_inferior)
10605         (aarch64_linux_read_description)
10606         (aarch64_linux_can_use_hw_breakpoint)
10607         (aarch64_linux_insert_hw_breakpoint)
10608         (aarch64_linux_remove_hw_breakpoint)
10609         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10610         (aarch64_linux_region_ok_for_hw_watchpoint)
10611         (aarch64_linux_stopped_data_address)
10612         (aarch64_linux_stopped_by_watchpoint)
10613         (aarch64_linux_watchpoint_addr_within_range)
10614         (aarch64_linux_can_do_single_step): Refactor as methods of
10615         aarch64_linux_nat_target.
10616         (super_post_startup_inferior): Delete.
10617         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10618
10619         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10620         (the_hppa_linux_nat_target): New.
10621         (hppa_linux_fetch_inferior_registers)
10622         (hppa_linux_store_inferior_registers): Refactor as methods of
10623         hppa_linux_nat_target.
10624         (_initialize_hppa_linux_nat): Adjust to C++ification.
10625
10626         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10627         (the_ia64_linux_nat_target): New.
10628         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10629         (ia64_linux_stopped_data_address)
10630         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10631         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10632         ia64_linux_nat_target methods.
10633         (super_xfer_partial): Delete.
10634         (_initialize_ia64_linux_nat): Adjust to C++ification.
10635
10636         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10637         (the_m32r_linux_nat_target): New.
10638         (m32r_linux_fetch_inferior_registers)
10639         (m32r_linux_store_inferior_registers): Refactor as
10640         m32r_linux_nat_target methods.
10641         (_initialize_m32r_linux_nat): Adjust to C++ification.
10642
10643         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10644         (the_m68k_linux_nat_target): New.
10645         (m68k_linux_fetch_inferior_registers)
10646         (m68k_linux_store_inferior_registers): Refactor as
10647         m68k_linux_nat_target methods.
10648         (_initialize_m68k_linux_nat): Adjust to C++ification.
10649
10650         * s390-linux-nat.c (s390_linux_nat_target): New class.
10651         (the_s390_linux_nat_target): New.
10652         (s390_linux_fetch_inferior_registers)
10653         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10654         (s390_insert_watchpoint, s390_remove_watchpoint)
10655         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10656         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10657         (s390_auxv_parse, s390_read_description): Refactor as methods of
10658         s390_linux_nat_target.
10659         (_initialize_s390_nat): Adjust to C++ification.
10660
10661         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10662         (the_sparc_linux_nat_target): New.
10663         (_initialize_sparc_linux_nat): Adjust to C++ification.
10664         * sparc-nat.c (sparc_fetch_inferior_registers)
10665         (sparc_store_inferior_registers): Remove target_ops parameter.
10666         * sparc-nat.h (sparc_fetch_inferior_registers)
10667         (sparc_store_inferior_registers): Remove target_ops parameter.
10668         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10669         (the_sparc64_linux_nat_target): New.
10670         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10671
10672         * spu-linux-nat.c (spu_linux_nat_target): New class.
10673         (the_spu_linux_nat_target): New.
10674         (spu_child_post_startup_inferior, spu_child_post_attach)
10675         (spu_child_wait, spu_fetch_inferior_registers)
10676         (spu_store_inferior_registers, spu_xfer_partial)
10677         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10678         methods.
10679         (_initialize_spu_nat): Adjust to C++ification.
10680
10681         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10682         (the_tilegx_linux_nat_target): New.
10683         (fetch_inferior_registers, store_inferior_registers):
10684         Refactor as methods.
10685         (_initialize_tile_linux_nat): Adjust to C++ification.
10686
10687         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10688         (the_xtensa_linux_nat_target): New.
10689         (xtensa_linux_fetch_inferior_registers)
10690         (xtensa_linux_store_inferior_registers): Refactor as
10691         xtensa_linux_nat_target methods.
10692         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10693
10694         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10695         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10696         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10697         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10698         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10699         (fbsd_stopped_by_sw_breakpoint)
10700         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10701         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10702         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10703         (fbsd_post_startup_inferior, fbsd_post_attach)
10704         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10705         (fbsd_set_syscall_catchpoint)
10706         (super_xfer_partial, super_resume, super_wait)
10707         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10708         (fbsd_handle_debug_trap): Remove target_ops parameter.
10709         (fbsd_nat_add_target): Delete.
10710         * fbsd-nat.h: Include "inf-ptrace.h".
10711         (fbsd_nat_add_target): Delete.
10712         (USE_SIGTRAP_SIGINFO): Define.
10713         (fbsd_nat_target): New class.
10714
10715         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10716         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10717         (amd64bsd_target): Delete.
10718         * amd64-bsd-nat.h: New file.
10719         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10720         "x86-bsd-nat.h".
10721         (amd64_fbsd_nat_target): New class.
10722         (the_amd64_fbsd_nat_target): New.
10723         (amd64fbsd_read_description): Refactor as method of
10724         amd64_fbsd_nat_target.
10725         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10726         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10727         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10728         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10729         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10730         (i386bsd_target): Delete.
10731         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10732         (i386bsd_fetch_inferior_registers)
10733         (i386bsd_store_inferior_registers): Declare.
10734         (i386_bsd_nat_target): New class.
10735         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10736         (the_i386_fbsd_nat_target): New.
10737         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10738         i386_fbsd_nat_target methods.
10739         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10740         (_initialize_i386fbsd_nat): Adjust to C++ification.
10741         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10742         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10743         (_initialize_x86_bsd_nat): Adjust to C++ification.
10744         * x86-bsd-nat.h: Include "x86-nat.h".
10745         (x86bsd_target): Delete declaration.
10746         (x86bsd_nat_target): New class.
10747
10748         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10749         (the_aarch64_fbsd_nat_target): New.
10750         (aarch64_fbsd_fetch_inferior_registers)
10751         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10752         aarch64_fbsd_nat_target.
10753         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10754         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10755         (the_alpha_bsd_nat_target): New.
10756         (alphabsd_fetch_inferior_registers)
10757         (alphabsd_store_inferior_registers): Refactor as
10758         alpha_bsd_nat_target methods.
10759         (_initialize_alphabsd_nat): Refactor as methods of
10760         alpha_bsd_nat_target.
10761         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10762         (the_amd64_nbsd_nat_target): New.
10763         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10764         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10765         (the_amd64_obsd_nat_target): New.
10766         (_initialize_amd64obsd_nat): Adjust to C++ification.
10767         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10768         (the_arm_fbsd_nat_target): New.
10769         (arm_fbsd_fetch_inferior_registers)
10770         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10771         (_initialize_arm_fbsd_nat): Refactor as methods of
10772         arm_fbsd_nat_target.
10773         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10774         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10775         (the_arm_netbsd_nat_target): New.
10776         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10777         arm_netbsd_nat_target.
10778         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10779         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10780         (the_hppa_nbsd_nat_target): New.
10781         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10782         hppa_nbsd_nat_target methods.
10783         (_initialize_hppanbsd_nat): Adjust to C++ification.
10784         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10785         (the_hppa_obsd_nat_target): New.
10786         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10787         methods of hppa_obsd_nat_target.
10788         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10789         add_target.
10790         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10791         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10792         add_target.
10793         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10794         (_initialize_i386obsd_nat): Use add_target.
10795         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10796         (the_m68k_bsd_nat_target): New.
10797         (m68kbsd_fetch_inferior_registers)
10798         (m68kbsd_store_inferior_registers): Refactor as methods of
10799         m68k_bsd_nat_target.
10800         (_initialize_m68kbsd_nat): Adjust to C++ification.
10801         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10802         (the_mips_fbsd_nat_target): New.
10803         (mips_fbsd_fetch_inferior_registers)
10804         (mips_fbsd_store_inferior_registers): Refactor as methods of
10805         mips_fbsd_nat_target.
10806         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10807         add_target.
10808         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10809         (the_mips_nbsd_nat_target): New.
10810         (mipsnbsd_fetch_inferior_registers)
10811         (mipsnbsd_store_inferior_registers): Refactor as methods of
10812         mips_nbsd_nat_target.
10813         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10814         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10815         (the_mips64_obsd_nat_target): New.
10816         (mips64obsd_fetch_inferior_registers)
10817         (mips64obsd_store_inferior_registers): Refactor as methods of
10818         mips64_obsd_nat_target.
10819         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10820         add_target.
10821         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10822         nbsd_nat_target.
10823         * nbsd-nat.h: Include "inf-ptrace.h".
10824         (nbsd_nat_target): New class.
10825         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10826         (obsd_wait): Refactor as methods of obsd_nat_target.
10827         (obsd_add_target): Delete.
10828         * obsd-nat.h: Include "inf-ptrace.h".
10829         (obsd_nat_target): New class.
10830         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10831         (the_ppc_fbsd_nat_target): New.
10832         (ppcfbsd_fetch_inferior_registers)
10833         (ppcfbsd_store_inferior_registers): Refactor as methods of
10834         ppc_fbsd_nat_target.
10835         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10836         add_target.
10837         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10838         (the_ppc_nbsd_nat_target): New.
10839         (ppcnbsd_fetch_inferior_registers)
10840         (ppcnbsd_store_inferior_registers): Refactor as methods of
10841         ppc_nbsd_nat_target.
10842         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10843         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10844         (the_ppc_obsd_nat_target): New.
10845         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10846         methods of ppc_obsd_nat_target.
10847         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10848         add_target.
10849         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10850         (the_sh_nbsd_nat_target): New.
10851         (shnbsd_fetch_inferior_registers)
10852         (shnbsd_store_inferior_registers): Refactor as methods of
10853         sh_nbsd_nat_target.
10854         (_initialize_shnbsd_nat): Adjust to C++ification.
10855         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10856         (inf_ptrace_xfer_partial): Delete.
10857         (sparc_xfer_partial, sparc_target): Delete.
10858         * sparc-nat.h (sparc_fetch_inferior_registers)
10859         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10860         (sparc_target): Delete function declaration.
10861         (sparc_target): New template class.
10862         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10863         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10864         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10865         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10866         add_target.
10867         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10868         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10869         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10870         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10871         add_target.
10872         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10873         (the_vax_bsd_nat_target): New.
10874         (vaxbsd_fetch_inferior_registers)
10875         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10876         methods.
10877         (_initialize_vaxbsd_nat): Adjust to C++ification.
10878
10879         * bsd-kvm.c (bsd_kvm_target): New class.
10880         (bsd_kvm_ops): Now a bsd_kvm_target.
10881         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10882         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10883         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10884         bsd_kvm_target.
10885         (bsd_kvm_return_one): Delete.
10886         (bsd_kvm_add_target): Adjust to C++ification.
10887
10888         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10889         (nto_procfs_target_procfs): New classes.
10890         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10891         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10892         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10893         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10894         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10895         (procfs_remove_hw_breakpoint, procfs_resume)
10896         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10897         (procfs_kill_inferior, procfs_store_registers)
10898         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10899         as methods of nto_procfs_target.
10900         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10901         (nto_native_ops): Delete.
10902         (procfs_open, procfs_native_open): Delete.
10903         (nto_native_ops): Now an nto_procfs_target_native.
10904         (init_procfs_targets): Adjust to C++ification.
10905         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10906         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10907         Refactor as methods of nto_procfs_target.
10908
10909         * go32-nat.c (go32_nat_target): New class.
10910         (the_go32_nat_target): New.
10911         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10912         (go32_store_registers, go32_xfer_partial, go32_files_info)
10913         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10914         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10915         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10916         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10917         (go32_target): Delete.
10918         (_initialize_go32_nat): Adjust to C++ification.
10919
10920         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10921         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10922         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10923         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10924         gnu_nat_target.
10925         (gnu_target): Delete.
10926         * gnu-nat.h (gnu_target): Delete.
10927         (gnu_nat_target): New class.
10928         * i386-gnu-nat.c (gnu_base_target): New.
10929         (i386_gnu_nat_target): New class.
10930         (the_i386_gnu_nat_target): New.
10931         (_initialize_i386gnu_nat): Adjust to C++ification.
10932
10933 2018-05-02  Pedro Alves  <palves@redhat.com>
10934
10935         * bfd-target.c (target_bfd_xclose): Rename to ...
10936         (target_bfd_close): ... this.
10937         (target_bfd_reopen): Adjust.
10938         * target.c (target_close): Remove references to to_xclose.
10939         * target.h (target_ops::to_xclose): Delete.
10940         (target_ops::to_close): Update comments.
10941
10942 2018-05-02  Pedro Alves  <palves@redhat.com>
10943
10944         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10945         "linux-nat.h".
10946         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10947         * inf-ptrace.c (inf_ptrace_register_u_offset)
10948         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10949         (inf_ptrace_store_register, inf_ptrace_store_registers)
10950         (inf_ptrace_trad_target): Move to ...
10951         * linux-nat-trad.c: ... this new file.
10952         * linux-nat-trad.h: New file.
10953         * linux-nat.c (linux_target_install_ops): Make extern.
10954         (linux_trad_target): Delete.
10955         * linux-nat.h (linux_trad_target): Delete declaration.
10956         (linux_target_install_ops): Declare.
10957         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10958         "linux-nat.h".
10959
10960 2018-05-02  Pedro Alves  <palves@redhat.com>
10961
10962         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10963         procfs_target/add_target here.
10964         * procfs.c (procfs_target): Make static.
10965         (_initialize_procfs): Call add_target here.
10966         * procfs.h (struct target_ops): Remove forward declaration.
10967         (procfs_target): Remove declaration.
10968         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10969
10970 2018-05-02  Pedro Alves  <palves@redhat.com>
10971
10972         * procfs.c (procfs_stopped_by_watchpoint)
10973         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10974         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10975         Forward declare.
10976         (procfs_use_watchpoints): Delete, move contents...
10977         (procfs_target): ... here.
10978         * procfs.h (procfs_use_watchpoints): Delete declaration.
10979         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10980         procfs_use_watchpoints.
10981         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10982         procfs_use_watchpoints.
10983
10984 2018-05-02  Tom Tromey  <tom@tromey.com>
10985
10986         PR python/20084:
10987         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10988         and var_zuinteger_unlimited.
10989         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10990         and PARAM_ZUINTEGER_UNLIMITED.
10991         (set_parameter_value): Handle var_zuinteger and
10992         var_zuinteger_unlimited.
10993         (add_setshow_generic): Likewise.
10994         (parmpy_init): Likewise.
10995
10996 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10997
10998         PR rust/23124
10999         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11000         pointer is not null before dereferencing it.
11001
11002 2018-04-30  Tom Tromey  <tom@tromey.com>
11003
11004         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11005         is_mi_like_p.
11006
11007 2018-04-30  Tom Tromey  <tom@tromey.com>
11008
11009         * breakpoint.c (mention): Remove use of is_mi_like_p.
11010         (print_mention_ranged_breakpoint): Likewise.
11011         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11012         of is_mi_like_p.
11013
11014 2018-04-30  Tom Tromey  <tom@tromey.com>
11015
11016         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11017
11018 2018-04-30  Tom Tromey  <tom@tromey.com>
11019
11020         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11021         (info_spu_event_command): Remove some uses of is_mi_like_p.
11022
11023 2018-04-30  Tom Tromey  <tom@tromey.com>
11024
11025         * python/py-framefilter.c (py_print_single_arg)
11026         (enumerate_locals, py_print_args, py_print_frame): Remove some
11027         uses of is_mi_like_p.
11028
11029 2018-04-30  Tom Tromey  <tom@tromey.com>
11030
11031         * ui-out.c: Update.
11032         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11033         * ui-out.h (ui_out::is_mi_like_p): Now const.
11034         (ui_out::do_is_mi_like_p): Now const.
11035         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11036
11037 2018-04-30  Tom Tromey  <tom@tromey.com>
11038
11039         * varobj.c (varobj_set_visualizer): Use new_reference.
11040         * python/python.c (gdbpy_decode_line): Use new_reference.
11041         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11042         new_reference.
11043
11044 2018-04-30  Tom Tromey  <tom@tromey.com>
11045
11046         * varobj.c (install_new_value): Use new_reference.
11047         * value.h (value_incref): Return void.  Swap intro comment with
11048         value_decref.
11049         * value.c (set_value_parent): Use new_reference.
11050         (value_incref): Return void.  Update intro comment.
11051         (release_value): Use new_reference.
11052         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11053
11054 2018-04-30  Tom Tromey  <tom@tromey.com>
11055
11056         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11057         * gdb_bfd.h (new_bfd_ref): Remove.
11058         (gdb_bfd_open): Update comment.
11059         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11060         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11061         (gdb_bfd_fdopenr): Use new_reference.
11062         * exec.c (exec_file_attach): Use new_reference.
11063
11064 2018-04-30  Tom Tromey  <tom@tromey.com>
11065
11066         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11067         method.
11068
11069 2018-04-30  Tom Tromey  <tom@tromey.com>
11070
11071         * jit.c (jit_read_code_entry): Use type_align.
11072         * i386-tdep.c (i386_gdbarch_init): Don't call
11073         set_gdbarch_long_long_align_bit.
11074         * gdbarch.sh: Remove long_long_align_bit.
11075         * gdbarch.c, gdbarch.h: Rebuild.
11076         * arc-tdep.c (arc_type_align): New function.
11077         (arc_gdbarch_init): Use arc_type_align.  Don't call
11078         set_gdbarch_long_long_align_bit.
11079
11080 2018-04-30  Tom Tromey  <tom@tromey.com>
11081
11082         * rust-lang.c (rust_type_alignment): Remove.
11083         (rust_composite_type): Use type_align.
11084
11085 2018-04-30  Tom Tromey  <tom@tromey.com>
11086
11087         * NEWS: Mention Type.align.
11088         * python/py-type.c (typy_get_alignof): New function.
11089         (type_object_getset): Add "alignof".
11090
11091 2018-04-30  Tom Tromey  <tom@tromey.com>
11092
11093         PR exp/17095:
11094         * NEWS: Update.
11095         * std-operator.def (UNOP_ALIGNOF): New operator.
11096         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11097         New.
11098         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11099         * c-lang.c (c_op_print_tab): Add alignof.
11100         * c-exp.y (ALIGNOF): New token.
11101         (exp): Add "ALIGNOF" production.
11102         (ident_tokens): Add _Alignof and alignof.
11103
11104 2018-04-30  Tom Tromey  <tom@tromey.com>
11105
11106         * i386-tdep.c (i386_type_align): New function.
11107         (i386_gdbarch_init): Update.
11108         * gdbarch.sh (type_align): New method.
11109         * gdbarch.c, gdbarch.h: Rebuild.
11110         * arch-utils.h (default_type_align): Declare.
11111         * arch-utils.c (default_type_align): New function.
11112         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11113         (struct type) <align_log2>: New field.
11114         <instance_flags>: Now a bitfield.
11115         (TYPE_RAW_ALIGN): New macro.
11116         (type_align, type_raw_align, set_type_align): Declare.
11117         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11118         functions.
11119         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11120         (get_alignment, maybe_set_alignment): New functions.
11121         (read_structure_type, read_enumeration_type, read_array_type)
11122         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11123         (read_subrange_type, read_base_type): Set type alignment.
11124
11125 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11126
11127         * dwarf2read.c (read_index_from_section): Use bool.
11128
11129 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11130
11131         PR gdb/22950
11132         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11133         with #ifdef.
11134
11135 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11136
11137         PR build/22873
11138         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11139         last step, and do it atomically.
11140
11141 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11142
11143         * compile/compile-c-types.c (convert_int, convert_float):
11144         Update for C FE v1.
11145
11146 2018-04-27  Tom Tromey  <tom@tromey.com>
11147
11148         PR rust/22545:
11149         * rust-lang.c (rust_inclusive_range_type_p): New function.
11150         (rust_range): Handle inclusive ranges.
11151         (rust_compute_range): Likewise.
11152         * rust-exp.y (struct rust_op) <inclusive>: New field.
11153         (DOTDOTEQ): New constant.
11154         (range_expr): Add "..=" productions.
11155         (operator_tokens): Add "..=" token.
11156         (ast_range): Add "inclusive" parameter.
11157         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11158         ranges.
11159         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11160         bounds values.
11161         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11162         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11163         Update comments.
11164         * expprint.c (print_subexp_standard): Handle new bounds values.
11165         (dump_subexp_body_standard): Likewise.
11166
11167 2018-04-27  Tom Tromey  <tom@tromey.com>
11168
11169         * configure: Rebuild.
11170         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11171         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11172         "OVERRIDE".
11173         (class symbol_needs_eval_context): Likewise.
11174         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11175         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11176         "virtual".
11177         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11178         "override".
11179         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11180         * aarch64-tdep.c (instruction_reader::read): Use "override".
11181         (instruction_reader_test::read): Likewise.
11182         * arm-tdep.c (instruction_reader::read): Use "override".
11183         (instruction_reader_thumb::read): Likewise.
11184
11185 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11186
11187         PR remote/9665
11188         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11189         instead of remote_send.
11190         (remote_send): Remove.
11191
11192 2018-04-26  Pedro Alves  <palves@redhat.com>
11193
11194         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11195         find_function_start_sal instead of find_pc_line.
11196
11197 2018-04-26  Pedro Alves  <palves@redhat.com>
11198
11199         * breakpoint.c (set_breakpoint_location_function): Handle
11200         mst_data_gnu_ifunc.
11201         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11202         * elfread.c (elf_symtab_read): Give data symbols with
11203         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11204         (elf_rel_plt_read): Update comment.
11205         * linespec.c (convert_linespec_to_sals): Handle
11206         mst_data_gnu_ifunc.
11207         (minsym_found): Handle mst_data_gnu_ifunc.
11208         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11209         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11210         * parse.c (find_minsym_type_and_address): Handle
11211         mst_data_gnu_ifunc.
11212         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11213         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11214         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11215         comment.
11216         <mst_data_gnu_ifunc>: New enumerator.
11217
11218 2018-04-26  Pedro Alves  <palves@redhat.com>
11219
11220         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11221         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11222         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11223         Handle it.
11224         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11225         (lookup_minimal_symbol_by_pc): Adjust.
11226         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11227         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11228         * minsyms.h (lookup_msym_prefer): New enum.
11229         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11230         parameter by a lookup_msym_prefer parameter.
11231
11232 2018-04-26  Pedro Alves  <palves@redhat.com>
11233
11234         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11235         ends in "@plt" instead of looking at the symbol's section.
11236
11237 2018-04-26  Pedro Alves  <palves@redhat.com>
11238
11239         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11240         all references.
11241         (find_pc_partial_function_gnu_ifunc): Rename to ...
11242         (find_pc_partial_function): ... this, and remove references to
11243         'is_gnu_ifunc_p'.
11244         (find_pc_partial_function): Delete old implementation.
11245         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11246
11247 2018-04-26  Pedro Alves  <palves@redhat.com>
11248
11249         * linespec.c (struct bound_minimal_symbol_search_key): New.
11250         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11251         skip first line if we found a GNU ifunc minimal symbol by name.
11252         (compare_msymbols): Change parameters to work with a destructured
11253         lhs minsym.
11254         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11255         functions.
11256
11257 2018-04-26  Pedro Alves  <palves@redhat.com>
11258
11259         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11260         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11261         address/name.
11262         (add_location_to_breakpoint): Store the minsym and the objfile in
11263         the breakpoint location.
11264         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11265         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11266         Record the minsym in the sal.
11267         * symtab.h (symtab_and_line) <msymbol>: New field.
11268
11269 2018-04-26  Pedro Alves  <palves@redhat.com>
11270
11271         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11272         unless we actually resolved the ifunc.
11273
11274 2018-04-26  Pedro Alves  <palves@redhat.com>
11275
11276         * c-exp.y (variable production): Prefer ifunc minsyms over
11277         regular function symbols.
11278         * symtab.c (find_gnu_ifunc): New function.
11279         * minsyms.h (lookup_msym_prefer): New enum.
11280         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11281         parameter by a lookup_msym_prefer parameter.
11282         * symtab.h (find_gnu_ifunc): New declaration.
11283
11284 2018-04-26  Pedro Alves  <palves@redhat.com>
11285
11286         * blockframe.c (find_gnu_ifunc_target_type): New function.
11287         (find_function_type): New.
11288         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11289         return a value with a memory address.
11290         (eval_call): For calls to GNU ifunc functions, try to find the
11291         type of the target function from the type that the resolver
11292         returns.
11293         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11294         symbols.
11295         * infcall.c (find_function_return_type): Delete.
11296         (find_function_addr): Add 'function_type' parameter.  For calls to
11297         GNU ifunc functions, try to find the type of the target function
11298         from the type that the resolver returns, and return it via
11299         FUNCTION_TYPE.
11300         (call_function_by_hand_dummy): Adjust to use the function type
11301         returned by find_function_addr.
11302         (find_function_addr): Add 'function_type' parameter and move
11303         description here.
11304         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11305         declarations.
11306
11307 2018-04-26  Pedro Alves  <palves@redhat.com>
11308
11309         * c-exp.y (variable production): Skip finding an alias for ifunc
11310         symbols.
11311
11312 2018-04-26  Pedro Alves  <palves@redhat.com>
11313
11314         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11315
11316 2018-04-25  Pedro Alves  <palves@redhat.com>
11317
11318         * infcmd.c (kill_command): Print the pid as string, not the whole
11319         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11320         message.
11321         * remote.c (remote_detach_1): Print the pid as string, not the
11322         whole thread's ptid.
11323
11324 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11325             Sergio Durigan Junior  <sergiodj@redhat.com>
11326             Pedro Alves  <palves@redhat.com>
11327
11328         * infcmd.c (kill_command): Print message when inferior has
11329         been killed.
11330         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11331         '1'.
11332         (add_inferior): Improve message printed when
11333         'print_inferior_events' is on.
11334         (exit_inferior): Remove message printed when
11335         'print_inferior_events' is on.
11336         (detach_inferior): Improve message printed when
11337         'print_inferior_events' is on.
11338         (initialize_inferiors): Use 'add_inferior_silent' to set
11339         'current_inferior_'.
11340         * inferior.h (print_inferior_events): Declare here as
11341         'extern'.
11342         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11343         '[Detaching...]' messages when 'print_inferior_events' is on.
11344         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11345         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11346         'Detaching after fork from child...', replace it by '... from
11347         parent...'.
11348         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11349         prefix/suffix when printing 'Detaching...' messages.  Print
11350         them when 'print_inferior_events' is on.
11351         * remote.c (remote_detach_1): Print message when detaching
11352         from inferior and '!is_fork_parent'.
11353
11354 2018-04-24  Tom Tromey  <tom@tromey.com>
11355
11356         * cli-out.h: Reindent.
11357
11358 2018-04-24  Tom Tromey  <tom@tromey.com>
11359
11360         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11361         (cli_ui_out::do_field_string): Use fputs_filtered.
11362         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11363
11364 2018-04-23  Tom Tromey  <tom@tromey.com>
11365
11366         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11367         gdb::unique_xmalloc_ptr.
11368
11369 2018-04-23  Tom Tromey  <tom@tromey.com>
11370
11371         * configure: Rebuild.
11372
11373 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11374
11375         PR gdb/23095
11376         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11377         prepare_for_testing.  Set normal_bp to r_debug_state if target
11378         is bsd.
11379
11380 2018-04-21  Pedro Alves  <palves@redhat.com>
11381             Rajendra SY  <rajendra.sy@gmail.com>
11382
11383         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11384         * remote.c (extended_remote_attach): In all-stop mode, mark the
11385         thread as executing.
11386
11387 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11388
11389         * thread.c (thread_apply_all_command): Fix comment.
11390         (thread_command): Fix comment.
11391
11392 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11393
11394         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11395         parameter.
11396         * features/aarch64-core.c (create_feature_aarch64_core):
11397         Regenerate.
11398         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11399         Likewise.
11400         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11401         Likewise.
11402         * features/i386/32bit-avx512.c
11403         (create_feature_i386_32bit_avx512): Likewise.
11404         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11405         Likewise.
11406         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11407         Likewise.
11408         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11409         Likewise.
11410         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11411         Likewise.
11412         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11413         Likewise.
11414         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11415         Likewise.
11416         * features/i386/64bit-avx512.c
11417         (create_feature_i386_64bit_avx512): Likewise.
11418         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11419         Likewise.
11420         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11421         Likewise.
11422         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11423         Likewise.
11424         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11425         Likewise.
11426         * features/i386/64bit-segments.c
11427         (create_feature_i386_64bit_segments): Likewise.
11428         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11429         Likewise.
11430         * features/i386/x32-core.c
11431         (create_feature_i386_x32_core): Likewise.
11432         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11433         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11434         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11435         * target-descriptions.c: In generated code, don't pass xml
11436         filename.
11437
11438 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11439
11440         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11441         (print_xml_feature::visit_post): Likewise.
11442         (print_xml_feature::visit): Likewise.
11443         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11444         (print_xml_feature): Add new class.
11445         * regformats/regdat.sh: Null xmltarget on feature targets.
11446         * target-descriptions.c (struct target_desc): Add xmltarget.
11447         (maintenance_check_tdesc_xml_convert): Add unittest function.
11448         (tdesc_get_features_xml): Add function to get xml.
11449         (maintenance_check_xml_descriptions): Test xml generation.
11450         * xml-tdesc.c (string_read_description_xml): Add function.
11451         * xml-tdesc.h (string_read_description_xml): Add declaration.
11452
11453 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11454
11455         * features/Makefile: Add feature marker to targets with new style
11456         target descriptions.
11457         * regformats/aarch64.dat: Regenerate.
11458         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11459         * regformats/i386/amd64-avx-linux.dat: Likewise.
11460         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11461         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11462         * regformats/i386/amd64-linux.dat: Likewise.
11463         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11464         * regformats/i386/amd64.dat: Likewise.
11465         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11466         * regformats/i386/i386-avx-linux.dat: Likewise.
11467         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11468         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11469         * regformats/i386/i386-linux.dat: Likewise.
11470         * regformats/i386/i386-mmx-linux.dat: Likewise.
11471         * regformats/i386/i386-mpx-linux.dat: Likewise.
11472         * regformats/i386/i386.dat: Likewise.
11473         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11474         * regformats/i386/x32-avx-linux.dat: Likewise.
11475         * regformats/i386/x32-linux.dat: Likewise.
11476         * regformats/tic6x-c62x-linux.dat: Likewise.
11477         * regformats/tic6x-c64x-linux.dat: Likewise.
11478         * regformats/tic6x-c64xp-linux.dat: Likewise.
11479         * regformats/regdat.sh: Parse feature marker.
11480
11481 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11482
11483         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11484         (tdesc_osabi_name): Likewise.
11485         * target-descriptions.c (tdesc_architecture_name): Add new
11486         function.
11487         (tdesc_osabi_name): Likewise.
11488
11489 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11490
11491         * common/tdesc.c (tdesc_predefined_type): Move to here.
11492         (tdesc_named_type): Likewise.
11493         (tdesc_create_vector): Likewise.
11494         (tdesc_create_struct): Likewise.
11495         (tdesc_set_struct_size): Likewise.
11496         (tdesc_create_union): Likewise.
11497         (tdesc_create_flags): Likewise.
11498         (tdesc_create_enum): Likewise.
11499         (tdesc_add_field): Likewise.
11500         (tdesc_add_typed_bitfield): Likewise.
11501         (tdesc_add_bitfield): Likewise.
11502         (tdesc_add_flag): Likewise.
11503         (tdesc_add_enum_value): Likewise.
11504         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11505         (struct tdesc_type_vector): Likewise.
11506         (struct tdesc_type_field): Likewise.
11507         (struct tdesc_type_with_fields): Likewise.
11508         (tdesc_create_enum): Add declaration.
11509         (tdesc_add_typed_bitfield): Likewise.
11510         (tdesc_add_enum_value): Likewise.
11511         * target-descriptions.c (tdesc_type_field): Move from here.
11512         (tdesc_type_builtin): Likewise.
11513         (tdesc_type_vector): Likewise.
11514         (tdesc_type_with_fields): Likewise.
11515         (tdesc_predefined_types): Likewise.
11516         (tdesc_named_type): Likewise.
11517         (tdesc_create_vector): Likewise.
11518         (tdesc_create_struct): Likewise.
11519         (tdesc_set_struct_size): Likewise.
11520         (tdesc_create_union): Likewise.
11521         (tdesc_create_flags): Likewise.
11522         (tdesc_create_enum): Likewise.
11523         (tdesc_add_field): Likewise.
11524         (tdesc_add_typed_bitfield): Likewise.
11525         (tdesc_add_bitfield): Likewise.
11526         (tdesc_add_flag): Likewise.
11527         (tdesc_add_enum_value): Likewise.
11528         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11529         (tdesc_add_typed_bitfield): Likewise.
11530         (tdesc_add_enum_value): Likewise.
11531
11532 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11533
11534         * common/tdesc.c (tdesc_feature::accept): Move to here.
11535         (tdesc_feature::operator==): Likewise.
11536         (tdesc_create_reg): Likewise.
11537         * common/tdesc.h (tdesc_type_kind): Likewise.
11538         (struct tdesc_type): Likewise.
11539         (struct tdesc_feature): Likewise.
11540         * regformats/regdat.sh: Create a feature.
11541         * target-descriptions.c (tdesc_type_kind): Move from here.
11542         (tdesc_type): Likewise.
11543         (tdesc_type_up): Likewise.
11544         (tdesc_feature): Likewise.
11545         (tdesc_create_reg): Likewise.
11546
11547 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11548
11549         * Makefile.in: Add arch/tdesc.c
11550         * common/tdesc.c: New file.
11551         * common/tdesc.h (tdesc_element_visitor): Move to here.
11552         (tdesc_element): Likewise.
11553         (tdesc_reg): Likewise.
11554         (tdesc_reg_up): Likewise.
11555         * regformats/regdef.h (reg): Add offset to constructors.
11556         * target-descriptions.c (tdesc_element_visitor): Move from here.
11557         (tdesc_element): Likewise.
11558         (tdesc_reg): Likewise.
11559         (tdesc_reg_up): Likewise.
11560
11561 2018-04-17  Tom Tromey  <tom@tromey.com>
11562
11563         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11564         discriminant field.
11565
11566 2018-04-17  Tom Tromey  <tom@tromey.com>
11567
11568         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11569
11570 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11571
11572         * symtab.c (print_symbol_info): Skip printing filename and line
11573         number when `last' is NULL.
11574         (symtab_symbol_info): Use empty string instead of NULL for first
11575         invocation of print_symbol_info.
11576         (rbreak_command): Pass NULL to `last' parameter of
11577         print_symbol_info.
11578
11579 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11580
11581         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11582         instead of nullptr.
11583
11584 2018-04-16  Pedro Alves  <palves@redhat.com>
11585
11586         * MAINTAINERS (sh): Remove.
11587         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11588         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11589         (ALLDEPFILES): Remove sh64-tdep.c.
11590         * NEWS: Mentions that support for SH-5/SH64 is removed.
11591         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11592         (sh*-*-openbsd*): Ditto.
11593         (sh64-*-elf*): Remove.
11594         (sh*): Remove.
11595         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11596         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11597         * sh-tdep.c: No longer include "sh64-tdep.h".
11598         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11599         * sh64-tdep.c, sh64-tdep.h: Remove files.
11600
11601 2018-04-16  Pedro Alves  <palves@redhat.com>
11602
11603         * MAINTAINERS: Remove m88k.
11604         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11605         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11606         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11607         * NEWS: Mention that support for m88k was removed.
11608         * configure.host (m88*-*-*): Remove support.
11609         * configure.nat (m88k-*-*): Remove support.
11610         * configure.tgt (m88*-*-openbsd*): Remove.
11611         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11612
11613 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11614
11615         * configure.tgt (x86_tobjs): New variable.
11616         (amd64_tobjs, i386_tobjs): Use it.
11617
11618 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11619
11620         * symtab.c (print_symbol_info): Precede the symbol definition by
11621         the line number when available.
11622         * NEWS: Advertise this enhancement.
11623
11624 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11625
11626         * NEWS (New options): announce set/show record btrace cpu.
11627         * btrace.c: Include record-btrace.h.
11628         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11629         the vendor is unknown.
11630         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11631         Maybe overwrite the btrace configuration's cpu.
11632         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11633         (btrace_fetch): Add cpu parameter.  Update callers.
11634         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11635         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11636         errata workarounds if the vendor is unknown.
11637         * python/py-record-btrace.c: Include record-btrace.h.
11638         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11639         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11640         * record-btrace.c (record_btrace_cpu_state_kind): New.
11641         (record_btrace_cpu): New.
11642         (set_record_btrace_cpu_cmdlist): New.
11643         (record_btrace_get_cpu): New.
11644         (require_btrace_thread, record_btrace_info)
11645         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11646         (cmd_set_record_btrace_cpu_none): New.
11647         (cmd_set_record_btrace_cpu_auto): New.
11648         (cmd_set_record_btrace_cpu): New.
11649         (cmd_show_record_btrace_cpu): New.
11650         (_initialize_record_btrace): Initialize set/show record btrace cpu
11651         commands.
11652         * record-btrace.h (record_btrace_get_cpu): New.
11653
11654 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11655
11656         * record.c (set_record_command): Fix typo in message.
11657
11658 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11659
11660         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11661
11662 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11663
11664         * infrun.c (process_event_stop_test): Call
11665         gdbarch_in_indirect_branch_thunk.
11666         * gdbarch.sh (in_indirect_branch_thunk): New.
11667         * gdbarch.c: Regenerated.
11668         * gdbarch.h: Regenerated.
11669         * x86-tdep.h: New.
11670         * x86-tdep.c: New.
11671         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11672         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11673         (ALLDEPFILES): Add x86-tdep.c.
11674         * arch-utils.h (default_in_indirect_branch_thunk): New.
11675         * arch-utils.c (default_in_indirect_branch_thunk): New.
11676         * i386-tdep: Include x86-tdep.h.
11677         (i386_in_indirect_branch_thunk): New.
11678         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11679         function.
11680         * amd64-tdep: Include x86-tdep.h.
11681         (amd64_in_indirect_branch_thunk): New.
11682         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11683
11684 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11685
11686         PR gdb/23053
11687         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11688         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11689         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11690         regression.
11691
11692 2018-04-12  Tom Tromey  <tom@tromey.com>
11693
11694         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11695         (rust_evaluate_subexp): Likewise.
11696
11697 2018-04-12  Pedro Alves  <palves@redhat.com>
11698
11699         * procfs.c (procfs_detach): Make forward declaration's prototype
11700         match definition's protototype.
11701         (proc_get_LDT_entry): Remove stale do_cleanups call.
11702
11703 2018-04-12  Pedro Alves  <palves@redhat.com>
11704
11705         * target.h (target_ops::to_has_exited): Delete.
11706         (target_has_exited): Delete.
11707         * target-delegates.c: Regenerate.
11708
11709 2018-04-11  Pedro Alves  <palves@redhat.com>
11710
11711         * target.c (fileio_fh_t::t): Add comment.
11712         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11713         (target_fileio_close): Handle a NULL target.
11714         (invalidate_fileio_fh): New.
11715         (target_close): Call it.
11716         * remote.c (remote_hostio_send_command): No longer check whether
11717         remote_desc is open.
11718
11719 2018-04-11  Pedro Alves  <palves@redhat.com>
11720
11721         * target.c (fileio_fh_t): Make it a named struct instead of a
11722         typedef.
11723         (fileio_fh_t::is_closed): New method.
11724         (DEF_VEC_O (fileio_fh_t)): Remove.
11725         (fileio_fhandles): Now a std::vector.
11726         (is_closed_fileio_fh): Delete.
11727         (acquire_fileio_fd): Adjust.  Rename parameters.
11728         (release_fileio_fd): Adjust.
11729         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11730         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11731         (target_fileio_close): Adjust.
11732
11733 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11734
11735         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11736         index.
11737
11738 2018-04-10  Pedro Alves  <palves@redhat.com>
11739
11740         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11741         (scoped_finish_thread_state): New class.
11742         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11743         cleanup.
11744         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11745         (fetch_inferior_event, normal_stop): Likewise.
11746         * thread.c (finish_thread_state_cleanup): Delete.
11747
11748 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11749             Pedro Alves  <palves@redhat.com>
11750
11751         * value.c: Include "selftest.h" and "common/array-view.h".
11752         (struct range) <operator ==>: New.
11753         (test_ranges_contain): New.
11754         (check_ranges_vector): New.
11755         (test_insert_into_bit_range_vector): New.
11756         (_initialize_values): Register selftests.
11757         * common/array-view.h (operator==, operator!=): New.
11758
11759 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11760
11761         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11762         an iterator.
11763         * inline-frame.c: Include <algorithm>.
11764         (struct inline_state): Add constructor.
11765         (inline_state_s): Remove.
11766         (DEF_VEC_O(inline_state_s)): Remove.
11767         (inline_states): Change type to std::vector.
11768         (find_inline_frame_state): Adjust to std::vector.
11769         (allocate_inline_frame_state): Remove.
11770         (clear_inline_frame_state): Adjust to std::vector.
11771         (skip_inline_frames): Adjust to std::vector.
11772
11773 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11774
11775         * tracepoint.h (struct trace_state_variable): Add constructor.
11776         <name>: Change type to std::string.
11777         * tracepoint.c (tsv_s): Remove.
11778         (DEF_VEC_O(tsv_s)): Remove.
11779         (tvariables): Change to std::vector.
11780         (create_trace_state_variable): Adjust to std::vector.
11781         (find_trace_state_variable): Likewise.
11782         (find_trace_state_variable_by_number): Likewise.
11783         (delete_trace_state_variable): Likewise.
11784         (trace_variable_command): Adjust to std::string.
11785         (delete_trace_variable_command): Likewise.
11786         (tvariables_info_1): Adjust to std::vector.
11787         (save_trace_state_variables): Likewise.
11788         (start_tracing): Likewise.
11789         (merge_uploaded_trace_state_variables): Adjust to std::vector
11790         and std::string.
11791         * target.h (struct target_ops)
11792         <to_download_trace_state_variable>: Pass reference to
11793         trace_state_variable.
11794         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11795         * target-delegates.c: Re-generate.
11796         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11797         (mi_tsv_deleted): Likewise.
11798         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11799         * remote.c (remote_download_trace_state_variable): Change
11800         pointer to reference and adjust.
11801         * make-target-delegates (parse_argtypes): Handle references.
11802         (write_function_header): Likewise.
11803         (munge_type): Likewise.
11804
11805 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11806
11807         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11808         string_view-selftests.c.
11809         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11810         testsuite.
11811         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11812         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11813         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11814         * unittests/basic_string_view/element_access/char/1.cc:
11815         Likewise.
11816         * unittests/basic_string_view/element_access/char/empty.cc:
11817         Likewise.
11818         * unittests/basic_string_view/element_access/char/front_back.cc:
11819         Likewise.
11820         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11821         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11822         Likewise.
11823         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11824         Likewise.
11825         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11826         Likewise.
11827         * unittests/basic_string_view/operations/compare/char/1.cc:
11828         Likewise.
11829         * unittests/basic_string_view/operations/compare/char/13650.cc:
11830         Likewise.
11831         * unittests/basic_string_view/operations/copy/char/1.cc:
11832         Likewise.
11833         * unittests/basic_string_view/operations/data/char/1.cc:
11834         Likewise.
11835         * unittests/basic_string_view/operations/find/char/1.cc:
11836         Likewise.
11837         * unittests/basic_string_view/operations/find/char/2.cc:
11838         Likewise.
11839         * unittests/basic_string_view/operations/find/char/3.cc:
11840         Likewise.
11841         * unittests/basic_string_view/operations/find/char/4.cc:
11842         Likewise.
11843         * unittests/basic_string_view/operations/rfind/char/1.cc:
11844         Likewise.
11845         * unittests/basic_string_view/operations/rfind/char/2.cc:
11846         Likewise.
11847         * unittests/basic_string_view/operations/rfind/char/3.cc:
11848         Likewise.
11849         * unittests/basic_string_view/operations/substr/char/1.cc:
11850         Likewise.
11851         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11852         * unittests/string_view-selftests.c: New file.
11853
11854 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11855
11856         * unittests/basic_string_view/capacity/1.cc: New file.
11857         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11858         * unittests/basic_string_view/cons/char/1.cc: New file.
11859         * unittests/basic_string_view/cons/char/2.cc: New file.
11860         * unittests/basic_string_view/cons/char/3.cc: New file.
11861         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11862         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11863         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11864         * unittests/basic_string_view/element_access/char/1.cc: New file.
11865         * unittests/basic_string_view/element_access/char/2.cc: New file.
11866         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11867         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11868         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11869         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11870         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11871         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11872         * unittests/basic_string_view/include.cc: New file.
11873         * unittests/basic_string_view/inserters/char/1.cc: New file.
11874         * unittests/basic_string_view/inserters/char/2.cc: New file.
11875         * unittests/basic_string_view/inserters/char/3.cc: New file.
11876         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11877         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11878         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11879         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11880         * unittests/basic_string_view/literals/types.cc: New file.
11881         * unittests/basic_string_view/literals/values.cc: New file.
11882         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11883         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11884         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11885         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11886         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11887         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11888         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11889         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11890         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11891         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11892         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11893         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11894         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11895         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11896         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11897         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11898         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11899         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11900         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11901         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11902         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11903         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11904         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11905         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11906         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11907         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11908         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11909         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11910         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11911         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11912         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11913         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11914         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11915         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11916         * unittests/basic_string_view/operators/char/2.cc: New file.
11917         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11918         * unittests/basic_string_view/range_access/char/1.cc: New file.
11919         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11920         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11921         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11922         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11923         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11924         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11925         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11926         * unittests/basic_string_view/typedefs.cc: New file.
11927         * unittests/basic_string_view/types/1.cc: New file.
11928
11929 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11930
11931         * common/gdb_string_view.h: Remove libstdc++ implementation
11932         details, adjust to gdb reality.
11933         * common/gdb_string_view.tcc: Likewise.
11934         * cli/cli-script.c (struct string_view): Remove.
11935         (user_args) <m_args>: Change element type to gdb::string_view.
11936         (user_args::insert_args): Adjust.
11937
11938 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11939
11940         * common/gdb_string_view.h: New file.
11941         * common/gdb_string_view.tcc: New file.
11942
11943 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11944
11945         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11946         * configure: Re-generate.
11947
11948 2018-04-09  Pedro Alves  <palves@redhat.com>
11949
11950         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11951         (set_target_gdbarch): Call
11952         gdb::observers::architecture_changed.notify instead of
11953         observer_notify_architecture_changed.
11954
11955 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11956
11957         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11958         (do_restore_current_traceframe_cleanup): Remove.
11959         (restore_current_traceframe_cleanup_dtor): Remove.
11960         (make_cleanup_restore_current_traceframe): Remove.
11961         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11962         New.
11963         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11964         * infrun.c (fetch_inferior_event): Use
11965         scoped_restore_current_traceframe.
11966
11967 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11968
11969         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11970         Remove.
11971         <n_allocated_type_units>: Remove.
11972         <all_type_units>: Change to std::vector.
11973         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11974         to std::vector change.
11975         (dwarf2_per_objfile::get_cutu): Likewise.
11976         (dwarf2_per_objfile::get_tu): Likewise.
11977         (create_signatured_type_table_from_index): Likewise.
11978         (create_signatured_type_table_from_debug_names): Likewise.
11979         (dw2_symtab_iter_next): Likewise.
11980         (dw2_print_stats): Likewise.
11981         (dw2_expand_all_symtabs): Likewise.
11982         (dw2_expand_marked_cus): Likewise.
11983         (dw2_debug_names_iterator::next): Likewise.
11984         (dwarf2_initialize_objfile): Likewise.
11985         (add_signatured_type_cu_to_table): Likewise.
11986         (create_all_type_units): Likewise.
11987         (add_type_unit): Likewise.
11988         (struct tu_abbrev_offset): Add constructor.
11989         (build_type_psymtabs_1): Adjust to std::vector change.
11990         (print_tu_stats): Likewise.
11991         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11992         (write_debug_names): Likewise.
11993
11994 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11995
11996         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11997         Make an std::vector.
11998         <n_comp_units>: Remove.
11999         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12000         to std::vector change.
12001         (dwarf2_per_objfile::get_cutu): Likewise.
12002         (dwarf2_per_objfile::get_cu): Likewise.
12003         (create_cus_from_index): Likewise.
12004         (create_addrmap_from_index): Likewise.
12005         (create_addrmap_from_aranges): Likewise.
12006         (dwarf2_read_index): Likewise.
12007         (dw2_find_last_source_symtab): Likewise.
12008         (dw2_map_symtabs_matching_filename): Likewise.
12009         (dw2_symtab_iter_next): Likewise.
12010         (dw2_print_stats): Likewise.
12011         (dw2_expand_all_symtabs): Likewise.
12012         (dw2_expand_symtabs_with_fullname): Likewise.
12013         (dw2_expand_marked_cus): Likewise.
12014         (dw2_map_symbol_filenames): Likewise.
12015         (create_cus_from_debug_names): Likewise.
12016         (dwarf2_read_debug_names): Likewise.
12017         (dw2_debug_names_iterator::next): Likewise.
12018         (dwarf2_initialize_objfile): Likewise.
12019         (set_partial_user): Likewise.
12020         (dwarf2_build_psymtabs_hard): Likewise.
12021         (read_comp_units_from_section): Remove arguments, adjust to
12022         std::vector change.
12023         (create_all_comp_units): Adjust to std::vector and
12024         read_comp_units_from_section changes.
12025         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12026         change.
12027         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12028         (psyms_seen_size): Likewise.
12029         (write_gdbindex): Likewise.
12030         (write_debug_names): Likewise.
12031
12032 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12033
12034         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12035         with dwarf2_per_objfile.
12036         (create_cus_from_index): Likewise.
12037         (create_signatured_type_table_from_index): Likewise.
12038         (dwarf2_read_index): Likewise.
12039         (dwarf2_initialize_objfile): Likewise.
12040         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12041         per_cu rather than get_dwarf2_per_objfile.
12042
12043 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12044
12045         * dwarf2read.h (struct signatured_type): Forward declare.
12046         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12047         New methods.
12048         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12049         (dw2_get_cutu): ...this.
12050         (dwarf2_per_objfile::get_cu): Rename from...
12051         (dw2_get_cu): ...this.
12052         (dwarf2_per_objfile::get_tu): New.
12053         (create_addrmap_from_index): Adjust.
12054         (create_addrmap_from_aranges): Adjust.
12055         (dw2_find_last_source_symtab): Adjust.
12056         (dw2_map_symtabs_matching_filename): Adjust.
12057         (dw2_symtab_iter_next): Adjust.
12058         (dw2_print_stats): Adjust.
12059         (dw2_expand_all_symtabs): Adjust.
12060         (dw2_expand_symtabs_with_fullname): Adjust.
12061         (dw2_expand_marked_cus): Adjust.
12062         (dw_expand_symtabs_matching_file_matcher): Adjust.
12063         (dw2_map_symbol_filenames): Adjust.
12064         (dw2_debug_names_iterator::next): Adjust.
12065         (dwarf2_initialize_objfile): Adjust.
12066         (set_partial_user): Adjust.
12067         (dwarf2_build_psymtabs_hard): Adjust.
12068
12069 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12070
12071         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12072         Remove unused variables.
12073         (dw2_map_symtabs_matching_filename): Likewise.
12074         (dwarf2_record_block_ranges): Likewise.
12075         (dwarf2_read_addr_index): Likewise.
12076         (follow_die_offset): Likewise.
12077
12078 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12079
12080         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12081         to symbol_file_add_main.
12082
12083 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12084
12085         PR mi/22299
12086         * mi/mi-console.c (do_fputc_async_safe): New.
12087         (mi_console_file::write_async_safe): New.
12088         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12089         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12090         New.
12091         * ui-file.c (ui_file::putstrn): Adjust call to
12092         fputstrn_unfiltered.
12093         * utils.c (printchar): Replace do_fputs and do_fprintf
12094         parameters by do_fputc.
12095         (fputstr_filtered): Adjust call to printchar.
12096         (fputstr_unfiltered): Likewise.
12097         (fputstrn_filtered): Likewise.
12098         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12099         printchar.
12100         * utils.h (do_fputc_ftype): New typedef.
12101         (fputstrn_unfiltered): Add do_fputc parameter.
12102
12103 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12104
12105         * regformats/i386/i386-avx.dat: Remove.
12106
12107 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12108
12109         PR gdb/22979
12110         * amd64-tdep.c (amd64_none_init_abi): New function.
12111         (amd64_x32_none_init_abi): New function.
12112         (_initialize_amd64_tdep): Register handlers for x86-64 and
12113         x64_32 with GDB_OSABI_NONE.
12114         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12115         GDB_OSABI_NONE osabi.
12116
12117 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12118
12119         PR gdb/22980
12120         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12121         GDB_OSABI_NONE.
12122         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12123         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12124
12125 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12126
12127         * common/byte-vector.h (char_vector): New type.
12128         * target.h (target_read_alloc): Return
12129         gdb::optional<byte_vector>.
12130         (target_read_stralloc): Return gdb::optional<char_vector>.
12131         (target_get_osdata): Return gdb::optional<char_vector>.
12132         * target.c (target_read_alloc_1): Templatize.  Replacement
12133         manual memory management with vector.
12134         (target_read_alloc): Change return type, adjust.
12135         (target_read_stralloc): Change return type, adjust.
12136         (target_get_osdata): Change return type, adjust.
12137         * auxv.c (struct auxv_info) <length>: Remove.
12138         <data>: Change type to gdb::optional<byte_vector>.
12139         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12140         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12141         (target_auxv_search): Adjust.
12142         (fprint_target_auxv): Adjust.
12143         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12144         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12145         (linux_make_corefile_notes): Adjust.
12146         * osdata.c (get_osdata): Adjust.
12147         * remote.c (remote_get_threads_with_qxfer): Adjust.
12148         (remote_memory_map): Adjust.
12149         (remote_traceframe_info): Adjust.
12150         (btrace_read_config): Adjust.
12151         (remote_read_btrace): Adjust.
12152         (remote_pid_to_exec_file): Adjust.
12153         * solib-aix.c (solib_aix_get_library_list): Adjust.
12154         * solib-dsbt.c (decode_loadmap): Don't free buf.
12155         (dsbt_get_initial_loadmaps): Adjust.
12156         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12157         * solib-target.c (solib_target_current_sos): Adjust.
12158         * tracepoint.c (sdata_make_value): Adjust.
12159         * xml-support.c (xinclude_start_include): Adjust.
12160         (xml_fetch_content_from_file): Adjust.
12161         * xml-support.h (xml_fetch_another): Change return type.
12162         (xml_fetch_content_from_file): Change return type.
12163         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12164         * xml-tdesc.c (file_read_description_xml): Adjust.
12165         (fetch_available_features_from_target): Change return type.
12166         (target_fetch_description_xml): Adjust.
12167         (target_read_description_xml): Adjust.
12168
12169 2018-04-06  Tom Tromey  <tom@tromey.com>
12170
12171         * value.c (~value): Update.
12172         (struct value) <contents>: Now unique_xmalloc_ptr.
12173         (value_contents_bits_eq, allocate_value_contents)
12174         (value_contents_raw, value_contents_all_raw)
12175         (value_contents_for_printing, value_contents_for_printing_const)
12176         (set_value_enclosing_type): Update.
12177
12178 2018-04-06  Tom Tromey  <tom@tromey.com>
12179
12180         * value.c (range_s): Remove typedef, VEC.
12181         (struct range): Add operator<.
12182         (range_lessthan): Remove.
12183         (ranges_contain): Change type.
12184         (~value): Update.
12185         (struct value) <unavailable, optimized_out>: Now std::vector.
12186         (value_entirely_available)
12187         (value_entirely_covered_by_range_vector)
12188         (value_entirely_unavailable, value_entirely_optimized_out):
12189         Update.
12190         (insert_into_bit_range_vector): Change argument type.
12191         (find_first_range_overlap): Likewise.
12192         (struct ranges_and_idx, value_contents_bits_eq)
12193         (require_not_optimized_out, require_available): Update.
12194         (ranges_copy_adjusted): Change argument types.
12195         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12196
12197 2018-04-06  Tom Tromey  <tom@tromey.com>
12198
12199         * value.c (~value): Update.
12200         (struct value) <parent>: Now a value_ref_ptr.
12201         (value_parent, set_value_parent, value_address, value_copy):
12202         Update.
12203
12204 2018-04-06  Tom Tromey  <tom@tromey.com>
12205
12206         * value.c (struct value): Add constructor, destructor, and member
12207         initializers.
12208         (allocate_value_lazy, value_decref): Update.
12209
12210 2018-04-06  Tom Tromey  <tom@tromey.com>
12211
12212         * value.c (struct value) <released, next>: Remove.
12213         (all_values): Now a std::vector.
12214         (allocate_value_lazy): Update.
12215         (value_next): Remove.
12216         (value_mark, value_free_to_mark, release_value)
12217         (value_release_to_mark): Update.
12218
12219 2018-04-06  Tom Tromey  <tom@tromey.com>
12220
12221         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12222         (free_value_chain): Remove.
12223         * value.c (free_value_chain): Remove.
12224         (value_release_to_mark): Return a std::vector.
12225         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12226         std::vector.
12227         (check_condition): Update.
12228         * eval.c (fetch_subexp_value): Change "val_chain" to a
12229         std::vector.
12230         * breakpoint.c (update_watchpoint): Update.
12231         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12232
12233 2018-04-06  Tom Tromey  <tom@tromey.com>
12234
12235         * value.h (free_all_values): Remove.
12236         * value.c (free_all_values): Remove.
12237
12238 2018-04-06  Tom Tromey  <tom@tromey.com>
12239
12240         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12241         (value_history_chain, value_history_count): Remove.
12242         (value_history): New global.
12243         (record_latest_value, access_value_history, show_values)
12244         (preserve_values): Update.
12245
12246 2018-04-06  Tom Tromey  <tom@tromey.com>
12247
12248         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12249         * varobj.c (varobj_set_display_format, varobj_set_value)
12250         (install_default_visualizer, construct_visualizer)
12251         (install_new_value, ~varobj, varobj_get_value_type)
12252         (my_value_of_variable, varobj_editable_p): Update.
12253         * c-varobj.c (c_describe_child, c_value_of_variable)
12254         (cplus_number_of_children, cplus_describe_child): Update.
12255         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12256         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12257         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12258
12259 2018-04-06  Tom Tromey  <tom@tromey.com>
12260
12261         * printcmd.c (last_examine_address): Change type to
12262         value_ref_ptr.
12263         (do_examine, x_command): Update.
12264
12265 2018-04-06  Tom Tromey  <tom@tromey.com>
12266
12267         * value.c (release_value): Update.
12268         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12269         (struct bpstats) <val>: Now a value_ref_ptr.
12270         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12271         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12272         (~watchpoint, print_it_watchpoint, watch_command_1)
12273         (invalidate_bp_value_on_memory_change): Update.
12274
12275 2018-04-06  Tom Tromey  <tom@tromey.com>
12276
12277         * varobj.c (varobj_clear_saved_item)
12278         (update_dynamic_varobj_children, install_new_value, ~varobj):
12279         Update.
12280         * value.h (value_incref): Move declaration earlier.
12281         (value_decref): Rename from value_free.
12282         (struct value_ref_policy): New.
12283         (value_ref_ptr): New typedef.
12284         (struct value_deleter): Remove.
12285         (gdb_value_up): Remove typedef.
12286         (release_value): Change return type.
12287         (release_value_or_incref): Remove.
12288         * value.c (set_value_parent): Update.
12289         (value_incref): Change return type.
12290         (value_decref): Rename from value_free.
12291         (value_free_to_mark, free_all_values, free_value_chain): Update.
12292         (release_value): Return value_ref_ptr.
12293         (release_value_or_incref): Remove.
12294         (record_latest_value, set_internalvar, clear_internalvar):
12295         Update.
12296         * stack.c (info_frame_command): Don't call value_free.
12297         * python/py-value.c (valpy_dealloc, valpy_new)
12298         (value_to_value_object): Update.
12299         * printcmd.c (do_examine): Update.
12300         * opencl-lang.c (lval_func_free_closure): Update.
12301         * mi/mi-main.c (register_changed_p): Don't call value_free.
12302         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12303         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12304         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12305         value_free.
12306         * guile/scm-value.c (vlscm_free_value_smob)
12307         (vlscm_scm_from_value): Update.
12308         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12309         (frame_unwind_register_unsigned, get_frame_register_bytes)
12310         (put_frame_register_bytes): Don't call value_free.
12311         * findvar.c (address_from_register): Don't call value_free.
12312         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12313         * dwarf2loc.c (entry_data_value_free_closure)
12314         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12315         (dwarf2_evaluate_loc_desc_full): Update.
12316         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12317         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12318         (~watchpoint, watch_command_1)
12319         (invalidate_bp_value_on_memory_change): Update.
12320         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12321
12322 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12323
12324         PR gdb/23022
12325         * warning.m4: Add -Wno-error=deprecated-register.
12326         * configure: Re-generate.
12327
12328 2018-04-05  Tom Tromey  <tom@tromey.com>
12329
12330         * linespec.h: Remove include of "vec.h".
12331
12332 2018-04-05  Tom Tromey  <tom@tromey.com>
12333
12334         * linespec.c (typep): Remove typedef.
12335         (find_methods, find_superclass_methods): Take a std::vector.
12336         (find_method): Use std::vector.
12337
12338 2018-04-05  Tom Tromey  <tom@tromey.com>
12339
12340         * utils.c (compare_strings): Remove.
12341         * utils.h (compare_strings): Remove.
12342         * objc-lang.h (find_imps): Update.
12343         * objc-lang.c (find_methods): Take a std::vector.
12344         (uniquify_strings, find_imps): Likewise.
12345         * linespec.c (find_methods): Take a std::vector.
12346         (decode_objc): Use std::vector.
12347         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12348         a std::vector.
12349         (find_method, find_function_symbols): Use std::vector.
12350
12351 2018-04-05  Tom Tromey  <tom@tromey.com>
12352
12353         * completer.c (completion_tracker::completion_tracker): Remove
12354         cast.
12355         (completion_tracker::discard_completions): Likewise.
12356         * breakpoint.c (ambiguous_names_p): Remove cast.
12357         * ada-lang.c (_initialize_ada_language): Remove cast.
12358         * utils.h (streq): Update.
12359         (streq_hash): Add new declaration.
12360         * utils.c (streq): Return bool.
12361         (streq_hash): New function.
12362
12363 2018-04-05  Tom Tromey  <tom@tromey.com>
12364
12365         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12366         Remove a string copy.
12367
12368 2018-04-05  Tom Tromey  <tom@tromey.com>
12369
12370         * linespec.c (filter_results): Use std::vector.
12371         (decode_line_2, decode_line_full): Update.
12372
12373 2018-04-05  Tom Tromey  <tom@tromey.com>
12374
12375         * linespec.c (canonical_to_fullform): Return std::string.
12376         (filter_results): Update.
12377         (struct decode_line_2_item): Add constructor.
12378         <fullform, displayform>: Now std::string.
12379         (decode_line_2_compare_items): Now a std::sort comparator.
12380         (decode_line_2): Update.
12381
12382 2018-04-05  Tom Tromey  <tom@tromey.com>
12383
12384         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12385         (unexpected_linespec_error): Update.
12386         (linespec_parse_basic, parse_linespec): Update.
12387
12388 2018-04-05  Tom Tromey  <tom@tromey.com>
12389
12390         * linespec.c (linespec_parse_basic): Reindent.
12391
12392 2018-04-05  Tom Tromey  <tom@tromey.com>
12393
12394         * minsyms.h (iterate_over_minimal_symbols): Update.
12395         * minsyms.c (iterate_over_minimal_symbols): Take a
12396         gdb::function_view.
12397         * linespec.c (struct collect_minsyms): Remove.
12398         (compare_msyms): Now a std::sort comparator.
12399         (add_minsym): Add parameters.
12400         (search_minsyms_for_name): Update.  Use std::vector.
12401
12402 2018-04-03  Tom Tromey  <tom@tromey.com>
12403
12404         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12405         gdb::byte_vector.
12406
12407 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12408
12409         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12410
12411 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12412
12413         PR gdb/16959
12414         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12415         printing static type.
12416
12417 2018-04-01  Tom Tromey  <tom@tromey.com>
12418
12419         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12420         (rs6000_xfer_shared_libraries): Update.
12421
12422 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12423
12424         * common/gdb_vecs.h (char_ptr): Remove.
12425         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12426
12427 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12428
12429         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12430         with std::vector.
12431         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12432
12433 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12434
12435         * tracepoint.h (struct uploaded_tp): Initialize fields.
12436         <actions, step_actions, cmd_strings>: Change type to
12437         std::vector<char *>.
12438         * tracepoint.c (get_uploaded_tp): Allocate with new.
12439         (free_uploaded_tps): Free with delete.
12440         (parse_tracepoint_definition): Adjust to std::vector change.
12441         * breakpoint.c (read_uploaded_action): Likewise.
12442         (create_tracepoint_from_upload): Likewise.
12443         * ctf.c (ctf_write_uploaded_tp): Likewise.
12444         (SET_ARRAY_FIELD): Likewise.
12445         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12446
12447 2018-03-30  Tom Tromey  <tom@tromey.com>
12448
12449         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12450         std::unique_ptr.
12451         (svr4_keep_data_in_core): Update.
12452         (svr4_read_so_list): Update.
12453
12454 2018-03-30  Tom Tromey  <tom@tromey.com>
12455
12456         * windows-nat.c (handle_output_debug_string, handle_exception):
12457         Update.
12458         * target.h (target_read_string): Update.
12459         * target.c (target_read_string): Change "string" to
12460         unique_xmalloc_ptr.
12461         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12462         Update.
12463         * solib-frv.c (frv_current_sos): Update.
12464         * solib-dsbt.c (dsbt_current_sos): Update.
12465         * solib-darwin.c (darwin_current_sos): Update.
12466         * linux-thread-db.c (inferior_has_bug): Update.
12467         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12468         Update.  Remove alloca.
12469         * ada-lang.c (ada_main_name): Update.
12470
12471 2018-03-30  Tom Tromey  <tom@tromey.com>
12472
12473         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12474         (struct dwo_file_deleter): New.
12475         (dwo_file_up): New typedef.
12476         (open_and_init_dwo_file): Use dwo_file_up.
12477         (free_dwo_file_cleanup): Remove.
12478
12479 2018-03-30  Tom Tromey  <tom@tromey.com>
12480
12481         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12482         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12483
12484 2018-03-30  Tom Tromey  <tom@tromey.com>
12485
12486         * dwarf2read.c (class free_cached_comp_units): New class.
12487         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12488         (free_cached_comp_units): Remove function.
12489
12490 2018-03-30  Tom Tromey  <tom@tromey.com>
12491
12492         * utils.h (make_cleanup_unpush_target): Remove.
12493         * inf-ptrace.c (struct target_unpusher): New.
12494         (target_unpush_up) New typedef.
12495         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12496         target_unpush_up.
12497         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12498
12499 2018-03-27  Tom Tromey  <tom@tromey.com>
12500
12501         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12502
12503 2018-03-27  Pedro Alves  <palves@redhat.com>
12504             Tom Tromey  <tom@tromey.com>
12505
12506         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12507         destructor.  Now a class.
12508         (gdb_readline_wrapper_cleanup): Remove function.
12509         (gdb_readline_wrapper): Remove cleanups.
12510
12511 2018-03-27  Tom Tromey  <tom@tromey.com>
12512
12513         * typeprint.h (struct type_print_options) <local_typedefs,
12514         global_typedefs>: Remove "struct" keyword.
12515         (class typedef_hash_table): New class.
12516         (recursively_update_typedef_hash, add_template_parameters)
12517         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12518         (find_typedef_in_hash): Don't declare.
12519         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12520         (typedef_hash_table::recursively_update): Rename from
12521         recursively_update_typedef_hash.  Now a member.
12522         (typedef_hash_table::add_template_parameters): Rename from
12523         add_template_parameters.  Now a member.
12524         (typedef_hash_table::typedef_hash_table): Now a constructor;
12525         rename from create_typedef_hash.
12526         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12527         rename from free_typedef_hash.
12528         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12529         (do_free_global_table): Remove.
12530         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12531         from copy_type_recursive.
12532         (create_global_typedef_table): Remove.
12533         (typedef_hash_table::find_global_typedef): Now a member of
12534         typedef_hash_table.
12535         (typedef_hash_table::find_typedef): Rename from
12536         find_typedef_in_hash; now a member.
12537         (whatis_exp): Update.
12538         * extension.h (struct ext_lang_type_printers): Add constructor and
12539         destructor.
12540         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12541         declare.
12542         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12543         Now a constructor; rename from start_ext_lang_type_printers.
12544         (ext_lang_type_printers): Now a destructor; rename from
12545         free_ext_lang_type_printers.
12546         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12547         Update.
12548         (c_type_print_base_struct_union): Update.  Remove cleanups.
12549
12550 2018-03-27  Tom Tromey  <tom@tromey.com>
12551
12552         * dwarf-index-write.c: Include <cmath>.
12553
12554 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12555
12556         * NEWS: Add entry describing new "set|show varsize-limit" command.
12557         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12558         command.
12559         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12560         "set variable".
12561
12562 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12563
12564         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12565         dwarf-index-write.c
12566         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12567         * dwarf-index-common.c: New file.
12568         * dwarf-index-common.h: New file.
12569         * dwarf-index-write.c: New file.
12570         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12571         (struct dwarf2_section_info): Move from here.
12572         (dwarf2_section_info_def): Likewise.
12573         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12574         (offset_type): Likewise.
12575         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12576         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12577         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12578         (byte_swap): Likewise.
12579         (MAYBE_SWAP): Likewise.
12580         (dwarf2_per_cu_ptr): Likewise.
12581         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12582         (struct tu_stats): Likewise.
12583         (struct dwarf2_per_objfile): Likewise.
12584         (struct dwarf2_per_cu_data): Likewise.
12585         (struct signatured_type): Likewise.
12586         (sig_type_ptr): Likewise.
12587         (DEF_VEC_P (sig_type_ptr)): Likewise.
12588         (INDEX4_SUFFIX): Likewise.
12589         (INDEX5_SUFFIX): Likewise.
12590         (DEBUG_STR_SUFFIX): Likewise.
12591         (dwarf2_read_section): Make non-static.
12592         (mapped_index_string_hash): Move from here.
12593         (dwarf5_djb_hash): Likewise.
12594         (file_write): Likewise.
12595         (class data_buf): Likewise.
12596         (struct symtab_index_entry): Likewise.
12597         (struct mapped_symtab): Likewise.
12598         (find_slot): Likewise.
12599         (hash_expand): Likewise.
12600         (add_index_entry): Likewise.
12601         (uniquify_cu_indices): Likewise.
12602         (class c_str_view): Likewise.
12603         (class c_str_view_hasher): Likewise.
12604         (class vector_hasher): Likewise.
12605         (write_hash_table): Likewise.
12606         (psym_index_map): Likewise.
12607         (struct addrmap_index_data): Likewise.
12608         (add_address_entry): Likewise.
12609         (add_address_entry_worker): Likewise.
12610         (write_address_map): Likewise.
12611         (symbol_kind): Likewise.
12612         (write_psymbols): Likewise.
12613         (struct signatured_type_index_data): Likewise.
12614         (write_one_signatured_type): Likewise.
12615         (recursively_count_psymbols): Likewise.
12616         (recursively_write_psymbols): Likewise.
12617         (class debug_names): Likewise.
12618         (check_dwarf64_offsets): Likewise.
12619         (psyms_seen_size): Likewise.
12620         (write_gdbindex): Likewise.
12621         (write_debug_names): Likewise.
12622         (assert_file_size): Likewise.
12623         (write_psymtabs_to_index): Likewise.
12624         (save_gdb_index_command): Likewise.
12625         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12626         command.
12627         * dwarf2read.h: New file.
12628
12629 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12630
12631         PR gdb/22670
12632         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12633         symbol name if the CU's language stores symbol names in linkage
12634         format.
12635         * language.h (struct language_defn)
12636         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12637         all instances of this struct.
12638
12639 2018-03-26  Tom Tromey  <tom@tromey.com>
12640
12641         * stack.c (backtrace_command_1): Remove verbose code.
12642
12643 2018-03-26  Tom Tromey  <tom@tromey.com>
12644
12645         * python/py-framefilter.c (py_print_type): Don't catch
12646         exceptions.  Return void.
12647         (py_print_value): Likewise.
12648         (py_print_single_arg): Likewise.
12649         (enumerate_args): Don't catch exceptions.
12650         (py_print_args): Likewise.
12651         (py_print_frame): Likewise.
12652         (gdbpy_apply_frame_filter): Catch exceptions here.
12653
12654 2018-03-26  Tom Tromey  <tom@tromey.com>
12655
12656         * stack.c (_initialize_stack): Remove trailing newlines from help
12657         text.  Add "Usage" line to "backtrace" help.
12658
12659 2018-03-26  Tom Tromey  <tom@tromey.com>
12660
12661         PR python/16486:
12662         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12663
12664 2018-03-26  Tom Tromey  <tom@tromey.com>
12665
12666         * python/py-framefilter.c (py_print_single_arg): Return
12667         EXT_LANG_BT_ERROR from catch.
12668
12669 2018-03-26  Tom Tromey  <tom@tromey.com>
12670
12671         PR backtrace/15584:
12672         * stack.c (backtrace_command_1): Move some code into no-filters
12673         "if".
12674
12675 2018-03-26  Tom Tromey  <tom@tromey.com>
12676
12677         * python/py-framefilter.c (throw_quit_or_print_exception): New
12678         function.
12679         (gdbpy_apply_frame_filter): Use it.
12680
12681 2018-03-26  Tom Tromey  <tom@tromey.com>
12682
12683         PR cli/17716:
12684         * python/py-framefilter.c (py_print_type, py_print_value)
12685         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12686         RETURN_MASK_ERROR.
12687
12688 2018-03-26  Tom Tromey  <tom@tromey.com>
12689
12690         * python/py-framefilter.c (enumerate_args): Use
12691         gdb::unique_xmalloc_ptr.
12692
12693 2018-03-26  Tom Tromey  <tom@tromey.com>
12694
12695         * python/py-framefilter.c (py_print_frame): Return
12696         EXT_LANG_BT_OK.
12697         (gdbpy_apply_frame_filter): Update comment.
12698         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12699         Remove.
12700         <EXT_LANG_BT_NO_FILTERS>: Change value.
12701
12702 2018-03-26  Tom Tromey  <tom@tromey.com>
12703
12704         PR backtrace/15582:
12705         * stack.c (backtrace_command): Parse "hide" argument.
12706         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12707         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12708         constant.
12709
12710 2018-03-26  Tom Tromey  <tom@tromey.com>
12711
12712         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12713         add "flags".
12714         (backtrace_command): Remove "fulltrace", add "flags".
12715
12716 2018-03-26  Tom Tromey  <tom@tromey.com>
12717
12718         * stack.c (backtrace_command): Rewrite command line parsing.
12719
12720 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12721
12722         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12723
12724 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12725
12726         * filename-seen-cache.h: Add include guard.
12727
12728 2018-03-26  Keith Seitz  <keiths@redhat.com>
12729
12730         * symfile.c (place_section): Remove "struct" from section_addr_info
12731         in comment.
12732         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12733         "struct" keyword from section_addr_info.
12734
12735 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12736
12737         * regformats/regdef.h (reg): Add constructors.
12738
12739 2018-03-25  Pedro Alves  <palves@redhat.com>
12740
12741         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12742         if then/else bodies in var_func_name extraction.
12743
12744 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12745
12746         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12747         lookup_minimal_symbol() to find symbol entry.
12748         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12749
12750 2018-03-23  Keith Seitz  <keiths@redhat.com>
12751
12752         PR c++/22968
12753         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12754         nested type definitions for C++, too.
12755
12756 2018-03-23  Tom Tromey  <tom@tromey.com>
12757
12758         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12759         a typedef.
12760         (macho_register_oso): Remove.
12761         (macho_symtab_read): Take a std::vector.
12762         (oso_el_compare_name): Now a std::sort comparator.
12763         (macho_symfile_read_all_oso): Take a std::vector.
12764         (macho_symfile_read): Use std::vector.  Remove cleanups.
12765
12766 2018-03-22  Tom Tromey  <tom@tromey.com>
12767
12768         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12769         (record_full_goto_bookmark): Use std::string.
12770
12771 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12772
12773         PR tdep/18295
12774         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12775         a single mask.
12776
12777 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12778
12779         * rs6000-tdep.c (store_insn_p): New function.
12780         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12781         and cr_reg to their unshifted values. Use store_insn_p to
12782         match LR saves using either R1 or fdata->alloca_reg. Use
12783         store_insn_p to match CR saves. Set alloca_reg_offset
12784         when alloca_reg and framep are set. Remove lr_reg shift
12785         when assigning to fdata->lr_register.
12786
12787 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12788
12789         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12790         command line args instead of emitting a warning.
12791
12792 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12793
12794         * tracepoint.h (struct static_tracepoint_marker): Initialize
12795         fields, define default constructor, move constructor and move
12796         assignment, disable the rest.
12797         <str_id, extra>: Make std::string.
12798         (release_static_tracepoint_marker): Remove.
12799         (free_current_marker): Remove.
12800         * tracepoint.c (free_current_marker): Remove.
12801         (parse_static_tracepoint_marker_definition): Adjust to
12802         std::string, use new hex2str overload.
12803         (release_static_tracepoint_marker): Remove.
12804         (print_one_static_tracepoint_marker): Get marker by reference
12805         and adjust to std::string.
12806         (info_static_tracepoint_markers_command): Adjust to std::vector
12807         changes
12808         * target.h (static_tracepoint_marker_p): Remove typedef.
12809         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12810         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12811         bool.
12812         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12813         * target-debug.h
12814         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12815         (target_debug_print_std_vector_static_tracepoint_marker): New.
12816         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12817         to...
12818         (target_debug_print_static_tracepoint_marker_p): ... this.
12819         * target-delegates.c: Re-generate.
12820         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12821         Make std::string.
12822         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12823         (decode_static_tracepoint_spec): Adjust to std::vector.
12824         (tracepoint_print_one_detail): Adjust to std::string.
12825         (strace_marker_decode_location): Adjust to std::string.
12826         (update_static_tracepoint): Adjust to std::string, remove call
12827         to release_static_tracepoint_marker.
12828         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12829         Adjust to std::vector.
12830         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12831         (remote_static_tracepoint_markers_by_strid): Adjust to
12832         std::vector.
12833         * common/rsp-low.h (hex2str): New overload with explicit count
12834         of bytes.
12835         * common/rsp-low.c (hex2str): New overload with explicit count
12836         of bytes.
12837         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12838         (_initialize_rsp_low_selftests): Add test_hex2str test.
12839         * unittests/tracepoint-selftests.c
12840         (test_parse_static_tracepoint_marker_definition): Adjust to
12841         std::string.
12842
12843 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12844
12845         * tracepoint.c (parse_static_tracepoint_marker_definition):
12846         Consider case where the definition is followed by more
12847         definitions.
12848         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12849         tracepoint-selftests.c.
12850         * unittests/tracepoint-selftests.c: New.
12851
12852 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12853
12854         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12855         Carvalho.
12856
12857 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12858
12859         * symtab.c (find_pc_sect_line): fixed indentation.
12860
12861 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12862
12863         * symtab.c (find_pc_sect_line): now uses binary search.
12864
12865 2018-03-19  Tom Tromey  <tom@tromey.com>
12866
12867         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12868         "IDENT" production.
12869
12870 2018-03-19  Pedro Alves  <palves@redhat.com>
12871             Tom Tromey  <tom@tromey.com>
12872
12873         * unittests/observable-selftests.c: New file.
12874         * common/observable.h: New file.
12875         * observable.h: New file.
12876         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12877         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12878         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12879         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12880         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12881         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12882         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12883         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12884         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12885         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12886         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12887         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12888         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12889         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12890         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12891         tui/tui-interp.c, valops.c: Update all users.
12892         * tui/tui-hooks.c (tui_bp_created_observer)
12893         (tui_bp_deleted_observer, tui_bp_modified_observer)
12894         (tui_inferior_exit_observer, tui_before_prompt_observer)
12895         (tui_normal_stop_observer, tui_register_changed_observer):
12896         Remove.
12897         (tui_observers_token): New global.
12898         (attach_or_detach, tui_attach_detach_observers): New functions.
12899         (tui_install_hooks, tui_remove_hooks): Use
12900         tui_attach_detach_observers.
12901         * record-btrace.c (record_btrace_thread_observer): Remove.
12902         (record_btrace_thread_observer_token): New global.
12903         * observer.sh: Remove.
12904         * observer.c: Rename to observable.c.
12905         * observable.c (namespace gdb_observers): Define new objects.
12906         (observer_debug): Move into gdb_observers namespace.
12907         (struct observer, struct observer_list, xalloc_observer_list_node)
12908         (xfree_observer_list_node, generic_observer_attach)
12909         (generic_observer_detach, generic_observer_notify): Remove.
12910         (_initialize_observer): Update.
12911         Don't include observer.inc.
12912         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12913         (clean mostlyclean): Likewise.
12914         (observer.h, observer.inc): Remove targets.
12915         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12916         (COMMON_SFILES): Use observable.c, not observer.c.
12917         * .gitignore: Remove observer.h.
12918
12919 2018-03-18  Tom Tromey  <tom@tromey.com>
12920
12921         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12922         gdb::def_vector.
12923         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12924
12925 2018-03-17  Tom Tromey  <tom@tromey.com>
12926
12927         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12928
12929 2018-03-17  Tom Tromey  <tom@tromey.com>
12930
12931         * target.c (class scoped_target_fd): New.
12932         (target_fileio_close_cleanup): Remove.
12933         (target_fileio_read_alloc_1): Use scoped_target_fd.
12934
12935 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12936
12937         * silent-rules.mk: New.
12938         * Makefile.in: Include silent-rules.mk
12939         (srcdir, VPATH, top_srcdir): Move up.
12940         (COMPILE): Add ECHO_CXX.
12941         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12942         (init.c): Add ECHO_INIT_C.
12943         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12944         (version.c): Add ECHO_GEN.
12945         (printcmd.o): Add ECHO_CXX.
12946         (target-float.o): Add ECHO_CXX.
12947         (ada-exp.o): Add ECHO_CXX.
12948         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12949         (insight$(EXEEXT)): Add ECHO_CXXLD.
12950         * gnulib/configure.ac: Add AM_SILENT_RULES.
12951         * gnulib/aclocal.m4: Re-generate.
12952         * gnulib/configure: Re-generate.
12953         * gnulib/import/Makefile.in: Re-generate.
12954
12955 2018-03-16  Tom Tromey  <tom@tromey.com>
12956
12957         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12958         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12959         * utils.c (do_free_section_addr_info)
12960         (make_cleanup_free_section_addr_info): Remove.
12961         * symfile.h (struct other_sections): Add constructor.
12962         (struct section_addr_info): Remove.
12963         (section_addr_info): New typedef.
12964         (struct sym_fns) <sym_offsets>: Change type of parameter.
12965         (build_section_addr_info_from_objfile)
12966         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12967         (default_symfile_offsets, symbol_file_add)
12968         (symbol_file_add_from_bfd)
12969         (build_section_addr_info_from_section_table): Update.
12970         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12971         * symfile.c (alloc_section_addr_info): Remove.
12972         (build_section_addr_info_from_section_table): Change return type.
12973         Update.
12974         (build_section_addr_info_from_bfd)
12975         (build_section_addr_info_from_objfile): Likewise.
12976         (free_section_addr_info): Remove.
12977         (relative_addr_info_to_section_offsets): Change type of "addrs".
12978         (addrs_section_compar): Now a std::sort comparator.
12979         (addrs_section_sort): Change return type.
12980         (addr_info_make_relative): Change type of "addrs".  Update.
12981         (default_symfile_offsets, syms_from_objfile_1)
12982         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12983         (symbol_file_add_separate): Update.
12984         (symbol_file_add): Change type of "addrs".  Update.
12985         (add_symbol_file_command): Update.  Remove cleanups.
12986         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12987         cleanups.
12988         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12989         * solib.c (solib_read_symbols): Update.
12990         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12991         * machoread.c (macho_symfile_offsets): Update.
12992         * jit.c (jit_bfd_try_read_symtab): Update.
12993
12994 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12995
12996         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12997         unittests/utils-selftests.c.
12998         * unittests/utils-selftests.c: New file.
12999
13000 2018-03-14  Tom Tromey  <tom@tromey.com>
13001
13002         PR cli/14977:
13003         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13004         for NULL.
13005
13006 2018-03-14  Tom Tromey  <tom@tromey.com>
13007
13008         PR cli/19918:
13009         * printcmd.c (printf_pointer): Allow "-" in format.
13010
13011 2018-03-14  Tom Tromey  <tom@tromey.com>
13012
13013         * printcmd.c (_initialize_printcmd): Add usage to printf.
13014
13015 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13016
13017         * MAINTAINERS: Update my email address.
13018
13019 2018-03-13  Tom Tromey  <tom@tromey.com>
13020
13021         * machoread.c (macho_check_dsym): Change filenamep to a
13022         std::string*.
13023         (macho_symfile_read): Update.
13024         * symfile.c (load_command): Use std::string.
13025
13026 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13027
13028         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13029         to error message string.
13030         (riscv_register_name): Use xsnprintf instead of sprintf.
13031         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13032         internal_error.
13033         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13034         error.
13035         (riscv_push_dummy_call): Likewise.
13036
13037 2018-03-12  Tom Tromey  <tom@tromey.com>
13038
13039         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13040         Use gdb::byte_vector.
13041         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13042
13043 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13044
13045         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13046         parameter type to readable_regcache.
13047         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13048         the declaration.
13049
13050 2018-03-11  Tom Tromey  <tom@tromey.com>
13051
13052         * dwarf2read.c (struct nextfield): Add initializers.
13053         (struct nextfnfield): Remove.
13054         (struct fnfieldlist): Add initializers.  Remove "length" and
13055         "head", use std::vector.
13056         (struct decl_field_list): Remove.
13057         (struct field_info): Add initializers.
13058         <fields, baseclasses>: Now std::vector.
13059         <nbaseclasses, nfnfields, typedef_field_list_count,
13060         nested_types_list_count>: Remove.
13061         (dwarf2_add_field, dwarf2_add_type_defn)
13062         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13063         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13064         (process_structure_scope): Update.
13065
13066 2018-03-11  Tom Tromey  <tom@tromey.com>
13067
13068         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13069         for use by std::sort.
13070         (build_type_psymtabs_1): Use std::vector.
13071
13072 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13073
13074         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13075         and LIBMPFR in the printed configuration.
13076
13077 2018-03-08  Tom Tromey  <tom@tromey.com>
13078
13079         * source.c (get_filename_and_charpos): Use scoped_fd.
13080         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13081         (procfs_pidlist): Likewise.
13082         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13083         (iterate_over_mappings): Likewise.
13084
13085 2018-03-08  Tom Tromey  <tom@tromey.com>
13086
13087         * infcall.c (struct call_return_meta_info)
13088         <stack_temporaries_enabled>: Remove.
13089         (get_call_return_value, call_function_by_hand_dummy): Update.
13090         * thread.c (disable_thread_stack_temporaries): Remove.
13091         (enable_thread_stack_temporaries): Remove.
13092         (thread_stack_temporaries_enabled_p): Return bool.
13093         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13094         (get_last_thread_stack_temporary): Update.
13095         * eval.c (evaluate_subexp): Update.
13096         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13097         class, not a function.
13098         (value_ptr, value_vec): Remove typedefs.
13099         (class thread_info) <stack_temporaries_enabled>: Now bool.
13100         <stack_temporaries>: Now a std::vector.
13101         (thread_stack_temporaries_enabled_p)
13102         (value_in_thread_stack_temporaries): Return bool.
13103
13104 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13105
13106         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13107         (getpkt_or_notif_sane_1): Likewise.
13108
13109 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13110
13111         * build-id.c (build_id_to_debug_bfd): Use std::string.
13112
13113 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13114
13115         * build-id.c (find_separate_debug_file_by_buildid): Return
13116         std::string.
13117         * build-id.h (find_separate_debug_file_by_buildid): Return
13118         std::string.
13119         * coffread.c (coff_symfile_read): Adjust to std::string.
13120         * elfread.c (elf_symfile_read): Adjust to std::string.
13121         * symfile.c (separate_debug_file_exists): Change parameter to
13122         std::string.
13123         (find_separate_debug_file): Return std::string.
13124         (find_separate_debug_file_by_debuglink): Return std::string.
13125         * symfile.h (find_separate_debug_file_by_debuglink): Return
13126         std::string.
13127
13128 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13129
13130         * common/xml-utils.c (xml_escape_text): Move code to...
13131         (xml_escape_text_append): ... this new function.
13132         * common/xml-utils.h (xml_escape_text_append): New declaration.
13133         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13134         New function.
13135         (_initialize_xml_utils): register test_xml_escape_text_append as
13136         a selftest.
13137
13138 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13139
13140         * defs.h: Remove MAX_REGISTER_SIZE.
13141         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13142         asserts.
13143         * python/py-unwind.c (pyuw_sniffer): Likewise.
13144
13145 2018-03-07  Tom Tromey  <tom@tromey.com>
13146
13147         * linux-tdep.c (linux_info_proc): Update.
13148         * target.h (struct target_ops) <to_fileio_readlink>: Return
13149         optional<string>.
13150         (target_fileio_readlink): Return optional<string>.
13151         * remote.c (remote_hostio_readlink): Return optional<string>.
13152         * inf-child.c (inf_child_fileio_readlink): Return
13153         optional<string>.
13154         * target.c (target_fileio_readlink): Return optional<string>.
13155
13156 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13157
13158         * regcache.c (cooked_read_test): Add riscv to the list of
13159         architectures that have a save_reggroup.
13160
13161 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13162
13163         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13164         value is not a dynamic class object.
13165
13166 2018-03-06  Tom Tromey  <tom@tromey.com>
13167
13168         * rust-exp.y: Formatting fixes.
13169
13170 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13171
13172         * riscv-tdep.c (riscv_register_name): Remove target description
13173         support.
13174         (riscv_gdbarch_init): Remove target description check.
13175
13176 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13177
13178         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13179         comment.
13180         * riscv-tdep.h: Likewise.
13181
13182 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13183
13184         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13185         (riscv_pseudo_register_write): Delete.
13186         (riscv_gdbarch_init): Remove all use of pseudo registers.
13187
13188 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13189
13190         * record-btrace.c (btrace_print_lines): Replace cleanup
13191         parameter with RAII equivalents.
13192         (btrace_insn_history): Replace cleanup with RAII equivalents.
13193         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13194         make_cleanup_ui_out_tuple_begin_end): Remove.
13195         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13196         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13197         make_cleanup_ui_out_list_begin_end): Remove.
13198
13199 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13200
13201         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13202         parameter types to std::vector.  Use bool.
13203         (record_btrace_wait): Replace VEC(tp_t) with
13204         std::vector<thread_info *>.
13205         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13206
13207 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13208
13209         * record-btrace.c (record_btrace_disable_callback): Remove.
13210         (struct scoped_btrace_disable): New.
13211         (record_btrace_open): Use scoped_btrace_disable.
13212
13213 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13214
13215         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13216         reading values from registers.
13217
13218 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13219
13220         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13221         where appropriate.
13222
13223 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13224
13225         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13226         change parameter type.  Use GDB's print functions, and use
13227         core_addr_to_string where appropriate.
13228         (riscv_push_dummy_call): Use core_addr_to_string where
13229         appropriate, update call to riscv_print_arg_location, and reindent
13230         a few lines.
13231         (riscv_return_value): Update call to riscv_print_arg_location.
13232
13233 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13234             Tim Newsome <tim@sifive.com>
13235             Albert Ou <a0u@eecs.berkeley.edu>
13236             Darius Rad <darius@bluespec.com>
13237
13238         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13239         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13240         (ALLDEPFILES): Add riscv-tdep.c
13241         * configure.tgt: Add riscv support.
13242         * riscv-tdep.c: New file.
13243         * riscv-tdep.h: New file.
13244         * NEWS: Mention new target.
13245         * MAINTAINERS: Add entry for riscv.
13246
13247 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13248
13249         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13250         fields within aggregates.
13251
13252 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13253
13254         * record-btrace.c (btrace_print_lines): Change type of flags to
13255         gdb_disassembly_flags.
13256
13257 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13258
13259         * fbsd-nat.c: Include "inf-ptrace.h".
13260         (USE_SIGTRAP_SIGINFO): Conditionally define.
13261         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13262         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13263         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13264         function.
13265         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13266         Likewise.
13267         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13268         Likewise.
13269         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13270         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13271         "supports_stopped_by_hw_breakpoint" target methods.
13272
13273 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13274
13275         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13276         * fbsd-nat.c (debug_fbsd_nat): New variable.
13277         (show_fbsd_nat_debug): New function.
13278         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13279         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13280
13281 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13282
13283         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13284         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13285         prototype.
13286         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13287         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13288         method.
13289
13290 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13291
13292         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13293         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13294
13295 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13296
13297         * charset.c (struct charset_vector): New.
13298         (charsets): Change type to charset_vector.
13299         (find_charset_names): Adjust.
13300         (add_one): Adjust.
13301         (_initialize_charset): Adjust.
13302
13303 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13304
13305         * progspace.h (struct program_space) <deleted_solibs>: Change
13306         type to std::vector<std::string>.
13307         * progspace.c (clear_program_space_solib_cache): Adjust.
13308         * breakpoint.c (print_solib_event): Adjust.
13309         (check_status_catch_solib): Adjust.
13310         * solib.c (update_solib_list): Adjust.
13311         * ui-out.h (class ui_out) <field_string>: New overload.
13312         * ui-out.c (ui_out::field_string): New overload.
13313
13314 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13315
13316         * progspace.h (struct program_space): Add constructor and
13317         destructor, initialize fields.
13318         (add_program_space): Remove.
13319         * progspace.c (add_program_space): Rename to...
13320         (program_space::program_space): ... this.
13321         (release_program_space): Rename to...
13322         (program_space::~program_space): ... this.
13323         (delete_program_space): Use delete to delete program_space.
13324         (initialize_progspace): Use new to allocate program_space.
13325         * inferior.c (add_inferior_with_spaces): Likewise.
13326         (clone_inferior_command): Likewise.
13327         * infrun.c (follow_fork_inferior): Likewise.
13328         (handle_vfork_child_exec_or_exit): Likewise.
13329
13330 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13331
13332         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13333         (delim_string_to_char_ptr_vec): Return std::vector of
13334         gdb::unique_xmalloc_ptr.
13335         (dirnames_to_char_ptr_vec_append): Take std::vector of
13336         gdb::unique_xmalloc_ptr.
13337         (dirnames_to_char_ptr_vec): Return std::vector of
13338         gdb::unique_xmalloc_ptr.
13339         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13340         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13341         (delim_string_to_char_ptr_vec): Return an std::vector of
13342         gdb::unique_xmalloc_ptr, adjust the code.
13343         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13344         gdb::unique_xmalloc_ptr, adjust the code.
13345         (dirnames_to_char_ptr_vec): Return an std::vector of
13346         gdb::unique_xmalloc_ptr, adjust the code.
13347         * auto-load.c (auto_load_safe_path_vec): Change type to
13348         std::vector of gdb::unique_xmalloc_ptr.
13349         (auto_load_expand_dir_vars): Return an std::vector of
13350         gdb::unique_xmalloc_ptr, adjust the code.
13351         (auto_load_safe_path_vec_update): Adjust.
13352         (filename_is_in_auto_load_safe_path_vec): Adjust.
13353         (auto_load_objfile_script_1): Adjust.
13354         * build-id.c (build_id_to_debug_bfd): Adjust.
13355         * linux-thread-db.c (thread_db_load_search): Adjust.
13356         * source.c (add_path): Adjust.
13357         (openp): Adjust.
13358         * symfile.c (find_separate_debug_file): Adjust.
13359         * utils.c (do_free_char_ptr_vec): Remove.
13360         (make_cleanup_free_char_ptr_vec): Remove.
13361
13362 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13363
13364         PR gdb/22907
13365         * common/pathstuff.c: Conditionally include "<windows.h>".
13366
13367 2018-03-01  Georg Sauthoff  <mail@georg.so>
13368
13369         PR gdb/22888
13370         * gcore.in: Quote variables and switch interpreter to bash.
13371
13372 2018-03-01  Tom Tromey  <tom@tromey.com>
13373
13374         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13375         assertion.  Add assertion for discriminant_index.
13376         (quirk_rust_enum): Use correct base type name in univariant case.
13377
13378 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13379
13380         * record.c (get_call_history_modifiers): Return a
13381         record_print_flags.
13382         (cmd_record_call_history): Adjust.
13383         * record-btrace.c (record_btrace_call_history): Adjust.
13384         (record_btrace_call_history_range): Adjust.
13385         (record_btrace_call_history_from): Adjust.
13386         * target-debug.h (target_debug_print_record_print_flags): New.
13387         * target-delegates.c: Re-generate.
13388         * target.c (target_call_history): Change flags type.
13389         (target_call_history_from): Likewise.
13390         (target_call_history_range): Likewise.
13391         * target.h (struct target_ops) <target_call_history>: Likewise.
13392         (target_call_history_from): Likewise.
13393         (target_call_history_range): Likewise.
13394
13395 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13396             Simon Marchi  <simon.marchi@polymtl.ca>
13397
13398         * common/common-utils.c: Include "sys/stat.h".
13399         (is_regular_file): Move here from "source.c"; change return
13400         type to "bool".
13401         * common/common-utils.h (is_regular_file): New prototype.
13402         * common/pathstuff.c (contains_dir_separator): New function.
13403         * common/pathstuff.h (contains_dir_separator): New prototype.
13404         * source.c: Don't include "sys/stat.h".
13405         (is_regular_file): Move to "common/common-utils.c".
13406
13407 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13408
13409         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13410         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13411         * auto-load.c: Include "common/pathstuff.h".
13412         * common/common-def.h (current_directory): Move here.
13413         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13414         function.
13415         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13416         prototype.
13417         * common/pathstuff.c: New file.
13418         * common/pathstuff.h: New file.
13419         * compile/compile.c: Include "common/pathstuff.h".
13420         * defs.h (current_directory): Move to "common/common-defs.h".
13421         * dwarf2read.c: Include "common/pathstuff.h".
13422         * exec.c: Likewise.
13423         * guile/scm-safe-call.c: Likewise.
13424         * linux-thread-db.c: Likewise.
13425         * main.c: Likewise.
13426         * nto-tdep.c: Likewise.
13427         * objfiles.c: Likewise.
13428         * source.c: Likewise.
13429         * symtab.c: Likewise.
13430         * utils.c: Include "common/pathstuff.h".
13431         (gdb_realpath): Move to "common/pathstuff.c".
13432         (gdb_realpath_keepfile): Likewise.
13433         (gdb_abspath): Likewise.
13434         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13435         (gdb_realpath_keepfile): Likewise.
13436         (gdb_abspath): Likewise.
13437
13438 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13439
13440         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13441         wildcard process pid for super_resume for kernels with a
13442         specific bug.
13443
13444 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13445
13446         * compile/compile.c (get_args): Add additional comments
13447         explaining function.
13448
13449 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13450             Tom Tromey  <tom@tromey.com>
13451
13452         * target.h (memory_write_request_s): Remove typedef.  Don't define
13453         VEC.
13454         (target_write_memory_blocks): Change argument to std::vector.
13455         (struct memory_write_request): Add constructor.
13456         * target-memory.c (compare_block_starting_address): Return bool.
13457         Change argument types.
13458         (claim_memory): Change arguments to use std::vector.
13459         (split_regular_and_flash_blocks, blocks_to_erase)
13460         (compute_garbled_blocks): Likewise.
13461         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13462         (target_write_memory_blocks): Change argument to std::vector.
13463         * symfile.c (struct load_section_data): Add constructor and
13464         destructor.  Use std::vector for "requests".
13465         (struct load_progress_data): Add initializers.
13466         (load_section_callback): Update.  Use "new".
13467         (clear_memory_write_data): Remove.
13468         (generic_load): Update.
13469
13470 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13471
13472         * arch/aarch64.h: Use common/tdesc.h.
13473
13474 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13475
13476         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13477         architecture with a 64-bit ABI.
13478
13479 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13480
13481         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13482         ahead of target description loading.
13483
13484 2018-02-26  Tom Tromey  <tom@tromey.com>
13485
13486         * stack.c (backtrace_command_1): Update.
13487         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13488         of "flags".
13489         * python/py-framefilter.c (py_print_frame)
13490         (gdbpy_apply_frame_filter): Change type of "flags".
13491         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13492         of "flags".
13493         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13494         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13495         * extension.h (enum frame_filter_flag): Rename from
13496         frame_filter_flags.
13497         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13498         (apply_ext_lang_frame_filter): Change type of "flags".
13499         * extension.c (apply_ext_lang_frame_filter): Change type of
13500         "flags".
13501         * extension-priv.h (struct extension_language_ops)
13502         <apply_frame_filter>: Change type of "flags".
13503
13504 2018-02-26  Tom Tromey  <tom@tromey.com>
13505
13506         PR python/16497:
13507         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13508         off-by-one in py_end computation.
13509         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13510         PRINT_MORE_FRAMES.
13511         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13512         constant.
13513
13514 2018-02-26  Tom Tromey  <tom@tromey.com>
13515
13516         * dwarf2read.c (struct variant_field): New.
13517         (struct nextfield) <variant>: New field.
13518         (dwarf2_add_field): Handle DW_TAG_variant_part.
13519         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13520         discriminated union.
13521         (read_structure_type): Handle DW_TAG_variant_part.
13522         (handle_struct_member_die): New function, extracted from
13523         process_structure_scope.  Handle DW_TAG_variant.
13524         (process_structure_scope): Handle discriminated unions.  Call
13525         handle_struct_member_die.
13526
13527 2018-02-26  Tom Tromey  <tom@tromey.com>
13528
13529         * rust-lang.h (rust_last_path_segment): Declare.
13530         * rust-lang.c (rust_last_path_segment): Now public.  Change
13531         contract.
13532         (struct disr_info): Remove.
13533         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13534         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13535         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13536         (rust_enum_p, rust_enum_variant): New function.
13537         (rust_underscore_fields): Remove "offset" parameter.
13538         (rust_print_enum): New function.
13539         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13540         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13541         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13542         enums.
13543         (rust_internal_print_type): New function, from rust_print_type.
13544         Remove enum code.
13545         (rust_print_type): Call rust_internal_print_type.
13546         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13547         Update enum handling.
13548         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13549         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13550         (rust_union_quirks): New functions.
13551         (process_full_comp_unit, process_full_type_unit): Call
13552         rust_union_quirks.
13553         (process_structure_scope): Update rust_unions if necessary.
13554
13555 2018-02-26  Tom Tromey  <tom@tromey.com>
13556
13557         * value.h (value_union_variant): Declare.
13558         * valops.c (value_union_variant): New function.
13559         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13560         (struct discriminant_info): New.
13561         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13562         enumerator.
13563         (struct main_type) <flag_discriminated_union>: New field.
13564
13565 2018-02-26  Tom Tromey  <tom@tromey.com>
13566
13567         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13568         unittests/unpack-selftests.c.
13569         * unittests/unpack-selftests.c: New file.
13570         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13571
13572 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13573
13574         * dwarf2read.c (struct partial_die_info) <read>: New method.
13575         (read_partial_die): Remove the declaration.
13576         (load_partial_dies): Update.
13577         (partial_die_info::partial_die_info):
13578         (read_partial_die): Change it to partial_die_info::read.
13579
13580 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13581
13582         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13583         (fixup_partial_die): Remove declaration.
13584         (scan_partial_symbols): Update.
13585         (partial_die_parent_scope): Likewise.
13586         (partial_die_full_name): Likewise.
13587         (fixup_partial_die): Change it to partial_die_info::fixup.
13588
13589 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13590
13591         * dwarf2read.c (read_partial_die): Update the declaration.
13592         (load_partial_dies): Caller update.
13593         (read_partial_die): Remove one argument abbrev_len.
13594
13595 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13596
13597         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13598         assignment operator.
13599         (load_partial_dies): Use ctor and copy ctor.
13600         (read_partial_die): Update.
13601         (dwarf2_cu::find_partial_die): Use ctor.
13602
13603 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13604
13605         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13606         (find_partial_die_in_comp_unit): Change it to
13607         dwarf2_cu::find_partial_die.
13608         (find_partial_die): Update.
13609
13610 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13611
13612         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13613         is NULL.
13614
13615 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13616
13617         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13618
13619 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13620
13621         * arch/amd64.h: Use common/tdesc.h.
13622         * arch/i386.c: Likewise.
13623         * arch/i386.h: Likewise.
13624         * arch/tic6x.c: Likewise.
13625         * arch/tdesc.h: Move file from here...
13626         * common/tdesc.h: ...to here.
13627         * features/aarch64-core.c: Regenerate.
13628         * features/aarch64-fpu.c: Regenerate.
13629         * features/i386/32bit-avx.c: Regenerate.
13630         * features/i386/32bit-avx512.c: Regenerate.
13631         * features/i386/32bit-core.c: Regenerate.
13632         * features/i386/32bit-linux.c: Regenerate.
13633         * features/i386/32bit-mpx.c: Regenerate.
13634         * features/i386/32bit-pkeys.c: Regenerate.
13635         * features/i386/32bit-sse.c: Regenerate.
13636         * features/i386/64bit-avx.c: Regenerate.
13637         * features/i386/64bit-avx512.c: Regenerate.
13638         * features/i386/64bit-core.c: Regenerate.
13639         * features/i386/64bit-linux.c: Regenerate.
13640         * features/i386/64bit-mpx.c: Regenerate.
13641         * features/i386/64bit-pkeys.c: Regenerate.
13642         * features/i386/64bit-segments.c: Regenerate.
13643         * features/i386/64bit-sse.c: Regenerate.
13644         * features/i386/x32-core.c: Regenerate.
13645         * features/tic6x-c6xp.c: Regenerate.
13646         * features/tic6x-core.c: Regenerate.
13647         * features/tic6x-gp.c: Regenerate.
13648         * target-descriptions.c: Use common/tdesc.h.
13649         * target-descriptions.h: Likewise.
13650
13651 2018-02-24  Tom Tromey  <tom@tromey.com>
13652
13653         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13654         (try_thread_db_load_from_dir, thread_db_load_search): Use
13655         std::string.
13656         (info_auto_load_libthread_db_compare): Return bool.  Change
13657         argument types.
13658         (info_auto_load_libthread_db): Use std::vector, std::string.
13659         Remove cleanups.
13660
13661 2018-02-24  Tom Tromey  <tom@tromey.com>
13662
13663         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13664         std::string.
13665         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13666         std::string*.
13667         * gdbarch.c: Rebuild.
13668         * gdbarch.h: Rebuild.
13669         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13670         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13671         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13672         std::string*.
13673
13674 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13675
13676         * gdbtypes.h (sect_offset): Change type to uint64_t.
13677         (sect_offset_str): New function.
13678         * dwarf2read.c (create_addrmap_from_aranges): Use
13679         sect_offset_str.
13680         (error_check_comp_unit_head): Likewise.
13681         (create_debug_type_hash_table): Likewise.
13682         (read_cutu_die_from_dwo): Likewise.
13683         (init_cutu_and_read_dies): Likewise.
13684         (init_cutu_and_read_dies_no_follow): Likewise.
13685         (process_psymtab_comp_unit_reader): Likewise.
13686         (partial_die_parent_scope): Likewise.
13687         (peek_die_abbrev): Likewise.
13688         (process_queue): Likewise.
13689         (dwarf2_physname): Likewise.
13690         (read_namespace_alias): Likewise.
13691         (read_import_statement): Likewise.
13692         (create_dwo_cu_reader): Likewise.
13693         (create_cus_hash_table): Likewise.
13694         (lookup_dwo_cutu): Likewise.
13695         (inherit_abstract_dies): Likewise.
13696         (read_func_scope): Likewise.
13697         (read_call_site_scope): Likewise.
13698         (dwarf2_add_member_fn): Likewise.
13699         (read_common_block): Likewise.
13700         (read_module_type): Likewise.
13701         (read_typedef): Likewise.
13702         (read_subrange_type): Likewise.
13703         (load_partial_dies): Likewise.
13704         (read_partial_die): Likewise.
13705         (find_partial_die): Likewise.
13706         (read_str_index): Likewise.
13707         (dwarf2_string_attr): Likewise.
13708         (build_error_marker_type): Likewise.
13709         (lookup_die_type): Likewise.
13710         (dump_die_shallow): Likewise.
13711         (follow_die_ref): Likewise.
13712         (dwarf2_fetch_die_loc_sect_off): Likewise.
13713         (dwarf2_fetch_constant_bytes): Likewise.
13714         (follow_die_sig): Likewise.
13715         (get_signatured_type): Likewise.
13716         (get_DW_AT_signature_type): Likewise.
13717         (dwarf2_find_containing_comp_unit): Likewise.
13718         (set_die_type): Likewise.
13719
13720 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13721
13722         * arch/aarch64.c: Include "common-defs.h".
13723         * arch/amd64.c: Likewise.
13724         * arch/i386.c: Likewise.
13725
13726 2018-02-21  Tom Tromey  <tom@tromey.com>
13727
13728         * value.h: (extract_field_op): Update.
13729         * eval.c (extract_field_op): Return a const char *.
13730         * expression.h (parse_expression_for_completion): Update.
13731         * completer.c (complete_expression): Update.
13732         (add_struct_fields): Make fieldname const.
13733         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13734         (mark_completion_tag, parse_exp_in_context_1): Update.
13735         (parse_expression_for_completion): Change "name" to
13736         unique_xmalloc_ptr*.
13737
13738 2018-02-21  Tom Tromey  <tom@tromey.com>
13739
13740         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13741
13742 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13743
13744         * avr-tdep.c (avr_read_pc): Change parameter type to
13745         readable_regcache.
13746         * gdbarch.sh (read_pc): Likewise.
13747         * gdbarch.c: Re-generated.
13748         * gdbarch.h: Re-generated.
13749         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13750         readable_regcache.
13751         * ia64-tdep.c (ia64_read_pc): Likewise.
13752         * mips-tdep.c (mips_read_pc): Likewise.
13753         * spu-tdep.c (spu_read_pc): Likewise.
13754
13755 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13756
13757         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13758         * regcache-dump.c: New file.
13759         * regcache.c: Move register_dump to regcache-dump.c.
13760         (maintenance_print_registers): Likewise.
13761         (maintenance_print_raw_registers): Likewise.
13762         (maintenance_print_cooked_registers): Likewise.
13763         (maintenance_print_register_groups): Likewise.
13764         (maintenance_print_remote_registers): Likewise.
13765         (_initialize_regcache): Likewise.
13766         * regcache.h (register_dump): Moved from regcache.c.
13767
13768 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13769
13770         * regcache.c (regcache::regcache): Update.
13771         (regcache::invalidate): Move it to detached_regcache::invalidate.
13772         (get_thread_arch_aspace_regcache): Update.
13773         (regcache::raw_update): Update.
13774         (regcache::cooked_read): Remove some code.
13775         (regcache::cooked_read_value): Likewise.
13776         (regcache::raw_write): Remove assert on m_readonly_p.
13777         (regcache::raw_supply_integer): Move it to
13778         detached_regcache::raw_supply_integer.
13779         (regcache::raw_supply_zeroed): Likewise.
13780         * regcache.h (detached_regcache) <raw_supply_integer>: New
13781         declaration.
13782         <raw_supply_zeroed, invalidate>: Likewise.
13783         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13784         <invalidate>: Likewise.
13785         <m_readonly_p>: Removed.
13786
13787 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13788
13789         * infcmd.c (get_return_value): Let stop_regs point to
13790         get_current_regcache.
13791         * regcache.c (regcache::regcache): Remove.
13792         (register_dump_reg_buffer): New class.
13793         (regcache_print): Adjust.
13794         * regcache.h (regcache): Remove constructors.
13795
13796 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13797
13798         * regcache.c (class register_dump): New class.
13799         (register_dump_regcache, register_dump_none): New class.
13800         (register_dump_remote, register_dump_groups): New class.
13801         (regcache_print): Update.
13802         * regcache.h (regcache_dump_what): Move it to regcache.c.
13803         (regcache) <dump>: Remove.
13804
13805 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13806
13807         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13808          reg_buffer_rw *.
13809         (jit_unwind_reg_set_impl): Call raw_supply.
13810         (jit_frame_sniffer): Use reg_buffer_rw.
13811         * record-full.c (record_full_core_regbuf): Change its type.
13812         (record_full_core_open_1): Use reg_buffer_rw.
13813         (record_full_close): Likewise.
13814         (record_full_core_fetch_registers): Use regcache->raw_supply.
13815         (record_full_core_store_registers): Likewise.
13816         * regcache.c (regcache::get_register_status): Move it to
13817         reg_buffer.
13818         (regcache_raw_set_cached_value): Remove.
13819         (regcache::raw_set_cached_value): Remove.
13820         (regcache::raw_write): Call raw_supply.
13821         (regcache::raw_supply): Move it to reg_buffer_rw.
13822         * regcache.h (regcache_raw_set_cached_value): Remove.
13823         (reg_buffer_rw): New class.
13824
13825 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13826
13827         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13828         readonly_detached_regcache.
13829         (dummy_frame_prev_register): Use regcache->cooked_read.
13830         * frame.c (frame_save_as_regcache): Change return type.
13831         (frame_pop): Update.
13832         * frame.h (frame_save_as_regcache): Update declaration.
13833         * inferior.h (get_infcall_suspend_state_regcache): Update
13834         declaration.
13835         * infrun.c (infcall_suspend_state) <registers>: use
13836         readonly_detached_regcache.
13837         (save_infcall_suspend_state): Don't use regcache_dup.
13838         (get_infcall_suspend_state_regcache): Change return type.
13839         * linux-fork.c (struct fork_info) <savedregs>: Change to
13840         readonly_detached_regcache.
13841         <pc>: New field.
13842         (fork_save_infrun_state): Don't use regcache_dup.
13843         (info_checkpoints_command): Adjust.
13844         * mi/mi-main.c (register_changed_p): Update declaration.
13845         (mi_cmd_data_list_changed_registers): Use
13846         readonly_detached_regcache.
13847         (register_changed_p): Change parameter type to
13848         readonly_detached_regcache.
13849         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13850         readonly_detached_regcache.
13851         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13852         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13853         New.
13854         (regcache::save): Move it to reg_buffer.
13855         (regcache::restore): Change parameter type.
13856         (regcache_dup): Remove.
13857         * regcache.h (reg_buffer) <save>: New method.
13858         (readonly_detached_regcache): New class.
13859         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13860         readonly_detached_regcache.
13861         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13862
13863 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13864
13865         * frame.c (frame_save_as_regcache): Use regcache method save.
13866         (frame_pop): Use regcache method restore.
13867         * infrun.c (restore_infcall_suspend_state): Likewise.
13868         * linux-fork.c (fork_load_infrun_state): Likewise.
13869         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13870         save.
13871         * regcache.c (regcache_save): Remove.
13872         (regcache::restore): More asserts.
13873         (regcache_cpy): Remove.
13874         * regcache.h (regcache_save): Remove the declaration.
13875         (regcache::restore): Move from private to public.
13876         Remove the friend declaration of regcache_cpy.
13877         (regcache_cpy): Remove declaration.
13878
13879 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13880
13881         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13882         parameter type to 'readable_regcache *'.
13883         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13884         * arm-tdep.c (arm_neon_quad_read): Likewise.
13885         (arm_pseudo_read): Likewise.
13886         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13887         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13888         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13889         * gdbarch.c: Re-generated.
13890         * gdbarch.h: Re-generated.
13891         * gdbarch.sh (pseudo_register_read): Change parameter type to
13892         'readable_regcache *'.
13893         (pseudo_register_read_value): Likewise.
13894         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13895         (h8300_pseudo_register_read): Likewise.
13896         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13897         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13898         (i386_pseudo_register_read_into_value): Likewise.
13899         (i386_pseudo_register_read_value): Likewise.
13900         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13901         declaration.
13902         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13903         * m32c-tdep.c (m32c_raw_read): Likewise.
13904         (m32c_read_flg): Likewise.
13905         (m32c_banked_register): Likewise.
13906         (m32c_banked_read): Likewise.
13907         (m32c_sb_read): Likewise.
13908         (m32c_part_read): Likewise.
13909         (m32c_cat_read): Likewise.
13910         (m32c_r3r2r1r0_read): Likewise.
13911         (m32c_pseudo_register_read): Likewise.
13912         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13913         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13914         (mep_pseudo_cr64_read): Likewise.
13915         (mep_pseudo_register_read): Likewise.
13916         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13917         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13918         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13919         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13920         (regcache::cooked_read): Likewise.
13921         (regcache::cooked_read_value): Likewise.
13922         (regcache_cooked_read_signed):
13923         (regcache::cooked_read): Likewise.
13924         * regcache.h (readable_regcache): New class.
13925         (regcache): Inherit readable_regcache.  Move some methods to
13926         readable_regcache.
13927         * rl78-tdep.c (rl78_pseudo_register_read): Change
13928         parameter type to 'readable_regcache *'.
13929         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13930         (e500_pseudo_register_read): Change parameter type to
13931         'readable_regcache *'.
13932         (dfp_pseudo_register_read): Likewise.
13933         (vsx_pseudo_register_read): Likewise.
13934         (efpr_pseudo_register_read): Likewise.
13935         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13936         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13937         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13938         (sh64_pseudo_register_read): Likewise.
13939         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13940         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13941         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13942         (spu_pseudo_register_read): Likewise.
13943         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13944         (xtensa_pseudo_register_read): Likewise.
13945
13946 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13947
13948         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13949         (regcache::arch): Move it to reg_buffer::arch.
13950         (regcache::register_buffer): Likewise.
13951         (regcache::assert_regnum): Likewise.
13952         (regcache::num_raw_registers): Likewise.
13953         * regcache.h (reg_buffer): New class.
13954         (regcache): Inherit reg_buffer.
13955
13956 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13957
13958         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13959         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13960
13961 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13962
13963         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13964
13965 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13966
13967         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13968         (SFILES): Remove common/*.c files.
13969         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13970         * common/common.host: Add common reference.
13971         * configure.ac: Likewise.
13972         * configure: Regenerate.
13973
13974 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13975
13976         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13977         (block_initialize_namespace): Use new.
13978         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13979         (dwarf2_free_objfile): Use delete.
13980         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13981         (copy_type_recursive): Use new.
13982         * gdb_obstack.h (allocate_on_obstack): New.
13983
13984 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13985
13986         PR gdb/22849
13987         * inferior.c (exit_inferior_1): Reset inf->control.
13988
13989 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13990
13991         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13992         declaration.
13993
13994 2018-02-14  Pedro Alves  <palves@redhat.com>
13995
13996         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13997         frame_cleanup_after_sniffer on exception.
13998
13999 2018-02-14  Tom Tromey  <tom@tromey.com>
14000
14001         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14002         const.
14003         (solib_bfd_open): Make pathname const.
14004         * solib.c (solib_bfd_open): Make pathname const.
14005         * solib-spu.c (spu_bfd_fopen): Make name const.
14006         (spu_bfd_open): Make pathname const.
14007         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14008         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14009
14010 2018-02-14  Tom Tromey  <tom@tromey.com>
14011
14012         * symfile.c (symfile_bfd_open): Update.
14013         * source.h (openp, source_full_path_of, find_and_open_source):
14014         Change argument type to unique_xmalloc_ptr.
14015         * source.c (openp): Take a unique_xmalloc_ptr.
14016         (source_full_path_of, find_and_open_source): Likewise.
14017         (open_source_file, symtab_to_fullname): Update.
14018         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14019         unique_xmalloc_ptr.
14020         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14021         (exec_file_find): Update.
14022         * psymtab.c (psymtab_to_fullname): Update.
14023         * nto-tdep.h (nto_find_and_open_solib): Update.
14024         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14025         unique_xmalloc_ptr.
14026         * exec.c (exec_file_attach): Update.
14027         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14028         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14029
14030 2018-02-14  Tom Tromey  <tom@tromey.com>
14031
14032         * solib.c: Include source.h.
14033         * nto-tdep.c: Include source.h.
14034         * mi/mi-cmd-env.c: Include source.h.
14035         * infcmd.c: Include source.h.
14036         * exec.c: Include source.h.
14037         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14038         (add_path, directory_switch, source_path, init_source_path): Move
14039         declarations...
14040         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14041         (add_path, directory_switch, source_path, init_source_path):
14042         ...here.
14043
14044 2018-02-14  Tom Tromey  <tom@tromey.com>
14045
14046         * solist.h (exec_file_find, solib_find): Return
14047         unique_xmalloc_ptr.
14048         (solib_bfd_fopen): Take a const char *.
14049         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14050         (exec_file_find, solib_find): Likewise.
14051         (solib_bfd_fopen): Do not take ownership of "pathname".
14052         (solib_bfd_open): Use unique_xmalloc_ptr.
14053         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14054         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14055         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14056         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14057
14058 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14059
14060         * ada-lang.c (name_match_type_from_name): Remove reference to
14061         ada_name_for_lookup in function's documentation.
14062         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14063
14064 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14065
14066         * defs.h (enum openp_flags): New enum.
14067         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14068         Move to enum openp_flags.
14069         (openp_flags): New enum flags.
14070         (openp): Change parameter type to openp_flags.
14071         * source.c (openp): Change parameter type to openp_flags.
14072         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14073         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14074
14075 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14076
14077         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14078         per-command.
14079
14080 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14081
14082         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14083         into...
14084         (class dwarf2_queue_guard): ...the destructor of this new class.
14085         (dw2_do_instantiate_symtab): Create instance of the new class
14086         dwarf2_queue_guard, remove cleanup.
14087
14088 2018-02-09  Tom Tromey  <tom@tromey.com>
14089
14090         * source.c (find_source_lines): Don't reference past the end of
14091         the vector.
14092
14093 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14094
14095         * remote.c (remote_btrace_maybe_reopen): Change error message.
14096         * btrace.c (btrace_enable): Likewise.
14097         (parse_xml_btrace): Likewise.
14098         (parse_xml_btrace_conf): Likewise.
14099
14100 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14101
14102         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14103         (linux_enable_pt, linux_enable_bts): Call
14104         diagnose_perf_event_open_fail.
14105
14106 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14107
14108         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14109         Remove parameter and change return type.  Update callers.  Move it.
14110         (linux_enable_bts, linux_enable_pt): Improve error message.
14111         (linux_enable_pt): Remove zero buffer size check.
14112         (linux_enable_btrace): Improve error messages.  Remove NULL return
14113         check.
14114
14115 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14116
14117         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14118         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14119         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14120         (linux_supports_pt, linux_supports_btrace): Remove.
14121         (linux_enable_bts): Call cpu_supports_bts.
14122         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14123         * remote.c (remote_supports_btrace): Remove.
14124         (init_remote_ops): Remove remote_supports_btrace.
14125         * target-delegates.c: Regenerated.
14126         * target.c (target_supports_btrace): Remove.
14127         * target.h (target_ops) <to_supports_btrace>: Remove
14128         (target_supports_btrace): Remove.
14129         * x86-linux-nat.c (x86_linux_create_target): Remove
14130         linux_supports_btrace.
14131
14132 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14133
14134         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14135         btrace failed.
14136         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14137         exception and use message in own exception.
14138
14139 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14140
14141         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14142         (perf_event_pt_event_type): Use gdb_file_up.
14143         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14144         scoped_fd, and scoped_mmap.
14145
14146 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14147
14148         * common/scoped_mmap.h: New.
14149         * unittests/scoped_mmap-selftest.c: New.
14150         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14151         unittests/scoped_mmap-selftest.c.
14152
14153 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14154
14155         * common/scoped_fd.h: New.
14156         * unittests/scoped_fd-selftest.c: New.
14157         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14158         unittests/scoped_fd-selftest.c.
14159
14160 2018-02-09  Tom Tromey  <tom@tromey.com>
14161
14162         * auto-load.c (auto_load_section_scripts): Use
14163         gdb::unique_xmalloc_ptr.
14164
14165 2018-02-09  Tom Tromey  <tom@tromey.com>
14166
14167         * auto-load.c (execute_script_contents): Use std::string.
14168
14169 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14170
14171         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14172         Python function, rather than a new command.
14173
14174 2018-02-08  Tom Tromey  <tom@tromey.com>
14175
14176         * solib.c (solib_find_1): Use std::string.
14177         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14178
14179 2018-02-08  Tom Tromey  <tom@tromey.com>
14180
14181         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14182
14183 2018-02-08  Tom Tromey  <tom@tromey.com>
14184
14185         * source.c (find_source_lines): Use gdb::def_vector.
14186
14187 2018-02-08  Tom Tromey  <tom@tromey.com>
14188
14189         * macrocmd.c (struct temporary_macro_definition): New.
14190         (macro_define_command): Use temporary_macro_definition.  Remove
14191         cleanups.
14192         (free_macro_definition_ptr): Remove.
14193
14194 2018-02-08  Tom Tromey  <tom@tromey.com>
14195
14196         * macroexp.c (maybe_expand): Use std::string.
14197
14198 2018-02-08  Tom Tromey  <tom@tromey.com>
14199
14200         * macroexp.c (struct macro_buffer): Add initializers for some
14201         members.
14202         (init_buffer, init_shared_buffer, free_buffer)
14203         (free_buffer_return_text): Remove.
14204         (macro_buffer): New constructors.
14205         (~macro_buffer): New destructor.
14206         (macro_buffer::set_shared): New method.
14207         (macro_buffer::resize_buffer, macro_buffer::appendc)
14208         (macro_buffer::appendmem): Now methods, not free functions.
14209         (set_token, append_tokens_without_splicing, stringify)
14210         (macro_stringify): Update.
14211         (gather_arguments): Change return type.  Remove argc_p argument,
14212         add args_ptr argument.  Use std::vector.
14213         (substitute_args): Remove argc argument.  Accept std::vector.
14214         (expand): Update.  Use std::vector.
14215         (scan, macro_expand, macro_expand_next): Update.
14216
14217 2018-02-08  Tom Tromey  <tom@tromey.com>
14218
14219         * symtab.c (default_collect_symbol_completion_matches_break_on):
14220         Use unique_xmalloc_ptr.
14221         * macroscope.h: (sal_macro_scope, user_macro_scope)
14222         (default_macro_scope): Return unique_xmalloc_ptr.
14223         * macroscope.c (sal_macro_scope, user_macro_scope)
14224         (default_macro_scope): Return unique_xmalloc_ptr.
14225         * macroexp.h (macro_expand, macro_expand_once): Return
14226         unique_xmalloc_ptr.
14227         * macroexp.c (macro_expand, macro_expand_once): Return
14228         unique_xmalloc_ptr.
14229         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14230         (info_macro_command, info_macros_command): Use
14231         unique_xmalloc_ptr.
14232         * compile/compile-c-support.c (write_macro_definitions): Use
14233         unique_xmalloc_ptr.
14234         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14235
14236 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14237
14238         * value.c (value_static_field): Assign field type instead of
14239         containing type when returning an optimized out value.
14240
14241 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14242
14243         * ft32-tdep.c (ft32_read_pc): Remove.
14244         (ft32_write_pc): Remove.
14245         (ft32_gdbarch_init): Update.
14246         * m32r-tdep.c (m32r_read_pc): Remove.
14247         (m32r_gdbarch_init): Update.
14248         * mep-tdep.c (mep_read_pc): Remove.
14249         (mep_gdbarch_init): Update.
14250         * microblaze-tdep.c (microblaze_write_pc): Remove.
14251         (microblaze_gdbarch_init): Update.
14252         * mn10300-tdep.c (mn10300_read_pc): Remove.
14253         (mn10300_write_pc): Remove.
14254         (mn10300_gdbarch_init): Update.
14255         * moxie-tdep.c (moxie_read_pc): Remove.
14256         (moxie_write_pc): Remove.
14257         (moxie_gdbarch_init): Update.
14258
14259 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14260
14261         * expprint.c (print_subexp_standard): Handle
14262         OP_F77_UNDETERMINED_ARGLIST.
14263         (dump_subexp_body_standard): Likewise.
14264
14265 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14266
14267         * target-descriptions.c (tdesc_element_visitor) Add empty
14268         implementations.
14269         (tdesc_type): Move make_gdb_type from here.
14270         (tdesc_type_builtin): Likewise.
14271         (tdesc_type_vector): Likewise.
14272         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14273         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14274         (make_gdb_type_union): Likewise.
14275         (make_gdb_type_flags): Likewise.
14276         (make_gdb_type_enum): Likewise.
14277         (make_gdb_type): New function.
14278         (tdesc_register_type): Use static make_gdb_type.
14279
14280 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14281
14282         * infcmd.c (default_print_one_register_info): Align natural-format
14283         column values consistently one under another.
14284         (pad_to_column): New function.
14285
14286 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14287
14288         * dwarf2read.c (dwarf2_physname): Move commment.
14289
14290 2018-02-01  Leszek Swirski  <leszeks@google.com>
14291
14292         * varobj.c (varobj_formatted_print_options): Allow recursive
14293         pretty printing if pretty printing is enabled.
14294
14295 2018-02-01  Leszek Swirski  <leszeks@google.com>
14296
14297         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14298         names after a structop as a filename.
14299
14300 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14301
14302         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14303         (arm_record_coproc_data_proc): Likewise.
14304
14305 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14306
14307         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14308
14309 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14310
14311         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14312         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14313
14314 2018-01-31  Pedro Alves  <palves@redhat.com>
14315
14316         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14317         * inflow.c (child_terminal_save_inferior): Wrap reference to
14318         tcgetpgrp in HAVE_TERMIOS_H.
14319         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14320         _WIN32.
14321         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14322         always iterate over all inferiors.
14323         (gdbsim_cntrl_c): Adjust.
14324         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14325
14326 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14327
14328         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14329         index type is objfile-owned if the element type is as well.
14330
14331 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14332
14333         GDB 8.1 released.
14334
14335 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14336
14337         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14338         "features/s390x-linux64.c".
14339         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14340         s390_linux32 and s390x_linux64.
14341         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14342         default tdesc.
14343         * s390-tdep.c: Include "features/s390-linux32.c" and
14344         "features/s390x-linux64.c".
14345         (s390_tdesc_valid): Add check for tdesc_has_registers.
14346         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14347         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14348         tdesc_s390x_linux64.
14349         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14350         tdesc_s390x_linux64 to...
14351         * s390-tdep.h: ...here.
14352
14353 2018-01-30  Pedro Alves  <palves@redhat.com>
14354
14355         PR gdb/13211
14356         * config.in, configure: Regenerate.
14357         * configure.ac: Check for getpgid.
14358         * go32-nat.c (go32_pass_ctrlc): New.
14359         (go32_target): Install it.
14360         * inf-child.c (inf_child_target): Install
14361         child_terminal_save_inferior, child_pass_ctrlc and
14362         child_interrupt.
14363         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14364         (inf_ptrace_target): No longer install it.
14365         * infcmd.c (interrupt_target_1): Adjust.
14366         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14367         (child_interrupt): Declare.
14368         (inferior::terminal_state): New.
14369         * inflow.c (struct terminal_info): Update comments.
14370         (inferior_process_group): Delete.
14371         (terminal_is_ours): Delete.
14372         (gdb_tty_state): New.
14373         (child_terminal_init): Adjust.
14374         (is_gdb_terminal, sharing_input_terminal_1)
14375         (sharing_input_terminal): New functions.
14376         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14377         Set the process's actual process group in the foreground if
14378         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14379         mark terminal as the inferior's if not sharing GDB's terminal.
14380         Don't check attach_flag.
14381         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14382         pass down a target_terminal_state.
14383         (child_terminal_save_inferior): New, factored out from ...
14384         (child_terminal_ours_1): ... this.  Handle
14385         target_terminal_state::is_ours_for_output.
14386         (child_interrupt, child_pass_ctrlc): New.
14387         (inflow_inferior_exit): Clear the inferior's terminal_state.
14388         (copy_terminal_info): Copy the inferior's terminal state.
14389         (_initialize_inflow): Remove reference to terminal_is_ours.
14390         * inflow.h (inferior_process_group): Delete.
14391         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14392         * procfs.c (procfs_target): Don't install procfs_interrupt.
14393         (procfs_interrupt): Delete.
14394         * remote.c (remote_serial_quit_handler): Adjust.
14395         (remote_interrupt): Remove ptid parameter.  Adjust.
14396         * target-delegates.c: Regenerate.
14397         * target.c: Include "terminal.h".
14398         (target_terminal::terminal_state): Rename to ...
14399         (target_terminal::m_terminal_state): ... this.
14400         (target_terminal::init): Adjust.
14401         (target_terminal::inferior): Adjust to per-inferior
14402         terminal_state.
14403         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14404         (target_terminal::ours, target_terminal::ours_for_output): Use
14405         target_terminal_is_ours_kind.
14406         (target_interrupt): Remove ptid parameter.  Adjust.
14407         (default_target_pass_ctrlc): Adjust.
14408         * target.h (target_ops::to_terminal_save_inferior): New field.
14409         (target_ops::to_interrupt): Remove ptid_t parameter.
14410         (target_interrupt): Remove ptid_t parameter.  Update comment.
14411         (target_pass_ctrlc): Update comment.
14412         * target/target.h (target_terminal_state): New scoped enum,
14413         factored out of ...
14414         (target_terminal::terminal_state): ... here.
14415         (target_terminal::inferior): Update comments.
14416         (target_terminal::restore_inferior): New.
14417         (target_terminal::is_inferior, target_terminal::is_ours)
14418         (target_terminal::is_ours_for_output): Adjust.
14419         (target_terminal::scoped_restore_terminal_state): Adjust to
14420         rename, and call restore_inferior() instead of inferior().
14421         (target_terminal::scoped_restore_terminal_state::m_state): Change
14422         type.
14423         (target_terminal::terminal_state): Rename to ...
14424         (target_terminal::m_terminal_state): ... this and change type.
14425
14426 2018-01-30  Pedro Alves  <palves@redhat.com>
14427
14428         * linux-nat.c (wait_for_signal): New function.
14429         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14430         directly.
14431         (async_terminal_is_ours)
14432         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14433         (linux_nat_add_target): Don't override
14434         to_terminal_inferior/to_terminal_ours.
14435
14436 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14437
14438         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14439
14440 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14441
14442         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14443         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14444         dwarf2_per_objfile_free here.
14445         (dwarf2_per_objfile_free): Remove.
14446         (_initialize_dwarf2_read): Don't register
14447         dwarf2_per_objfile_free as a registry cleanup.
14448
14449 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14450
14451         Avoid compilation errors in MinGW native builds
14452
14453         The error is triggered by including python-internal.h, and the
14454         error message is:
14455
14456              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14457                       from build-gnulib/import/math.h:27,
14458                       from d:/usr/Python26/include/pyport.h:235,
14459                       from d:/usr/Python26/include/Python.h:58,
14460                       from python/python-internal.h:94,
14461                       from python/py-arch.c:24:
14462              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14463         using ::hypot;
14464                 ^~~~~
14465
14466         This happens because Python headers define 'hypot' to expand t
14467         '_hypot' in the Windows builds.
14468         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14469         'hypoth'.  This avoids a compilation error.
14470
14471 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14472
14473         * MAINTAINERS (Write After Approval): Fix ordering.
14474
14475 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14476
14477         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14478
14479 2018-01-26  Alan Modra  <amodra@gmail.com>
14480
14481         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14482         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14483         Remove nop.  Make const.  Comment.
14484         (powerpc32_plt_stub_so_2): New.
14485         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14486         Correct count.  Update uses.
14487         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14488         Move common code reading PLT entry word.  Correct
14489         powerpc32_plt_stub PLT address calculation.
14490         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14491         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14492         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14493         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14494         (ppc64_standard_linkage8): Likewise.
14495         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14496         Correct insns description.
14497         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14498
14499 2018-01-24  Pedro Alves  <palves@redhat.com>
14500
14501         GCC PR libstdc++/83906
14502         * gdbtypes.c (operator==(const dynamic_prop &,
14503         const dynamic_prop &)): New.
14504         (operator==(const range_bounds &, const range_bounds &)): New.
14505         (check_types_equal): Use them instead of memcmp.
14506         * gdbtypes.h (operator==(const dynamic_prop &,
14507         const dynamic_prop &)): Declare.
14508         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14509         (operator==(const range_bounds &, const range_bounds &)): Declare.
14510         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14511
14512 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14513
14514         * s390-linux-tdep.c (s390_record_address_mask)
14515         (s390_record_calc_disp_common, s390_record_calc_disp)
14516         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14517         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14518         (s390_process_record): Move to s390-tdep.c.
14519         (s390_linux_init_abi_any): Adjust.
14520         * s390-tdep.c (s390_record_address_mask)
14521         (s390_record_calc_disp_common, s390_record_calc_disp)
14522         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14523         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14524         (s390_process_record): Moved from s390-linux-tdep.c
14525         (s390_gdbarch_init): Adjust.
14526
14527 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14528
14529         * s390-linux-nat.c (s390-tdep.h): New include.
14530         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14531         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14532         (ALLDEPFILES): Add s390-tdep.c.
14533         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14534         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14535         * s390-tdep.h: ...this.  New file.
14536         * s390-linux-tdep.c (s390-tdep.h): New include.
14537         (_initialize_s390_tdep): Rename to...
14538         (_initialize_s390_linux_tdep): ...this and adjust.
14539         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14540         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14541         s390-tdep.h.
14542         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14543         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14544         (s390_is_partial_instruction, s390_software_single_step)
14545         (is_non_branch_ril, s390_displaced_step_copy_insn)
14546         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14547         (s390_prologue_data, s390_addr, s390_store, s390_load)
14548         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14549         (s390_register_call_saved, s390_guess_tracepoint_registers)
14550         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14551         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14552         (s390_pseudo_register_name, s390_pseudo_register_type)
14553         (s390_pseudo_register_read, s390_pseudo_register_write)
14554         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14555         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14556         (s390_addr_bits_remove, s390_address_class_type_flags)
14557         (s390_address_class_type_flags_to_name)
14558         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14559         (s390_function_arg_float, s390_function_arg_vector)
14560         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14561         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14562         (s390_frame_align, s390_register_return_value, s390_return_value)
14563         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14564         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14565         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14566         (s390_trad_frame_prev_register, s390_unwind_cache)
14567         (s390_prologue_frame_unwind_cache)
14568         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14569         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14570         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14571         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14572         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14573         (s390_frame_base_address, s390_local_base_address)
14574         (s390_frame_base, s390_gcc_target_options)
14575         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14576         (s390_validate_reg_range, s390_tdesc_valid)
14577         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14578         * s390-tdep.c: ...this.  New file.
14579
14580 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14581
14582         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14583         (s390_process_record, s390_gdbarch_tdep_alloc)
14584         (s390_linux_init_abi_any): Use/set new hook.
14585
14586 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14587
14588         * s390-linux-tdep.c (osabi.h): New include.
14589         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14590         (s390_linux_init_abi_any): New functions.
14591         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14592
14593 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14594
14595         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14596         tdesc_has_registers check
14597
14598 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14599
14600         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14601         (s390_validate_reg_range): New macro.
14602         (s390_gdbarch_init): Adjust.
14603
14604 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14605
14606         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14607         (s390_gdbarch_tdep_alloc): Adjust.
14608         (s390_gdbarch_init): Adjust.
14609
14610 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14611
14612         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14613         <have_tdb>: Change type to bool.
14614         (s390_gdbarch_tdep_alloc): Adjust.
14615         (s390_gdbarch_init): Adjust.
14616
14617 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14618
14619         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14620         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14621         (s390_gdbarch_tdep_alloc): New function.
14622         (s390_gdbarch_init): Allocate tdep at start and use its fields
14623         instead of separate variables.
14624
14625 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14626
14627         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14628         when looking for cached gdbarch and add comment for remaining.
14629
14630 2018-01-22  Pedro Alves  <palves@redhat.com>
14631             Sergio Durigan Junior  <sergiodj@redhat.com>
14632
14633         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14634         case.
14635
14636 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14637
14638         * MAINTAINERS: Update my company e-mail address.
14639
14640 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14641
14642         * regcache.c (cooked_write_test): New function.
14643         (_initialize_regcache): Register the test.
14644
14645 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14646
14647         * ia64-tdep.c (ia64_pseudo_register_read): Call
14648         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14649         * m32c-tdep.c (m32c_cat_read): Likewise.
14650         (m32c_r3r2r1r0_read): Likewise.
14651         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14652         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14653
14654 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14655
14656         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14657         method raw_read instead of regcache_raw_read.
14658         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14659         * arm-tdep.c (arm_neon_quad_read): Likewise.
14660         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14661         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14662         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14663         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14664         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14665         (i386_pseudo_register_read_into_value): Likewise.
14666         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14667         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14668         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14669         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14670         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14671         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14672         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14673         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14674         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14675
14676 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14677
14678         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14679         * configure.tgt: Remove target mt.
14680         * mt-tdep.c: Remove.
14681         * regcache.c (cooked_read_test): Remove the check for mt.
14682
14683 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14684
14685         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14686         instead of gdbarch_pseudo_register_read_value.
14687
14688 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14689
14690         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14691         language is Ada.
14692
14693 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14694
14695         * linespec.c (create_sals_line_offset): Remove code that preserved
14696         the symtab_and_line's line number.
14697
14698 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14699
14700         * varobj.c (varobj_create): Don't set valid_block when creating a
14701         floating varobj.
14702
14703 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14704
14705         * varobj.c (varobj_create): Remove out of date comment.
14706
14707 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14708
14709         PR mi/20395
14710         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14711         updating innermost block.
14712         * parse.c (innermost_block_tracker::update): Take extra type
14713         parameter, and check types match before updating innermost block.
14714         (write_dollar_variable): Update innermost block for registers.
14715         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14716         (innermost_block_tracker::innermost_block_tracker): Initialise
14717         m_types member.
14718         (innermost_block_tracker::reset): Take type parameter.
14719         (innermost_block_tracker::update): Take type parameter, and pass
14720         type through as needed.
14721         (innermost_block_tracker::m_types): New member.
14722         * varobj.c (varobj_create): Pass type when reseting innermost
14723         block.
14724
14725 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14726
14727         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14728         * ada-lang.c (resolve_subexp): Likewise.
14729         * breakpoint.c (set_breakpoint_condition) Likewise.
14730         (watch_command_1) Likewise.
14731         * c-exp.y (variable): Likewise.
14732         * d-exp.y (PrimaryExpression): Likewise.
14733         * f-exp.y (variable): Likewise.
14734         * go-exp.y (variable): Likewise.
14735         * m2-exp.y (variable): Likewise.
14736         * objfiles.c (objfile::~objfile): Likewise.
14737         * p-exp.y (variable): Likewise.
14738         * parse.c (innermost_block): Change type.
14739         * parser-defs.h (class innermost_block_tracker): New.
14740         (innermost_block): Change to innermost_block_tracker.
14741         * printcmd.c (display_command): Switch to innermost_block API.
14742         (do_one_display): Likewise.
14743         * rust-exp.y (do_one_display): Likewise.
14744         * symfile.c (clear_symtab_users): Likewise.
14745         * varobj.c (varobj_create): Switch to innermost_block API, replace
14746         use of innermost_block with block stored on varobj object.
14747
14748 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14749
14750         * expression.h (innermost_block): Remove declaration.
14751         * varobj.c: Add 'parser-defs.h' include.
14752
14753 2018-01-19  Tom Tromey  <tom@tromey.com>
14754
14755         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14756         symbols in the static and global blocks.
14757
14758 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14759
14760         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14761         gdb_ptrace.h, and move including gdb_wait.h ...
14762         * nat/linux-ptrace.h: ... to here.
14763
14764 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14765
14766         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14767         inf_ptrace_detach_success.
14768         (inf_ptrace_detach_success): Add inferior parameter, use it
14769         instead of inferior_ptid, pass it to detach_inferior.
14770         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14771         parameter.
14772         * inferior.c (detach_inferior): Add overload that takes an
14773         inferior object.
14774         * inferior.h (detach_inferior): Likewise.
14775         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14776         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14777         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14778
14779 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14780
14781         * target.h (struct target_ops) <to_detach>: Add inferior
14782         parameter.
14783         (target_detach): Likewise.
14784         * target.c (dispose_inferior): Pass inferior down.
14785         (target_detach): Pass inferior down.  Assert that it is equal to
14786         the current inferior.
14787         * aix-thread.c (aix_thread_detach): Pass inferior down.
14788         * corefile.c (core_file_command): Pass current_inferior() down.
14789         * corelow.c (core_detach): Add inferior parameter.
14790         * darwin-nat.c (darwin_detach): Likewise.
14791         * gnu-nat.c (gnu_detach): Likewise.
14792         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14793         * infcmd.c (detach_command): Pass current_inferior() down to
14794         target_detach.
14795         * infrun.c (follow_fork_inferior): Pass parent_inf to
14796         target_detach.
14797         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14798         target_detach.
14799         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14800         * linux-thread-db.c (thread_db_detach): Likewise.
14801         * nto-procfs.c (procfs_detach): Likewise.
14802         * procfs.c (procfs_detach): Likewise.
14803         * record.c (record_detach): Likewise.
14804         * record.h (struct inferior): Forward-declare.
14805         (record_detach): Add inferior parameter.
14806         * remote-sim.c (gdbsim_detach): Likewise.
14807         * remote.c (remote_detach_1): Likewise.
14808         (remote_detach): Likewise.
14809         (extended_remote_detach): Likewise.
14810         * sol-thread.c (sol_thread_detach): Likewise.
14811         * target-debug.h (target_debug_print_inferior_p): New macro.
14812         * target-delegates.c: Re-generate.
14813         * top.c (kill_or_detach): Pass inferior down to target_detach.
14814         * windows-nat.c (windows_detach): Add inferior parameter.
14815
14816 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14817
14818         * target.h (struct target_ops) <to_detach>: Remove args
14819         parameter.
14820         (target_detach): Likewise.
14821         * target.c (dispose_inferior): Adjust.
14822         (target_detach): Remove args parameter, adjust.
14823         * aix-thread.c (aix_thread_detach): Adjust.
14824         * corefile.c (core_file_command): Adjust.
14825         * corelow.c (core_detach): Adjust.
14826         * darwin-nat.c (darwin_detach): Adjust.
14827         * gnu-nat.c (gnu_detach): Adjust.
14828         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14829         * infcmd.c (detach_command): Adjust
14830         * infrun.c (follow_fork_inferior): Adjust.
14831         (handle_vfork_child_exec_or_exit): Adjust.
14832         * linux-fork.c (linux_fork_detach): Remove args parameter.
14833         * linux-fork.h (linux_fork_detach): Likewise.
14834         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14835         * linux-thread-db.c (thread_db_detach): Likewise.
14836         * nto-procfs.c (procfs_detach): Likewise.
14837         * procfs.c (procfs_detach): Likewise.
14838         (do_detach): Remove signo parameter.
14839         * record.c (record_detach): Remove args parameter.
14840         * record.h (record_detach): Likewise.
14841         * remote-sim.c (gdbsim_detach): Likewise.
14842         * remote.c (remote_detach_1): Likewise.
14843         (remote_detach): Likewise.
14844         (extended_remote_detach): Likewise.
14845         * sol-thread.c (sol_thread_detach): Likewise.
14846         * target-delegates.c: Re-generate.
14847         * top.c (struct qt_args) <args>: Remove field.
14848         (kill_or_detach): Don't pass args.
14849         (quit_force): Don't set args.
14850         * windows-nat.c (windows_detach): Remove args parameter.
14851
14852 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14853
14854         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14855         (arm_linux_init_abi): Install it.
14856
14857 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14858
14859         * osabi.c (gdb_osabi_names): Extend the regexp for
14860         arm-linux-gnueabihf.
14861
14862 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14863
14864         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14865         m_abbrevs.
14866         (abbrev_table::add_abbrev): Update.
14867         (abbrev_table::lookup_abbrev): Update.
14868
14869 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14870
14871         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14872
14873 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14874
14875         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14876         to "std::string".
14877
14878 2018-01-17  Tom Tromey  <tom@tromey.com>
14879
14880         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14881
14882 2018-01-17  Tom Tromey  <tom@tromey.com>
14883
14884         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14885         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14886         (create_array_type_with_stride): Update.
14887         * dwarf2read.c (set_die_type): Update.
14888
14889 2018-01-17  Tom Tromey  <tom@tromey.com>
14890
14891         * dwarf2read.c (delayed_method_info): Remove typedef.
14892         (dwarf2_cu::method_info): Now a std::vector.
14893         (add_to_method_list): Update.
14894         (free_delayed_list): Remove.
14895         (compute_delayed_physnames): Update.
14896         (process_full_comp_unit, process_full_type_unit): Clear the method
14897         list.  Remove cleanups.
14898         (psymtab_include_file_name): Add name_holder parameter.  Use
14899         unique_xmalloc_ptr.
14900         (dwarf_decode_lines): Update.
14901
14902 2018-01-17  Tom Tromey  <tom@tromey.com>
14903             Simon Marchi  <simon.marchi@ericsson.com>
14904
14905         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14906         (dwarf2_per_objfile::free_cached_comp_units)
14907         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14908         (init_cutu_and_read_dies_no_follow): Update.
14909         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14910         (dwarf2_cu::~dwarf2_cu): New.
14911         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14912         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14913
14914 2018-01-17  Tom Tromey  <tom@tromey.com>
14915             Simon Marchi  <simon.marchi@ericsson.com>
14916
14917         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14918         (struct die_reader_specs) <abbrev_table>: New member.
14919         (struct abbrev_table): Add constructor.
14920         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14921         <abbrev_obstack>: Now an auto_obstack.
14922         (abbrev_table_up): New typedef.
14923         (init_cu_die_reader): Add abbrev_table parameter.
14924         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14925         Add result_dwo_abbrev_table.
14926         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14927         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14928         Update.
14929         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14930         parameter.
14931         (skip_children): Update.
14932         (abbrev_table::alloc_abbrev): Rename from
14933         abbrev_table_alloc_abbrev.
14934         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14935         (abbrev_table::lookup_abbrev): Rename from
14936         abbrev_table_lookup_abbrev.
14937         (abbrev_table_read_table): Return abbrev_table_up.
14938         (abbrev_table_free, abbrev_table_free_cleanup)
14939         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14940         (load_partial_dies): Update.
14941
14942 2018-01-17  Tom Tromey  <tom@tromey.com>
14943
14944         * dwarf2read.c (dwarf2_compute_name): Update comment.
14945         (read_func_scope, read_variable): Update.
14946         (new_symbol): Remove.
14947         (new_symbol_full): Rename to new_symbol.
14948
14949 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14950
14951         PR gdb/16577
14952         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14953         a warning instead of throwing an error, set section size to 0 and return
14954         NULL.
14955         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14956
14957 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14958
14959         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14960         std::string.
14961         (linux_ptrace_attach_fail_reason_string): Likewise.
14962         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14963         Likewise.
14964         (linux_ptrace_attach_fail_reason_string): Likewise.
14965         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14966
14967 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14968
14969         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14970
14971 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14972
14973         PR gdb/21559
14974         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14975         checking for fs_base/gs_base fields in struct user_regs_struct.
14976         * configure: Regenerate.
14977
14978 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14979
14980         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14981         function.
14982         (aarch64_linux_init_abi): Install it to gdbarch hook
14983         gcc_target_options.
14984
14985 2018-01-15  Pedro Alves  <palves@redhat.com>
14986
14987         * common/signals-state-save-restore.c
14988         (save_original_signals_state): Fix typos.
14989
14990 2017-01-12  Tom Tromey  <tom@tromey.com>
14991             Sergio Durigan Junior  <sergiodj@redhat.com>
14992
14993         * Makefile.in (install-only): Install gdb-add-index.
14994
14995 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14996
14997         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14998
14999 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15000
15001         * infrun.c (keep_going_pass_signal): Clear step-over info when
15002         insert_breakpoints fails.
15003
15004 2018-01-11  Pedro Alves  <palves@redhat.com>
15005
15006         PR gdb/22583
15007         * infrun.c (resume): Rename to ...
15008         (resume_1): ... this.
15009         (resume): Reimplement as wrapper around resume_1.
15010
15011 2018-01-11  Pedro Alves  <palves@redhat.com>
15012
15013         PR remote/22597
15014         * remote.c (remote_parse_stop_reply): Default to the last-set
15015         general thread instead of to 'magic_null_ptid'.
15016
15017 2018-01-10  Pedro Alves  <palves@redhat.com>
15018
15019         * language.h (language_get_symbol_name_matcher): Rename ...
15020         (get_symbol_name_matcher): ... this.
15021         * language.c (language_get_symbol_name_matcher): Ditto.
15022         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15023         callers adjusted.
15024
15025 2018-01-10  Pedro Alves  <palves@redhat.com>
15026
15027         PR gdb/22670
15028         * dwarf2read.c
15029         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15030         Adjust to use language_get_symbol_name_matcher instead of
15031         language_defn::la_get_symbol_name_matcher.
15032         * language.c (language_get_symbol_name_matcher): If in Ada mode
15033         and the lookup name is a verbatim match, return Ada's matcher.
15034         * language.h (language_get_symbol_name_matcher): Adjust comment.
15035         (ada_lookup_name_info::verbatim_p):: New method.
15036
15037 2018-01-10  Pedro Alves  <palves@redhat.com>
15038
15039         PR gdb/22670
15040         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15041         minsym's language is language_auto or language_cplus, pass down
15042         language_ada instead.
15043         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15044
15045 2018-01-10  Pedro Alves  <palves@redhat.com>
15046
15047         PR gdb/22670
15048         * minsyms.c (linkage_name_str): New function.
15049         (iterate_over_minimal_symbols): Use it.
15050
15051 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15052
15053         * NEWS: Document that 'info proc' now works on FreeBSD.
15054
15055 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15056
15057         * configure.ac: Check for kinfo_getfile in libutil.
15058         * configure: Regenerate.
15059         * config.in: Regenerate.
15060         * fbsd-nat.c: Include "fbsd-tdep.h".
15061         (fbsd_fetch_cmdline): New.
15062         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15063         rather than calling error.
15064         (fbsd_info_proc): New.
15065         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15066         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15067         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15068
15069 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15070
15071         * fbsd-nat.c (struct free_deleter): Remove.
15072         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15073
15074 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15075
15076         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15077         NULL for an empty pathname.
15078
15079 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15080
15081         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15082         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15083         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15084         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15085         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15086         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15087         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15088         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15089         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15090         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15091         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15092         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15093         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15094         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15095         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15096
15097 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15098
15099         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15100         (gnu_xfer_auxv): New function.
15101         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15102         TARGET_OBJECT_AUXV.
15103
15104 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15105             Simon Marchi  <simon.marchi@ericsson.com>
15106
15107         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15108         common/selftest.c.
15109         (COMMON_OBS): Remove selftest.o.
15110         * configure.ac: Append selftest-arch.c and common/selftest.c to
15111         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15112         * configure: Re-generated.
15113         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15114         GDB_SELF_TEST.
15115         (maintenance_info_selftests): Likewise.
15116
15117 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15118
15119         * ada-valprint.c (val_print_packed_array_elements): Use
15120         proper number of elements when printing an array indexed
15121         by an enumeration type.
15122
15123 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15124
15125         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15126         (dw2_get_file_names_reader): Adjust.
15127         (lookup_dwo_signatured_type): Adjust.
15128         (lookup_dwp_signatured_type): Adjust.
15129         (lookup_signatured_type): Adjust.
15130         (create_type_unit_group): Adjust.
15131         (get_type_unit_group): Adjust.
15132         (process_psymtab_comp_unit_reader): Adjust.
15133         (build_type_psymtabs_reader): Adjust.
15134         (scan_partial_symbols): Adjust.
15135         (add_partial_symbol): Adjust.
15136         (add_partial_subprogram): Adjust.
15137         (peek_die_abbrev): Adjust.
15138         (fixup_go_packaging): Adjust.
15139         (process_imported_unit_die): Adjust.
15140         (dwarf2_compute_name): Adjust.
15141         (dwarf2_physname): Adjust.
15142         (read_import_statement): Adjust.
15143         (handle_DW_AT_stmt_list): Adjust.
15144         (read_file_scope): Adjust.
15145         (read_func_scope): Adjust.
15146         (read_lexical_block_scope): Adjust.
15147         (read_call_site_scope): Adjust.
15148         (read_variable): Adjust.
15149         (dwarf2_rnglists_process): Adjust.
15150         (dwarf2_ranges_process): Adjust.
15151         (dwarf2_ranges_read): Adjust.
15152         (dwarf2_get_pc_bounds): Adjust.
15153         (dwarf2_record_block_ranges): Adjust.
15154         (dwarf2_add_field): Adjust.
15155         (dwarf2_add_member_fn): Adjust.
15156         (read_structure_type): Adjust.
15157         (process_structure_scope): Adjust.
15158         (read_enumeration_type): Adjust.
15159         (read_array_type): Adjust.
15160         (mark_common_block_symbol_computed): Adjust.
15161         (read_common_block): Adjust.
15162         (read_namespace_type): Adjust.
15163         (read_namespace): Adjust.
15164         (read_module_type): Adjust.
15165         (read_tag_pointer_type): Adjust.
15166         (read_tag_ptr_to_member_type): Adjust.
15167         (read_tag_string_type): Adjust.
15168         (read_subroutine_type): Adjust.
15169         (read_typedef): Adjust.
15170         (read_base_type): Adjust.
15171         (attr_to_dynamic_prop): Adjust.
15172         (read_subrange_type): Adjust.
15173         (read_unspecified_type): Adjust.
15174         (dwarf2_read_abbrevs): Adjust.
15175         (load_partial_dies): Adjust.
15176         (read_partial_die): Adjust.
15177         (find_partial_die): Adjust.
15178         (guess_partial_die_structure_name): Adjust.
15179         (fixup_partial_die): Adjust.
15180         (read_attribute_value): Adjust.
15181         (read_addr_index): Adjust.
15182         (read_addr_index_from_leb128): Adjust.
15183         (read_str_index): Adjust.
15184         (dwarf2_string_attr): Adjust.
15185         (get_debug_line_section): Adjust.
15186         (dwarf_decode_line_header): Adjust.
15187         (lnp_state_machine::check_line_address): Adjust.
15188         (dwarf_decode_lines_1): Adjust.
15189         (dwarf_decode_lines): Adjust.
15190         (dwarf2_start_symtab): Adjust.
15191         (var_decode_location): Adjust.
15192         (new_symbol_full): Adjust.
15193         (dwarf2_const_value_data): Adjust.
15194         (dwarf2_const_value_attr): Adjust.
15195         (dwarf2_const_value): Adjust.
15196         (die_type): Adjust.
15197         (die_containing_type): Adjust.
15198         (build_error_marker_type): Adjust.
15199         (lookup_die_type): Adjust.
15200         (guess_full_die_structure_name): Adjust.
15201         (anonymous_struct_prefix): Adjust.
15202         (determine_prefix): Adjust.
15203         (dwarf2_name): Adjust.
15204         (follow_die_ref_or_sig): Adjust.
15205         (follow_die_offset): Adjust.
15206         (follow_die_ref): Adjust.
15207         (follow_die_sig_1): Adjust.
15208         (follow_die_sig): Adjust.
15209         (get_signatured_type): Adjust.
15210         (get_DW_AT_signature_type): Adjust.
15211         (decode_locdesc): Adjust.
15212         (dwarf_decode_macros): Adjust.
15213         (cu_debug_loc_section): Adjust.
15214         (fill_in_loclist_baton): Adjust.
15215         (dwarf2_symbol_mark_computed): Adjust.
15216         (init_one_comp_unit): Don't assign
15217         dwarf2_cu::dwarf2_per_objfile.
15218         (set_die_type): Adjust.
15219
15220 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15221
15222         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15223         <dwarf2_per_objfile>: New field.
15224         (dwarf2_per_objfile): Remove global.
15225         (get_dwarf2_per_objfile): New function.
15226         (set_dwarf2_per_objfile): New function.
15227         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15228         dwarf2_per_objfile.
15229         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15230         (read_abbrev_offset): Likewise.
15231         (read_indirect_string): Likewise.
15232         (read_indirect_line_string): Likewise.
15233         (read_indirect_string_at_offset): Likewise.
15234         (read_indirect_string_from_dwz): Likewise.
15235         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15236         dwarf2_per_objfile.
15237         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15238         (create_all_comp_units): Change objfile parameter to
15239         dwarf2_per_objfile.
15240         (create_all_type_units): Likewise.
15241         (process_queue): Add dwarf2_per_objfile parameter.
15242         (read_and_check_comp_unit_head): Likewise.
15243         (lookup_dwo_unit_in_dwp): Likewise.
15244         (get_dwp_file): Likewise.
15245         (process_cu_includes): Likewise.
15246         (struct free_dwo_file_cleanup_data): New struct.
15247         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15248         set_dwarf2_per_objfile.
15249         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15250         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15251         context, adjust calls.
15252         (dw2_instantiate_symtab): Likewise.
15253         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15254         (dw2_get_cu): Likewise.
15255         (create_cu_from_index_list): Change objfile parameter to
15256         dwarf2_per_objfile.
15257         (create_cus_from_index_list): Get dwarf2_per_objfile from
15258         context, adjust calls.
15259         (create_cus_from_index): Likewise.
15260         (create_signatured_type_table_from_index): Change objfile
15261         parameter to dwarf2_per_objfile.
15262         (create_signatured_type_table_from_debug_names): Change objfile
15263         parameter to dwarf2_per_objfile.
15264         (create_addrmap_from_index): Likewise.
15265         (create_addrmap_from_aranges): Likewise.
15266         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15267         (dw2_setup): Remove.
15268         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15269         context.
15270         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15271         get_dwarf2_per_objfile.
15272         (dw2_forget_cached_source_info): Likewise.
15273         (dw2_map_symtabs_matching_filename): Likewise.
15274         (struct dw2_symtab_iterator) <index>: Remove.
15275         <dwarf2_per_objfile>: New field.
15276         (dw2_symtab_iter_init): Replace index parameter with
15277         dwarf2_per_objfile.
15278         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15279         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15280         (dw2_print_stats): Likewise.
15281         (dw2_dump): Likewise.
15282         (dw2_expand_symtabs_for_function): Likewise.
15283         (dw2_expand_all_symtabs): Likewise.
15284         (dw2_expand_symtabs_with_fullname): Likewise.
15285         (dw2_expand_marked_cus): Replace index and objfile parameters
15286         with dwarf2_per_objfile.
15287         (dw_expand_symtabs_matching_file_matcher): Add
15288         dwarf2_per_objfile parameter and adjust calls.
15289         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15290         adjust calls.
15291         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15292         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15293         adjust calls.
15294         (create_cus_from_debug_names_list): Replace objfile parameter
15295         with dwarf2_per_objfile and adjust calls.
15296         (create_cus_from_debug_names): Likewise.
15297         (dwarf2_read_debug_names): Likewise.
15298         (mapped_debug_names::namei_to_name): Adjust call.
15299         (dw2_debug_names_iterator::next): Likewise.
15300         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15301         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15302         (dw2_debug_names_dump): Likewise.
15303         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15304         (dw2_debug_names_expand_symtabs_matching): Likewise.
15305         (dwarf2_initialize_objfile): Likewise.
15306         (dwarf2_build_psymtabs): Likewise.
15307         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15308         this_cu.
15309         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15310         (read_and_check_comp_unit_head): Likewise.
15311         (read_abbrev_offset): Likewise.
15312         (create_debug_type_hash_table): Likewise.
15313         (create_debug_types_hash_table): Likewise.
15314         (create_all_type_units): Replace objfile parameter with
15315         dwarf2_per_objfile.
15316         (add_type_unit): Add dwarf2_per_objfile parameter.
15317         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15318         with dwarf2_per_objfile.
15319         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15320         (lookup_dwp_signatured_type): Likewise.
15321         (lookup_signatured_type): Likewise.
15322         (read_cutu_die_from_dwo): Likewise.
15323         (init_tu_and_read_dwo_dies): Likewise.
15324         (init_cutu_and_read_dies): Likewise.
15325         (init_cutu_and_read_dies_no_follow): Likewise.
15326         (allocate_type_unit_groups_table): Add objfile parameter.
15327         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15328         (get_type_unit_group): Likewise.
15329         (process_psymtab_comp_unit): Update call.
15330         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15331         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15332         (print_tu_stats): Likewise.
15333         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15334         in void* parameter.
15335         (build_type_psymtabs): Change objfile parameter to
15336         dwarf2_per_objfile.
15337         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15338         passed in void* parameter.
15339         (process_skeletonless_type_units): Change objfile parameter to
15340         dwarf2_per_objfile.
15341         (set_partial_user): Likewise.
15342         (dwarf2_build_psymtabs_hard): Likewise.
15343         (read_comp_units_from_section): Likewise.
15344         (create_all_comp_units): Likewise.
15345         (scan_partial_symbols): Update calls.
15346         (add_partial_symbol): Likewise.
15347         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15348         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15349         (process_queue): Add dwarf2_per_objfile parameter.
15350         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15351         (compute_compunit_symtab_includes): Likewise.
15352         (process_cu_includes): Add dwarf2_per_objfile parameter.
15353         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15354         (process_full_type_unit): Likewise.
15355         (process_imported_unit_die): Update call.
15356         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15357         (read_file_scope): Likewise.
15358         (allocate_dwo_file_hash_table): Add objfile parameter.
15359         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15360         (create_cus_hash_table): Likewise.
15361         (create_dwp_hash_table): Likewise.
15362         (create_dwo_unit_in_dwp_v1): Likewise.
15363         (create_dwp_v2_section): Likewise.
15364         (create_dwo_unit_in_dwp_v2): Likewise.
15365         (lookup_dwo_unit_in_dwp): Likewise.
15366         (try_open_dwop_file): Likewise.
15367         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15368         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15369         cleanup to include a reference to dwarf2_per_objfile.
15370         (open_dwp_file): Add dwarf2_per_objfile parameter.
15371         (open_and_init_dwp_file): Likewise.
15372         (get_dwp_file): Likewise.
15373         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15374         (queue_and_load_all_dwo_tus): Update call.
15375         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15376         data.
15377         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15378         (dwarf2_ranges_process): Likewise.
15379         (dwarf2_get_pc_bounds): Likewise.
15380         (mark_common_block_symbol_computed): Likewise.
15381         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15382         (dwarf2_read_abbrevs): Update call.
15383         (read_partial_die): Use dwarf2_per_objfile from cu.
15384         (find_partial_die): Likewise.
15385         (fixup_partial_die): Likewise.
15386         (read_attribute_value): Likewise.
15387         (read_indirect_string_at_offset_from): Add objfile parameter.
15388         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15389         parameter.
15390         (read_indirect_string_from_dwz): Add objfile parameter.
15391         (read_indirect_string): Add objfile parameter.
15392         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15393         (read_addr_index): Use dwarf2_per_objfile from cu.
15394         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15395         call dw2_setup.
15396         (read_str_index): Use dwarf2_per_objfile from cu.
15397         (get_debug_line_section): Likewise.
15398         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15399         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15400         (new_symbol_full): Use dwarf2_per_objfile from cu.
15401         (build_error_marker_type): Likewise.
15402         (lookup_die_type): Likewise.
15403         (determine_prefix): Likewise.
15404         (follow_die_offset): Likewise.
15405         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15406         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15407         (dwarf2_fetch_die_type_sect_off): Likewise.
15408         (dwarf2_get_die_type): Likewise.
15409         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15410         (get_signatured_type): Likewise.
15411         (get_DW_AT_signature_type): Likewise.
15412         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15413         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15414         (cu_debug_loc_section): Likewise.
15415         (fill_in_loclist_baton): Likewise.
15416         (dwarf2_symbol_mark_computed): Likewise.
15417         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15418         dwarf2_per_objfile.
15419         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15420         parameter.
15421         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15422         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15423         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15424         (set_die_type): Use dwarf2_free_objfile from cu.
15425         (get_die_type_at_offset): Likewise.
15426         (dwarf2_per_objfile_free): Don't assign global variable.
15427         (debug_names) <constructor>: Add dwarf2_per_objfile
15428         parameter, update m_debugstrlookup construction.
15429         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15430         parameter.
15431         <m_dwarf2_per_objfile>: New field.
15432         <lookup>: Use m_dwarf2_per_objfile.
15433         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15434         (psyms_seen_size): Likewise.
15435         (write_gdbindex): Replace objfile parameter with
15436         dwarf2_per_objfile.
15437         (write_debug_names): Likewise.
15438         (write_psymtabs_to_index): Likewise.
15439         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15440         calls.
15441
15442 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15443
15444         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15445         <dwarf2_per_objfile>: New field.
15446         (struct dwarf2_per_cu_data) <objfile>: Remove.
15447         <dwarf2_per_objfile>: New field.
15448         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15449         of objfile.
15450         (create_signatured_type_table_from_index): Likewise.
15451         (create_debug_type_hash_table): Likewise.
15452         (fill_in_sig_entry_from_dwo_entry): Likewise.
15453         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15454         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15455         objfile.
15456         (create_partial_symtab): Access objfile through
15457         dwarf2_per_objfile.
15458         (process_psymtab_comp_unit_reader): Likewise.
15459         (read_comp_units_from_section): Likewise.
15460         (scan_partial_symbols): Likewise.
15461         (add_partial_symbol): Likewise.
15462         (add_partial_subprogram): Likewise.
15463         (peek_die_abbrev): Likewise.
15464         (fixup_go_packaging): Likewise.
15465         (process_full_comp_unit): Likewise.
15466         (process_full_type_unit): Likewise.
15467         (process_imported_unit_die): Likewise.
15468         (dwarf2_compute_name): Likewise.
15469         (dwarf2_physname): Likewise.
15470         (read_import_statement): Likewise.
15471         (create_cus_hash_table): Assign dwarf2_physname instead of
15472         objfile.
15473         (read_func_scope): Access objfile through dwarf2_per_objfile.
15474         (read_lexical_block_scope): Likewise.
15475         (read_call_site_scope): Likewise.
15476         (read_variable): Likewise.
15477         (dwarf2_rnglists_process): Likewise.
15478         (dwarf2_ranges_process): Likewise.
15479         (dwarf2_ranges_read): Likewise.
15480         (dwarf2_record_block_ranges): Likewise.
15481         (dwarf2_add_field): Likewise.
15482         (dwarf2_add_member_fn): Likewise.
15483         (read_structure_type): Likewise.
15484         (process_structure_scope): Likewise.
15485         (read_enumeration_type): Likewise.
15486         (read_array_type): Likewise.
15487         (read_common_block): Likewise.
15488         (read_namespace_type): Likewise.
15489         (read_namespace): Likewise.
15490         (read_module_type): Likewise.
15491         (read_tag_pointer_type): Likewise.
15492         (read_tag_ptr_to_member_type): Likewise.
15493         (read_tag_string_type): Likewise.
15494         (read_subroutine_type): Likewise.
15495         (read_typedef): Likewise.
15496         (read_base_type): Likewise.
15497         (attr_to_dynamic_prop): Likewise.
15498         (read_subrange_type): Likewise.
15499         (read_unspecified_type): Likewise.
15500         (load_partial_dies): Likewise.
15501         (read_partial_die): Likewise.
15502         (find_partial_die): Likewise.
15503         (guess_partial_die_structure_name): Likewise.
15504         (fixup_partial_die): Likewise.
15505         (read_attribute_value): Likewise.
15506         (read_addr_index_from_leb128): Likewise.
15507         (dwarf2_read_addr_index): Likewise.
15508         (dwarf2_string_attr): Likewise.
15509         (lnp_state_machine::check_line_address): Likewise.
15510         (dwarf_decode_lines_1): Likewise.
15511         (dwarf_decode_lines): Likewise.
15512         (dwarf2_start_symtab): Likewise.
15513         (var_decode_location): Likewise.
15514         (new_symbol_full): Likewise.
15515         (dwarf2_const_value_data): Likewise.
15516         (dwarf2_const_value_attr): Likewise.
15517         (dwarf2_const_value): Likewise.
15518         (die_type): Likewise.
15519         (die_containing_type): Likewise.
15520         (lookup_die_type): Likewise.
15521         (guess_full_die_structure_name): Likewise.
15522         (anonymous_struct_prefix): Likewise.
15523         (dwarf2_name): Likewise.
15524         (follow_die_ref_or_sig): Likewise.
15525         (follow_die_offset): Likewise.
15526         (follow_die_ref): Likewise.
15527         (dwarf2_fetch_die_loc_sect_off): Likewise.
15528         (dwarf2_fetch_constant_bytes): Likewise.
15529         (dwarf2_fetch_die_type_sect_off): Likewise.
15530         (dwarf2_get_die_type): Likewise.
15531         (follow_die_sig): Likewise.
15532         (decode_locdesc): Likewise.
15533         (dwarf2_per_cu_objfile): Likewise.
15534         (dwarf2_per_cu_text_offset): Likewise.
15535         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15536         objfile.
15537         (set_die_type): Access objfile through
15538         dwarf2_per_objfile.
15539
15540 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15541
15542         * valprint.c (converted_character_d): Remove typedef.
15543         (DEF_VEC_O (converted_character_d)): Remove.
15544         (count_next_character): Use std::vector.
15545         (print_converted_chars_to_obstack): Likewise.
15546         (generic_printstr): Likewise.
15547
15548 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15549
15550         * xml-support.h (struct gdb_xml_value): Add constructor.
15551         <value>: Change type to unique_xmalloc_ptr.
15552         (gdb_xml_value_s): Remove typedef.
15553         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15554         (gdb_xml_element_start_handler): Change parameter type to
15555         std::vector.
15556         (xml_find_attribute): Likewise.
15557         * xml-support.c (xml_find_attribute): Change parameter type to
15558         std::vector and adjust.
15559         (gdb_xml_values_cleanup): Remove.
15560         (gdb_xml_parser::start_element): Adjust to std::vector.
15561         (xinclude_start_include): Change paraeter type to std::vector
15562         and adjust.
15563         * btrace.c (check_xml_btrace_version): Likewise.
15564         (parse_xml_btrace_block): Likewise.
15565         (parse_xml_btrace_pt_config_cpu): Likewise.
15566         (parse_xml_btrace_pt): Likewise.
15567         (parse_xml_btrace_conf_bts): Likewise.
15568         (parse_xml_btrace_conf_pt): Likewise.
15569         * memory-map.c (memory_map_start_memory): Likewise.
15570         (memory_map_start_property): Likewise.
15571         * osdata.c (osdata_start_osdata): Likewise.
15572         (osdata_start_item): Likewise.
15573         (osdata_start_column): Likewise.
15574         * remote.c (start_thread): Likewise.
15575         * solib-aix.c (library_list_start_library): Likewise.
15576         (library_list_start_list): Likewise.
15577         * solib-svr4.c (library_list_start_library): Likewise.
15578         (svr4_library_list_start_list): Likewise.
15579         * solib-target.c (library_list_start_segment): Likewise.
15580         (library_list_start_section): Likewise.
15581         (library_list_start_library): Likewise.
15582         (library_list_start_list): Likewise.
15583         * tracepoint.c (traceframe_info_start_memory): Likewise.
15584         (traceframe_info_start_tvar): Likewise.
15585         * xml-syscall.c (syscall_start_syscall): Likewise.
15586         * xml-tdesc.c (tdesc_start_target): Likewise.
15587         (tdesc_start_feature): Likewise.
15588         (tdesc_start_reg): Likewise.
15589         (tdesc_start_union): Likewise.
15590         (tdesc_start_struct): Likewise.
15591         (tdesc_start_flags): Likewise.
15592         (tdesc_start_enum): Likewise.
15593         (tdesc_start_field): Likewise.
15594         (tdesc_start_enum_value): Likewise.
15595         (tdesc_start_vector): Likewise.
15596
15597 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15598
15599         * extension.h (struct xmethod_worker) <clone>: Remove.
15600         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15601         Remove.
15602         (python_xmethod_worker::clone): Remove.
15603         * valops.c (find_overload_match): Use std::move instead of
15604         clone.
15605
15606 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15607
15608         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15609         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15610         <free_xmethod_worker_data>: Remove.
15611         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15612         <get_xmethod_arg_types>: Remove.
15613         <get_xmethod_result_type>: Remove.
15614         <invoke_xmethod>: Remove.
15615         * extension.c (new_xmethod_worker): Remove.
15616         (clone_xmethod_worker): Remove.
15617         (get_matching_xmethod_workers): Return void, pass std::vector by
15618         pointer.
15619         (get_xmethod_arg_types): Rename to...
15620         (xmethod_worker::get_arg_types): ... this, and adjust.
15621         (get_xmethod_result_type): Rename to...
15622         (xmethod_worker::get_result_type): ... this, and adjust.
15623         (invoke_xmethod): Remove.
15624         (free_xmethod_worker): Remove.
15625         (free_xmethod_worker_vec): Remove.
15626         * extension.h (enum ext_lang_rc): Move here from
15627         extension-priv.h.
15628         (struct xmethod_worker): Add constructor and destructor.
15629         <data>: Remove.
15630         <value>: Remove.
15631         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15632         virtual pure methods.
15633         <get_arg_types, get_result_type>: New methods.
15634         (xmethod_worker_ptr): Remove typedef.
15635         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15636         (xmethod_worker_vec): Remove typedef.
15637         (xmethod_worker_up): New typedef.
15638         (invoke_xmethod): Remove.
15639         (clone_xmethod_worker): Remove.
15640         (free_xmethod_worker): Remove.
15641         (free_xmethod_worker_vec): Remove.
15642         (get_xmethod_arg_types): Remove.
15643         (get_xmethod_result_type): Remove.
15644         * valops.c (find_method_list): Use std::vector, don't use
15645         intermediate vector.
15646         (value_find_oload_method_list): Use std::vector.
15647         (find_overload_match): Use std::vector.
15648         (find_oload_champ): Use std::vector.
15649         * value.c (value_free): Use operator delete.
15650         (value_of_xmethod): Rename to...
15651         (value_from_xmethod): ... this.  Don't assign
15652         xmethod_worker::value, take rvalue-reference.
15653         (result_type_of_xmethod): Adjust.
15654         (call_xmethod): Adjust.
15655         * value.h: Include extension.h.
15656         (struct xmethod_worker): Don't forward-declare.
15657         (value_of_xmethod): Rename to...
15658         (value_from_xmethod): ... this, take rvalue-reference.
15659         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15660         (struct python_xmethod_worker): ... this, add constructor and
15661         destructor.
15662         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15663         (gdbpy_free_xmethod_worker_data): Rename to...
15664         (python_xmethod_worker::~python_xmethod_worker): ... this and
15665         adjust.
15666         (gdbpy_clone_xmethod_worker_data): Rename to...
15667         (python_xmethod_worker::clone): ... this and adjust.
15668         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15669         temporary vector.
15670         (gdbpy_get_xmethod_arg_types): Rename to...
15671         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15672         (gdbpy_get_xmethod_result_type): Rename to...
15673         (python_xmethod_worker::do_get_result_type): ... this and
15674         adjust.
15675         (gdbpy_invoke_xmethod): Rename to...
15676         (python_xmethod_worker::invoke): ... this and adjust.
15677         (new_python_xmethod_worker): Rename to...
15678         (python_xmethod_worker::python_xmethod_worker): ... this and
15679         adjust.
15680         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15681         Remove.
15682         (gdbpy_free_xmethod_worker_data): Remove.
15683         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15684         (gdbpy_get_xmethod_arg_types): Remove.
15685         (gdbpy_get_xmethod_result_type): Remove.
15686         (gdbpy_invoke_xmethod): Remove.
15687         * python/python.c (python_extension_ops): Remove obsolete
15688         callbacks.
15689
15690 2018-01-05  Pedro Alves  <palves@redhat.com>
15691
15692         PR gdb/18653
15693         * common/signals-state-save-restore.c
15694         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15695         find a custom handler preinstalled, instead of internal erroring.
15696         But only warn if !quiet.
15697         * common/signals-state-save-restore.h
15698         (save_original_signals_state): New parameter 'quiet'.
15699         * main.c (captured_main_1): Move save_original_signals_state call
15700         after option handling, and pass QUIET.
15701
15702 2018-01-05  Pedro Alves  <palves@redhat.com>
15703
15704         * spu-tdep.c (spu_catch_start): Pass
15705         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15706
15707 2018-01-05  Pedro Alves  <palves@redhat.com>
15708
15709         PR gdb/22670
15710         * ada-lang.c (literal_symbol_name_matcher): New function.
15711         (ada_get_symbol_name_matcher): Use it for
15712         symbol_name_match_type::SEARCH_NAME.
15713         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15714         it down instead of assuming symbol_name_match_type::FULL.
15715         * block.h (block_lookup_symbol): New parameter 'match_type'.
15716         * c-valprint.c (print_unpacked_pointer): Use
15717         lookup_symbol_search_name instead of lookup_symbol.
15718         * compile/compile-object-load.c (get_out_value_type): Pass down
15719         symbol_name_match_type::SEARCH_NAME.
15720         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15721         symbol_name_match_type::FULL.
15722         * cp-support.c (cp_get_symbol_name_matcher): Handle
15723         symbol_name_match_type::SEARCH_NAME.
15724         * infrun.c (insert_exception_resume_breakpoint): Use
15725         lookup_symbol_search_name.
15726         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15727         * psymtab.c (maintenance_check_psymtabs): Use
15728         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15729         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15730         SYMBOL_SEARCH_NAME.
15731         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15732         if symbol_name_match_type::SEARCH_NAME.
15733         (lookup_symbol_in_language): Pass down
15734         symbol_name_match_type::FULL.
15735         (lookup_symbol_search_name): New.
15736         (lookup_language_this): Pass down
15737         symbol_name_match_type::SEARCH_NAME.
15738         (lookup_symbol_aux, lookup_local_symbol): New parameter
15739         'match_type'.  Pass it down.
15740         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15741         (lookup_symbol_search_name): New declaration.
15742         (lookup_symbol_in_block): New 'match_type' parameter.
15743
15744 2018-01-05  Pedro Alves  <palves@redhat.com>
15745
15746         PR gdb/22670
15747         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15748         ada_lookup_symbol.
15749         (ada_lookup_symbol): Reimplement in terms of
15750         ada_lookup_symbol_list, bits factored out from
15751         ada_lookup_encoded_symbol.
15752
15753 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15754
15755         * ada-exp.y (write_object_renaming): When subscripting an array
15756         using a symbol as the index, pass the block in call to
15757         ada_lookup_encoded_symbol when looking that symbol up.
15758
15759 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15760
15761         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15762         TYPE_INDEX_TYPE.
15763
15764 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15765
15766         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15767         the case where VALUE_LVAL (val0) is not lval_memory.
15768
15769 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15770
15771         * ada-valprint.c (print_optional_low_bound): Handle
15772         character-indexed array printing like boolean-indexed array
15773         printing.
15774
15775 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15776
15777         * NEWS: Create a new section for the next release branch.
15778         Rename the section of the current branch, now that it has
15779         been cut.
15780
15781 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15782
15783         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15784         * version.in: Bump version to 8.1.50.DATE-git.
15785
15786 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15787
15788         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15789         Add field.
15790         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15791         Add field.
15792         (default_exception_support_info) <catch_handlers_sym>: Add field.
15793         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15794         (ada_exception_name_addr_1): Add "catch handlers" handling.
15795         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15796         Update all callers.
15797         (create_excep_cond_exprs) <ex>: Add parameter.
15798         (re_set_exception): Update create_excep_cond_exprs call.
15799         (print_it_exception, print_one_exception, print_mention_exception)
15800         (print_recreate_exception): Add "catch handler" handling.
15801         (allocate_location_catch_handlers, re_set_catch_handlers)
15802         (check_status_catch_handlers, print_it_catch_handlers)
15803         (print_one_catch_handlers, print_mention_catch_handlers)
15804         (print_recreate_catch_handlers): New function.
15805         (catch_handlers_breakpoint_ops): New variable.
15806         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15807         Add parameter.  Add "catch handler" handling.
15808         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15809         Add "catch handler" handling.
15810         (ada_exception_catchpoint_cond_string): Add "catch handler"
15811         handling.
15812         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15813         call.
15814         (catch_ada_handlers_command): New function.
15815         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15816         operations structure.
15817         (_initialize_ada_language): Add "catch handlers" command entry.
15818         * NEWS: Document "catch handlers" feature.
15819
15820 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15821
15822         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15823         account when creating the array type of the slice.
15824         (ada_value_slice): Likewise.
15825
15826 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15827
15828         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15829         New enum value.
15830         (create_array_type_with_stride): Add byte_stride_prop parameter.
15831         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15832         New parameter.  Update all callers in this file.
15833         (array_type_has_dynamic_stride): New function.
15834         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15835         of arrays with dynamic byte strides.
15836         * dwarf2read.c (read_array_type): Add support for dynamic
15837         DW_AT_byte_stride attributes.
15838
15839 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15840
15841         * dwarf2read.c (read_unspecified_type): Treat
15842         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15843
15844 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15845
15846         Update copyright year range in all GDB files.
15847
15848 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15849
15850         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15851         and gdb/testsuite/gdb.base/step-line.c.
15852
15853 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15854
15855         * copyright.py (main): Dump the contents of
15856         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15857         even if BY_HAND is empty.
15858
15859 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15860
15861         * top.c (print_gdb_version): Update Copyright year in version
15862         message.
15863
15864 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15865
15866         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15867
15868 For older changes see ChangeLog-2017.
15869 \f
15870 Local Variables:
15871 mode: change-log
15872 left-margin: 8
15873 fill-column: 74
15874 version-control: never
15875 coding: utf-8
15876 End: