GDB: S12Z: new function s12z_extract_return_value
[external/binutils.git] / gdb / ChangeLog
1 2018-11209  John Darrington <john@darrington.wattle.id.au>
2
3         * s12z-tdep.c (s12z_extract_return_value): New function.
4         (inv_reg_perm) New array.
5         (s12z_return_value): Populate readbuf if non-null.
6
7 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
8
9         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
10         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
11         to MinGW fixed by Gnulib.
12         (O_NOINHERIT): Define if not defined.
13
14 2018-11-19  John Darrington <john@darrington.wattle.id.au>
15
16         *s12z-tdep.c (s12z_frame_cache): Add an assertion.
17
18 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
19
20         * infrun.c (displaced_step_inferior_state) <next>: Remove.
21
22 2018-11-19  Tom Tromey  <tom@tromey.com>
23
24         * source.c (get_filename_and_charpos): Return void.
25
26 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
27
28         * skip.c (_initialize_step_skip): Fix "info skip" help.
29
30 2018-11-16  Tom Tromey  <tom@tromey.com>
31
32         PR rust/23625:
33         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
34
35 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
36
37         * infrun.c (displaced_step_inferior_states): Change type to
38         std::forward_list.
39         (get_displaced_stepping_state): Adjust.
40         (displaced_step_in_progress_any_inferior): Adjust.
41         (add_displaced_stepping_state): Adjust.
42         (remove_displaced_stepping_state): Adjust.
43
44 2018-11-18  Tom Tromey  <tom@tromey.com>
45
46         PR build/23814:
47         * target-delegates.c: Rebuild.
48         * ia64-linux-nat.c (class ia64_linux_nat_target)
49         <have_steppable_watchpoint>: Use override.  Return true, not 1.
50         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
51         "self" argument.
52         (ia64_linux_nat_target::low_new_thread): Rename.
53         (class ia64_linux_nat_target) <read_description>: Don't declare.
54         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
55         bool.
56
57 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
58
59         PR gdb/22736:
60         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
61         lang_struct_return code.
62
63 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
64
65         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
66         return_method.
67         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
68         * amd64-tdep.c (amd64_push_arguments): Likewise.
69         (amd64_push_dummy_call): Likewise.
70         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
71         * arc-tdep.c (arc_push_dummy_call): Likewise.
72         * arm-tdep.c (arm_push_dummy_call): Likewise.
73         * avr-tdep.c (avr_push_dummy_call): Likewise.
74         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
75         * cris-tdep.c (cris_push_dummy_call): Likewise.
76         * csky-tdep.c (csky_push_dummy_call): Likewise.
77         * frv-tdep.c (frv_push_dummy_call): Likewise.
78         * gdbarch.c: Regenerate.
79         * gdbarch.h: Regenerate.
80         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
81         return_method.
82         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
83         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
84         (hppa64_push_dummy_call): Likewise.
85         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
86         * i386-tdep.c (i386_push_dummy_call): Likewise.
87         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
88         * infcall.c (call_function_by_hand_dummy): Likewise.
89         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
90         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
91         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
92         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
93         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
94         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
95         * mep-tdep.c (mep_push_dummy_call): Likewise.
96         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
97         (mips_n32n64_push_dummy_call): Likewise.
98         (mips_o32_push_dummy_call): Likewise.
99         (mips_o64_push_dummy_call): Likewise.
100         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
101         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
102         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
103         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
104         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
105         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
106         (ppc64_sysv_abi_push_dummy_call): Likewise.
107         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
108         (ppc64_sysv_abi_push_dummy_call): Likewise.
109         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
110         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
111         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
112         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
113         * rx-tdep.c (rx_push_dummy_call): Likewise.
114         * s390-tdep.c (s390_push_dummy_call): Likewise.
115         * score-tdep.c (score_push_dummy_call): Likewise.
116         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
117         (sh_push_dummy_call_nofpu): Likewise.
118         * sparc-tdep.c (sparc32_store_arguments): Likewise.
119         (sparc32_push_dummy_call): Likewise.
120         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
121         (sparc64_push_dummy_call): Likewise.
122         * spu-tdep.c (spu_push_dummy_call): Likewise.
123         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
124         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
125         * v850-tdep.c (v850_push_dummy_call): Likewise.
126         * vax-tdep.c (vax_push_dummy_call): Likewise.
127         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
128         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
129
130 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
131
132         * gdbarch.sh (enum function_call_return_method): Add enum.
133         * gdbarch.h: Regenerate.
134         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
135
136 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
137
138         * unittests/copy_bitwise-selftests.c: New file.
139         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
140         (selftests::copy_bitwise_tests): Delete, moving this code to
141         unittests/copy_bitwise-selftests.c instead.
142         (_initialize_utils): Do not register copy_bitwise tests.
143         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
144         unittests/copy_bitwise-selftests.c.
145
146 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
147
148         * ada-lang.c (move_bits): Delete. Update all callers to use
149         copy_bitwise instead.
150         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
151         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
152         Move from here to utils.c.
153         (_initialize_dwarf2loc): Remove call to register copy_bitwise
154         selftests.
155         * utils.h (copy_bitwise): Add declaration.
156         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
157         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
158         Moved here from dwarf2loc.c.
159         (_initialize_utils): Register copy_bitwise selftests.
160
161 2018-11-14  Jim Wilson  <jimw@sifive.com>
162
163         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
164         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
165         then increment next_regnum if odd.
166         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
167         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
168         function type.  Pass new arg to riscv_arg_location based on function
169         type.
170         (riscv_return_value): Pass new arg to riscv_arg_location.
171
172         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
173         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
174         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
175
176         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
177         setting len.  New local align, set to max of arg align and xlen,
178         and pass to first riscv_assign_stack_location call.
179
180 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
181
182         * skip.c (complete_skip_number): New function.
183         (_initialize_step_skip): Add completers to some skip commands.
184
185 2018-11-09  Tom Tromey  <tom@tromey.com>
186
187         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
188         (struct remote_g_packet_data): Derive from allocate_on_obstack.
189         <guesses>: Now a std::vector.
190         (remote_g_packet_data_init, register_remote_g_packet_guess):
191         Update.
192         (remote_read_description_p): Update.  Return bool.
193         (remote_target::read_description): Update.
194         (struct remote_g_packet_guess): Add constructor.
195
196 2018-11-09  Tom Tromey  <tom@tromey.com>
197
198         * common/scoped_fd.h (class scoped_fd): Add move constructor and
199         move assignment operator.
200         * psymtab.c (psymtab_to_fullname): Update.
201         * source.h (open_source_file): Return scoped_fd.
202         (find_and_open_source): Likewise.
203         * source.c (open_source_file): Return scoped_fd.
204         (get_filename_and_charpos): Update.
205         (print_source_lines_base): Update.  Use scoped_fd::to_file.
206         (forward_search_command): Likewise.
207         (reverse_search_command): Likewise.
208         (find_and_open_source): Return scoped_fd.
209         * tui/tui-source.c (tui_set_source_content): Update.  Use
210         gdb_file_up.
211
212 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
213
214         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
215         overflow.
216
217 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
218
219         * configure: Regenerate.
220
221 2018-11-09  Tom de Vries  <tdevries@suse.de>
222
223         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
224         unconditionally, to set the language of the symbol.  Manage freeing
225         returned pointer using gdb::unique_xmalloc_ptr.
226
227 2018-11-08  Tom Tromey  <tom@tromey.com>
228
229         * record.c (require_record_target): Upper-case "<TAB>".
230
231 2018-11-08  Tom Tromey  <tom@tromey.com>
232
233         * python/lib/gdb/command/pretty_printers.py
234         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
235
236 2018-11-08  Tom Tromey  <tom@tromey.com>
237
238         PR gdb/23555:
239         PR gdb/23838:
240         * target.h (target_supports_terminal_ours): Return bool.
241         * target.c (target_supports_terminal_ours): Handle case where
242         current_top_target returns nullptr.  Return bool.
243
244 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
245
246         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
247         return the correct count for potential HFAs.
248
249 2018-11-08  Jan Beulich  <jbeulich@suse.com>
250
251         * i387-tdep.c (i387_supply_xsave): Split handling of
252         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
253         (i387_collect_xsave): Likewise.
254
255 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
256
257         * riscv-tdep.c (riscv_insn::decode): Update header comment.
258         (riscv_frame_this_id): Catch errors thrown while building the
259         frame cache, leave the frame id as the default, which is the outer
260         frame id.
261
262 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
263
264         * ada-lang.c (read_atcb): Only set task_info->called_task if
265         task_info->state == Entry_Caller_Sleep.
266         (print_ada_task_info): Do not check task_info->state before
267         checking task_info->called_task.
268         (info_task): Likewise.
269
270 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
271
272         * ada-tasks.c (read_atcb): Clear task_info before computing
273         the value of each of its fields.
274
275 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
276
277         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
278         NULL before dereferencing it.
279
280 2018-11-06  Tom de Vries  <tdevries@suse.de>
281
282         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
283         program headers.
284
285 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
286
287         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
288         so that it applies to uclinux as well.
289
290 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
291
292         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
293         when on AAPCS.
294
295 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
296
297         * riscv-fbsd-nat.c (getregs_supplies): Return true for
298         RISCV_CSR_SSTATUS_REGNUM.
299
300 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
301
302         * source.c (open_source_file): Fix leak by transferring the
303         current s->fullname to the unique_xmalloc_ptr fullname given
304         to find_and_open_source.
305
306 2018-11-04  Tom Tromey  <tom@tromey.com>
307
308         * varobj.c (install_default_visualizer): Update.
309         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
310         Return gdbpy_ref.
311         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
312         (find_pretty_printer_from_progspace)
313         (find_pretty_printer_from_gdb, find_pretty_printer)
314         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
315         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
316         Update.
317
318 2018-11-04  Tom Tromey  <tom@tromey.com>
319
320         * python/python.c (gdbpy_parameter_value): Update.
321         * python/python-internal.h (python_string_to_unicode)
322         (python_string_to_target_python_string)
323         (host_string_to_python_string): Return gdbpy_ref.
324         * python/py-utils.c (python_string_to_unicode)
325         (unicode_to_encoded_python_string)
326         (unicode_to_target_python_string)
327         (python_string_to_target_string)
328         (python_string_to_target_python_string): Return gdbpy_ref.
329         (python_string_to_host_string): Update.
330         (host_string_to_python_string): Return gdbpy_ref.
331         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
332         (stpy_fullname): Update.
333         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
334         Update.
335         * python/py-prettyprint.c (print_string_repr): Update.
336         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
337         (objfpy_get_build_id): Update.
338         * python/py-breakpoint.c (bppy_get_location)
339         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
340         Update.
341
342 2018-11-04  Tom Tromey  <tom@tromey.com>
343
344         * python/python-internal.h (gdb_py_object_from_longest)
345         (gdb_py_object_from_ulongest): Return gdbpy_ref.
346         * python/py-value.c (valpy_int): Update.
347         * python/py-utils.c (gdb_py_object_from_longest): Return
348         gdbpy_ref.
349         (gdb_py_object_from_ulongest): Likewise.
350         * python/py-type.c (typy_get_alignof): Update.
351         * python/py-linetable.c (ltpy_get_all_source_lines)
352         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
353         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
354
355 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
356
357         * ada-lang.c (_initialize_ada_language): Fix typo.
358
359 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
360
361         * language.c (type): Remove.
362         (_initialize_language): Remove assignment to type.
363
364 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
365
366         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
367         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
368         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
369         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
370         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
371         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
372         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
373         and aarch64-ravenscar-thread.o.
374         * NEWS: Add entry documenting Ravenscar tasking support
375         on AArch64 ELF.
376
377 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
378
379         * symtab.c (info_functions_command): Initialize quiet flag.
380         * stack.c (info_args_command): Likewise.
381
382 2018-11-01  Jim Wilson  <jimw@sifive.com>
383
384         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
385         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
386         debugging messages.
387
388 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
389
390         * ada-lang.c (ada_watch_location_expression): New function.
391         (ada_language_defn): Set la_watch_location_expression to
392         ada_watch_location_expression.
393
394 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
395
396         * print-utils.c (int_string): Remove unnecessary trailing spaces.
397
398 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
399
400         * rs6000-tdep.c (skip_prologue): Fix potential negative left
401         shifting.
402
403 2018-11-01  Jerome Guitton  <guitton@adacore.com>
404             Joel Brobecker  <brobecker@adacore.com>
405
406         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
407         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
408         * arm-pikeos-tdep.c: New file.
409         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
410         embedded system.
411         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
412
413 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
414
415         * common/pathstuff.c (get_standard_temp_dir): New.
416         * common/pathstuff.h (get_standard_temp_dir): New.
417         * config.in: Re-generate.
418         * configure: Re-generate.
419         * configure.ac: Don't check for mkdtemp.
420         * gnulib/aclocal-m4-deps.mk: Re-generate.
421         * gnulib/aclocal.m4: Re-generate.
422         * gnulib/config.in: Re-generate.
423         * gnulib/configure: Re-generate.
424         * gnulib/import/Makefile.am: Re-generate.
425         * gnulib/import/Makefile.in: Re-generate.
426         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
427         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
428         * gnulib/import/m4/mkdtemp.m4: New file.
429         * gnulib/import/mkdtemp.c: New file.
430         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
431         Add mkdtemp module.
432         * unittests/mkdir-recursive-selftests.c (test): Use
433         get_standard_temp_dir.
434         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
435         ifdef.
436         * compile/compile.c (get_compile_file_tempdir): Likewise.
437
438 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
439
440         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
441         (SIG_FRAME_LR_OFFSET64): New define.
442         (SIG_FRAME_FP_OFFSET64): New define.
443         (aix_sighandle_frame_cache): New Function.
444         (aix_sighandle_frame_this_id): New Function.
445         (aix_sighandle_frame_prev_register): New Function.
446         (aix_sighandle_frame_sniffer): New Function.
447         (aix_sighandle_frame_unwind): New global variable.
448         (rs6000_aix_init_osabi): Install new frame unwinder.
449
450 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
451
452         PR gdb/23835
453         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
454         already defined.
455
456 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
457
458         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
459
460 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
461
462         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
463         (producer_is_icc): New function.
464         (check_producer): Set producer_is_icc field on dwarf2_cu.
465         (dwarf2_init_integer_type): New function.
466         (read_base_type): Call dwarf2_init_integer_type instead of
467         init_integer_type in all cases.
468         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
469         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
470         LEN is greater than 0.
471
472 2018-10-30  Tom Tromey  <tom@tromey.com>
473
474         * main.c (captured_main_1): Check return value of bfd_init.
475
476 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
477
478         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
479         Adjust comments.
480
481 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
482
483         * procfs.c: Include common/pathstuff.h.
484
485 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
486
487         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
488         Add missing braces.  No functional change.
489
490 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
491
492         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
493         to report a bad option and fix indentation.
494         * demangle.c (demangle_command): Use report_unrecognized_option_error
495         to report a bad option and correctly report the bad option.
496
497 2018-10-27  Tom Tromey  <tom@tromey.com>
498
499         PR cli/23364:
500         * darwin-nat.c (copied_shell): New global.
501         (may_have_sip): Rename from should_disable_startup_with_shell.
502         (copy_shell_to_cache, maybe_cache_shell): New functions.
503         (darwin_nat_target::create_inferior): Update.  Use
504         copied_shell.
505
506 2018-10-27  Tom Tromey  <tom@tromey.com>
507
508         * unittests/scoped_fd-selftests.c (test_to_file): New function.
509         (run_tests): Call test_to_file.
510         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
511         temporary files.
512         * common/scoped_fd.h (scoped_fd::to_file): New method.
513
514 2018-10-27  Tom Tromey  <tom@tromey.com>
515
516         * unittests/scoped_mmap-selftests.c (test_normal): Use
517         gdb_mkostemp_cloexec.
518         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
519         Use gdb_mkostemp_cloexec.
520         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
521         gnulib/config.in, gnulib/configure,
522         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
523         gnulib/import/m4/gnulib-cache.m4,
524         gnulib/import/m4/gnulib-comp.m4: Update.
525         * gnulib/import/m4/mkostemp.m4: New file.
526         * gnulib/import/m4/mkstemp.m4: Remove.
527         * gnulib/import/mkostemp.c: New file.
528         * gnulib/import/mkstemp.m4: Remove.
529         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
530         mkstemp, add mkostemp.  Apply new patch.
531         * gnulib/import/stdlib.in.h: Apply patch.
532         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
533         New file.
534         * dwarf-index-write.c (write_psymtabs_to_index): Use
535         gdb_mkostemp_cloexec.
536         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
537
538 2018-10-27  Tom Tromey  <tom@tromey.com>
539
540         * unittests/mkdir-recursive-selftests.c: New file.
541         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
542         unittests/mkdir-recursive-selftests.c.
543         * dwarf-index-cache.c (mkdir_recursive): Move to
544         common/filestuff.c.
545         (index_cache::store): Check return value of mkdir_recursive.
546         (create_dir_and_check, test_mkdir_recursive): Move to new file.
547         (_initialize_index_cache): Don't register test.
548         * common/filestuff.h (mkdir_recursive): Declare.
549         * common/filestuff.c (mkdir_recursive): Move from
550         dwarf-index-cache.c.  Return bool.
551
552 2018-10-27  Tom Tromey  <tom@tromey.com>
553
554         * dwarf-index-write.c (write_psymtabs_to_index): Move
555         make_temp_filename to common/pathstuff.c.
556         * common/pathstuff.h (make_temp_filename): Declare.
557         * common/pathstuff.c (make_temp_filename): New function, moved
558         from dwarf-index-write.c.
559
560 2018-10-27  Tom Tromey  <tom@tromey.com>
561
562         * procfs.c (procfs_target::create_inferior): Use get_shell.
563         * cli/cli-cmds.c (shell_escape): Use get_shell.
564         * windows-nat.c (windows_nat_target::create_inferior): Use
565         get_shell.
566         * common/pathstuff.c (get_shell): New function.
567         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
568         (fork_inferior): Use get_shell.
569         * common/pathstuff.h (get_shell): Declare.
570
571 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
572
573         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
574
575 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
576
577         * stack.c (print_variable_and_value_data): Add preg and treg.
578         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
579         and update callers.
580         (print_frame_arg_vars): Likewise.
581         (prepare_reg): New function.
582         (info_locals_command): Extract info print args and use them.
583         (info_args_command): Likewise.
584         (_initialize_stack): Modify on-line help.
585         * symtab.c (treg_matches_sym_type_name): New function.
586         (search_symbols): New arg t_regexp.
587         (symtab_symbol_info): New args quiet, regexp, t_regexp.
588         (info_variables_command): Extract info print args and use them.
589         (info_functions_command): Likewise.
590         (info_types_command): Update call to symtab_symbol_info.
591         (_initialize_symtab): Modify on-line help.
592         * symtab.h (treg_matches_sym_type_name): New function.
593         (search_symbols): New t_regexp arg.
594
595 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
596
597         * cli-utils.c (extract_arg_maybe_quoted): New function.
598         (extract_info_print_args): New function.
599         (info_print_args_help): New function.
600         (report_unrecognized_option_error): New function.
601         * cli-utils.h (extract_arg_maybe_quoted): New function.
602         (extract_info_print_args): New function.
603         (info_print_args_help): New function.
604         (report_unrecognized_option_error): New function.
605
606 2018-10-26  Tom Tromey  <tom@tromey.com>
607
608         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
609         (compute_compunit_symtab_includes): Update.
610         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
611         (compunit_symtab_ptr): Likewise.
612
613 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
614
615         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
616         default_print_auxv_entry for specific tag values.
617
618 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
619
620         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
621
622 2018-10-26  Jim Wilson  <jimw@sifive.com>
623
624         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
625         (riscv_linux_sigframe_init): Declare.
626         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
627         (riscv_linux_sigframe): New.
628         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
629         (riscv_linux_sigframe_init): Define.
630         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
631
632         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
633         (riscv_isa_flen): Likewise.  Drop static.
634         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
635         (riscv_isa_flen): Likewise.  Declare.
636
637 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
638             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
639
640         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
641         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
642         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
643         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
644         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
645         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
646         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
647         Define.
648         (struct ppc_linux_features) <htm>: New field.
649         (ppc_linux_no_features): Add initializer for htm field.
650         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
651         new tdescs.
652         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
653         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
654         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
655         Define if not already defined.
656         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
657         and rs6000/powerpc-isa207-htm-vsx64l.
658         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
659         rs6000/powerpc-isa207-htm-vsx64l.xml.
660         * features/rs6000/power-htm-spr.xml: New file.
661         * features/rs6000/power-htm-core.xml: New file.
662         * features/rs6000/power64-htm-core.xml: New file.
663         * features/rs6000/power-htm-fpu.xml: New file.
664         * features/rs6000/power-htm-altivec.xml: New file.
665         * features/rs6000/power-htm-vsx.xml: New file.
666         * features/rs6000/power-htm-ppr.xml: New file.
667         * features/rs6000/power-htm-dscr.xml: New file.
668         * features/rs6000/power-htm-tar.xml: New file.
669         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
670         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
671         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
672         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
673         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
674         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
675         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
676         fetch_regset with HTM regsets.
677         (store_register, store_ppc_registers): Call store_regset with HTM
678         regsets.
679         (ppc_linux_nat_target::read_description): Set htm field in the
680         features struct if needed.
681         * ppc-linux-tdep.c: Include
682         features/rs6000/powerpc-isa207-htm-vsx32l.c and
683         features/rs6000/powerpc-isa207-htm-vsx64l.c.
684         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
685         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
686         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
687         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
688         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
689         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
690         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
691         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
692         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
693         (ppc32_linux_ctarregset): New globals.
694         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
695         (ppc_linux_collect_core_cpgrregset): New function.
696         (ppc_linux_iterate_over_regset_sections): Call back with the htm
697         regsets.
698         (ppc_linux_core_read_description): Check if the tm spr section is
699         present and set htm in the features struct.
700         (_initialize_ppc_linux_tdep): Call
701         initialize_tdesc_powerpc_isa207_htm_vsx32l and
702         initialize_tdesc_powerpc_isa207_htm_vsx64l.
703         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
704         Declare.
705         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
706         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
707         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
708         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
709         New fields.
710         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
711         Likewise.
712         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
713         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
714         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
715         New enum fields.
716         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
717         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
718         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
719         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
720         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
721         <PPC_CTAR_REGNUM>: Likewise.
722         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
723         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
724         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
725         (IS_CEFP_PSEUDOREG): Define.
726         (rs6000_register_name): Hide the upper halves of checkpointed VSX
727         registers.  Return names for the checkpointed DFP, VSX, and EFP
728         pseudo registers.
729         (rs6000_pseudo_register_type): Remove initial assert and raise an
730         internal error in the else clause instead.  Return types for the
731         checkpointed DFP, VSX, and EFP pseudo registers.
732         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
733         checkpointed DFP pseudo registers.
734         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
735         checkpointed VSX pseudo registers.
736         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
737         from efpr_pseudo_register_read and
738         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
739         registers.
740         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
741         Handle checkpointed DFP, VSX, and EFP registers.
742         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
743         (efp_ax_pseudo_register_collect): New functions.
744         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
745         register logic to new functions.  Handle checkpointed DFP, VSX,
746         and EFP pseudo registers.
747         (rs6000_gdbarch_init): Look for and validate the htm features.
748         Include checkpointed DFP, VSX and EFP pseudo-registers.
749         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
750         HTM registers.
751
752 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
753
754         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
755         without altivec or fpu.
756
757 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
758             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
759
760         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
761         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
762         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
763         Define if not already defined.
764         * features/rs6000/power-ebb.xml: New file.
765         * features/rs6000/power-linux-pmu.xml: New file.
766         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
767         features.
768         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
769         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
770         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
771         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
772         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
773         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
774         fetch_regset with ebb and pmu regsets.
775         (store_register, store_ppc_registers): Call store_regset with ebb
776         and pmu regsets.
777         (ppc_linux_nat_target::read_description): Set isa207 field in the
778         features struct if ebb and pmu are avaiable.
779         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
780         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
781         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
782         and pmu regsets.
783         (ppc_linux_core_read_description): Check if the pmu section is
784         present and set isa207 in the features struct.
785         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
786         (ppc32_linux_pmuregset): Declare.
787         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
788         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
789         <ppc_sier_regnum>: New field.
790         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
791         New enum values.
792         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
793         values.
794         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
795         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
796         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
797         ebb and pmu features.
798
799 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
800             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
801
802         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
803         (tdesc_powerpc_isa207_vsx64l): Declare.
804         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
805         (struct ppc_linux_features) <isa207>: New field.
806         (ppc_linux_no_features): Add initializer for isa207 field.
807         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
808         new tdescs.
809         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
810         (NT_PPC_TAR): Define if not already defined.
811         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
812         rs6000/powerpc-isa207-vsx64l.
813         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
814         rs6000/powerpc-isa207-vsx64l.xml.
815         * features/rs6000/power-tar.xml: New file.
816         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
817         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
818         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
819         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
820         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
821         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
822         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
823         fetch_regset with the TAR regset.
824         (store_register, store_ppc_registers): Call store_regset with the
825         TAR regset.
826         (ppc_linux_nat_target::read_description): Set isa207 field in the
827         features struct if needed.
828         * ppc-linux-tdep.c: Include
829         features/rs6000/powerpc-isa207-vsx32l.c and
830         features/rs6000/powerpc-isa207-vsx64l.c.
831         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
832         (ppc_linux_iterate_over_regset_sections): Call back with the tar
833         regset.
834         (ppc_linux_core_read_description): Check if the tar section is
835         present and set isa207 in the features struct.
836         (_initialize_ppc_linux_tdep): Call
837         initialize_tdesc_powerpc_isa207_vsx32l and
838         initialize_tdesc_powerpc_isa207_vsx64l.
839         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
840         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
841         (enum) <PPC_TAR_REGNUM>: New enum value.
842         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
843         feature.
844         (ppc_process_record_op31): Record changes to TAR.
845
846 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
847             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
848
849         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
850         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
851         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
852         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
853         (struct ppc_linux_features) <ppr_dscr>: New field.
854         (ppc_linux_no_features): Add initializer for ppr_dscr field.
855         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
856         new tdescs.
857         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
858         Define if not already defined.
859         * features/Makefile (WHICH): Add
860         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
861         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
862         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
863         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
864         * features/rs6000/power-dscr.xml: New file.
865         * features/rs6000/power-ppr.xml: New file.
866         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
867         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
868         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
869         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
870         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
871         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
872         * ppc-linux-nat.c: Include <sys/uio.h>.
873         (fetch_regset, store_regset, check_regset): New functions.
874         (fetch_register, fetch_ppc_registers): Call fetch_regset with
875         DSCR and PPR regsets.
876         (store_register, store_ppc_registers): Call store_regset with
877         DSCR and PPR regsets.
878         (ppc_linux_get_hwcap2): New function.
879         (ppc_linux_nat_target::read_description): Call
880         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
881         features struct if needed.
882         * ppc-linux-tdep.c: Include
883         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
884         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
885         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
886         (ppc32_linux_dscrregset): New globals.
887         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
888         and dscr regsets.
889         (ppc_linux_core_read_description): Check if the ppr and dscr
890         sections are present and set ppr_dscr in the features struct.
891         (_initialize_ppc_linux_tdep): Call
892         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
893         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
894         * ppc-linux-tdep.h (ppc32_linux_pprregset)
895         (ppc32_linux_dscrregset): Declare.
896         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
897         <ppc_dscr_regnum>: New field.
898         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
899         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
900         and dscr features.
901         (ppc_process_record_op31): Record changes to PPR and DSCR.
902
903 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
904
905         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
906         second initializer line for the have_* variables.  Initialize
907         have_fpu to 0 instead of 1.
908
909 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
910
911         * arch/ppc-linux-common.c (ppc_linux_match_description):
912         Parenthesize tdesc assignements and indent them properly.
913
914 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
915
916         * ppc-linux-nat.c (fetch_register): Change if statement to else
917         if.
918         (store_register): Likewise.
919
920 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
921
922         * rs6000-tdep.c: Remove reggroups.h include.
923         (rs6000_pseudo_register_reggroup_p): Remove.
924         (rs6000_gdbarch_init): Remove call to
925         set_tdesc_pseudo_register_reggroup_p.
926
927 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
928
929         * reggroups.c (default_register_reggroup_p): Return true for
930         decfloat registers and float_reggroup.
931
932 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
933
934         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
935         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
936         ppc_linux_collect_vrregset by regcache_collect_regset.
937
938 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
939
940         * linux-tdep.c (linux_collect_regset_section_cb): Use
941         std::vector<gdb_byte> instead of char * and malloc for buf.
942         Remove xfree.
943
944 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
945
946         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
947         symtab_start instead of always using language_unknown.
948
949 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
950
951         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
952         READ_P parameter, catch and ignore register access errors from
953         either the old or new MISA location.
954         (riscv_has_feature): Update call to riscv_read_misa_reg.
955
956 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
957
958         * python/py-function.c (convert_values_to_python): Return
959         gdbpy_ref<>.  Add header comment.
960         (fnpy_call): Adjust.
961
962 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
963
964         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
965         (cmdpy_completer_handle_brkchars): Adjust.
966         (cmdpy_completer): Adjust.
967
968 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
969
970         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
971         Pass correct regnum to raw_supply_zeroed.
972
973 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
974
975         * regcache.c (cooked_read_test): Add CSKY to the list of
976         architectures with a save_reggroup
977
978 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
979
980         PR gdb/23368
981         * infrun.c (follow_exec): In the follow_exec_mode_new case,
982         transfer terminal state from old new new inferior.
983         * terminal.h (swap_terminal_info): New function.
984         * inflow.c (swap_terminal_info): New function.
985
986 2018-10-23  Tom Tromey  <tom@tromey.com>
987
988         * record-btrace.c (get_thread_current_frame_id): Rename from
989         get_thread_current_frame.  Return a frame_id.
990         (record_btrace_start_replaying): Update.
991
992 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
993
994         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
995         for CSRs.
996
997 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
998
999         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1000         have_nonsteppable_watchpoint attribute to 1.
1001
1002 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1003
1004         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1005         register names.
1006         (struct register_alias): Rename to...
1007         (struct riscv_register_alias): ...this, and update comment.
1008         (riscv_register_aliases): Update type, and alias names.  Remove
1009         CSR names from this list.
1010         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1011         register names.  Add an extra assertion.
1012         (riscv_is_regnum_a_named_csr): New function.
1013         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1014
1015 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1016
1017         * configure.tgt: Add configuration for s12z.
1018         * s12z-tdep.c:  New file.
1019         * NEWS: Mention new target.
1020
1021 2018-10-22  Jim Wilson  <jimw@sifive.com>
1022
1023         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1024         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1025
1026         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1027         (riscv_register_type): Use them.
1028         (riscv_print_one_register_info): Handle union of floats same as float.
1029         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1030         riscv_fpreg_q_type fields.
1031
1032 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1033
1034         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1035         * gdbarch.h: Re-generate.
1036         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1037         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1038         * eval.c (evaluate_subexp_standard): Likewise.
1039         * findvar.c (value_of_register): Likewise.
1040         (value_of_register_lazy): Likewise.
1041         (address_from_register): Likewise.
1042         * frame.c (get_frame_register_bytes): Likewise.
1043         * gdbarch-selftests.c (register_to_value_test): Likewise.
1044         * h8300-tdep.c (h8300_register_type): Likewise.
1045         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1046         (i386_svr4_reg_to_regnum): Likewise.
1047         * infcmd.c (default_print_registers_info): Likewise.
1048         (registers_info): Likewise.
1049         (print_vector_info): Likewise.
1050         (default_print_float_info): Likewise.
1051         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1052         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1053         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1054         (mi_cmd_data_list_changed_registers): Likewise.
1055         (mi_cmd_data_list_register_values): Likewise.
1056         (mi_cmd_data_write_register_values): Likewise.
1057         (mi_cmd_trace_frame_collected): Likewise.
1058         * mips-tdep.c (print_gp_register_row): Likewise.
1059         (mips_print_registers_info): Likewise.
1060         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1061         * regcache.c (init_regcache_descr): Likewise.
1062         (register_size): Likewise.
1063         (register_dump::dump): Likewise.
1064         (cooked_read_test): Likewise.
1065         (cooked_write_test): Likewise.
1066         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1067         (rs6000_gdbarch_init): Likewise.
1068         * stabsread.c (stab_reg_to_regnum): Likewise.
1069         * stack.c (info_frame_command): Likewise.
1070         * target-descriptions.c (tdesc_register_name): Likewise.
1071         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1072         * tui/tui-regs.c (tui_show_register_group): Likewise.
1073         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1074         (user_reg_map_regnum_to_name): Likewise.
1075         (value_of_user_reg): Likewise.
1076         (maintenance_print_user_registers): Likewise.
1077         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1078         (xtensa_register_name): Likewise.
1079         (xtensa_register_type): Likewise.
1080         (xtensa_reg_to_regnum): Likewise.
1081         (xtensa_pseudo_register_read): Likewise.
1082         (xtensa_pseudo_register_write): Likewise.
1083
1084 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1085
1086         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1087         correctly-sized buffer with raw_read.
1088         (amd64_pseudo_register_write): Use correctly-sized buffer for
1089         raw_read/raw_write.
1090
1091 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1092
1093         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1094         in add_prefix_cmd of set print type.
1095
1096 2018-10-19  Tom Tromey  <tom@tromey.com>
1097
1098         PR tui/18388:
1099         * NEWS: Mention tabset deprecation.
1100         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1101         (update_tab_width): New function.
1102         (tui_set_tab_width, tui_show_tab_width): New functions.
1103         (tui_set_tab_width_command): Use update_tab_width.
1104         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1105         Add new "set tui tab-width" command.
1106         * tui/tui-source.c (tui_set_source_content): Update.
1107         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1108         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1109         Don't declare.
1110         (tui_tab_width): Declare.
1111         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1112         (tui_set_default_tab_len): Remove.
1113
1114 2018-10-19  Tom Tromey  <tom@tromey.com>
1115
1116         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1117         (key_is_backspace, tui_getc): Don't declare.
1118         * tui/tui-io.c (key_is_start_sequence): Now static.
1119         (key_is_end_sequence, key_is_backspace): Remove.
1120         (tui_getc): Now static.
1121
1122 2018-10-19  Tom Tromey  <tom@tromey.com>
1123
1124         * symfile.c (reread_symbols): Clear "static_links".
1125
1126 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1127
1128         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1129         define.
1130         (aarch64_linux_sigframe_init): Extra boundary checks.
1131
1132 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1133
1134         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1135         the possibly non-existent tdesc type 'vec128', but the type of raw
1136         register v16 instead.
1137
1138 2018-10-19  Gary Benson <gbenson@redhat.com>
1139
1140         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1141
1142 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1143
1144         PR cli/23785
1145         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1146         NULL.
1147
1148 2018-10-17  Paul Koning  <paul_koning@dell.com>
1149
1150         * charset.c (convert_between_encodings): Fix unsigned overflow.
1151
1152 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1153
1154         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1155         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1156         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1157         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1158         New functions.
1159         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1160         and fbsd_info_proc_mappings_header.
1161         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1162         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1163         New.
1164
1165 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1166
1167         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1168         Solaris Maintainer.
1169
1170 2018-10-15  Tom Tromey  <tom@tromey.com>
1171
1172         * tui/tui.c (strcat_to_buf): Remove casts.
1173         * tui/tui-winsource.c (tui_show_source_line)
1174         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1175         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1176         * tui/tui-windata.c (tui_first_data_item_displayed)
1177         (tui_delete_data_content_windows, tui_erase_data_content)
1178         (tui_display_all_data, tui_display_data_from)
1179         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1180         * tui/tui-win.c (tui_set_win_height)
1181         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1182         casts.
1183         * tui/tui-win.c (tui_resize_all): Remove casts.
1184         (tui_scroll_backward_command, tui_set_focus)
1185         (tui_set_tab_width_command): Likewise.
1186         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1187         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1188         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1189         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1190         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1191         Remove casts.
1192
1193 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1194
1195         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1196         AArch64/ARM maintainer.
1197
1198 2018-10-11  Gary Benson <gbenson@redhat.com>
1199
1200         * interps.h (interp::m_name): Make private and mutable.
1201         * interps.c (interp::~interp): Free m_name.
1202
1203 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1204             Simon Marchi <simark@simark.ca>
1205
1206         * README (`configure' options): Add documentation for new
1207         "--enable-unit-tests" option.
1208         * acinclude.m4: Include "selftest.m4".
1209         * configure: Regenerate.
1210         * configure.ac: Use "GDB_AC_SELFTEST".
1211         * maint.c (maintenance_selftest): Update message informing
1212         that selftests have been disabled.
1213         (maintenance_info_selftests): Likewise.
1214         * selftest.m4: New file.
1215
1216 2018-10-10  Gary Benson <gbenson@redhat.com>
1217
1218         * remote.c (remote_target::remote_send_printf): Add
1219         missing va_end found by Coverity.
1220
1221 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1222
1223         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1224
1225 2018-10-09  Tom Tromey  <tom@tromey.com>
1226
1227         * configure: Rebuild.
1228         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1229         * NEWS: Update --enable-ubsan documentation.
1230
1231 2018-10-09  Gary Benson <gbenson@redhat.com>
1232
1233         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1234         found by Coverity.
1235
1236 2018-10-08  Tom Tromey  <tom@tromey.com>
1237
1238         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1239         variable.
1240         (riscv_fbsd_init_abi): Likewise.
1241
1242 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1243         * valops.c (value_struct_elt_for_reference): Rename local variable
1244         to work around the shadowing a previous local warning.
1245
1246 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1247
1248         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1249         * NEWS: Mention new FreeBSD/riscv native configuration.
1250         * configure.host: Add riscv*-*-freebsd*.
1251         * configure.nat: Likewise.
1252         * riscv-fbsd-nat.c: New file.
1253
1254 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1255
1256         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1257         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1258         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1259         * NEWS: Mention new FreeBSD/riscv target.
1260         * configure.tgt: Add riscv*-*-freebsd*.
1261         * riscv-fbsd-tdep.c: New file.
1262         * riscv-fbsd-tdep.h: New file.
1263
1264 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1265
1266         * regcache.h (struct regcache_map_entry): Note that this type can
1267         be used with traditional frame caches.
1268         * trad-frame.c (trad_frame_set_reg_regmap): New.
1269         * trad-frame.h (trad_frame_set_reg_regmap): New.
1270
1271 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1272
1273         PR c++/16841
1274         * valops.c (get_virtual_base_offset): New function.
1275         (value_struct_elt_for_reference): Use it to get virtual base offset
1276         and add it in calculating class member address.
1277
1278 2018-10-08   John Darrington <john@darrington.wattle.id.au>
1279
1280     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1281       (check_producer): Check if the producer is codewarrior.
1282       (producer_is_codewarrior): New function.
1283       (lnp_state_machine::record_line): Ignore is_stmt flag for records
1284        produced by codewarrior.
1285       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1286
1287 2018-10-06  Tom Tromey  <tom@tromey.com>
1288
1289         PR python/19399:
1290         * python/py-inferior.c: Add "architecture" entry.
1291         (infpy_architecture): New function.
1292
1293 2018-10-06  Tom Tromey  <tom@tromey.com>
1294
1295         PR python/21765:
1296         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1297         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1298         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1299         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1300
1301 2018-10-06  Tom Tromey  <tom@tromey.com>
1302
1303         PR build/17077:
1304         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1305         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1306         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1307         #include.
1308
1309 2018-10-06  Tom Tromey  <tom@tromey.com>
1310
1311         * python/py-breakpoint.c (bppy_get_location): Handle a
1312         bp_breakpoint without a location.
1313
1314 2018-10-06  Tom Tromey  <tom@tromey.com>
1315
1316         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1317         (_RegEx): Reformat help text.
1318         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1319         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1320         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1321         text.
1322         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1323         (EnableXMethod, DisableXMethod): Remove help indentation.
1324         Capitalize meta-syntactic variables.
1325         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1326         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1327         Capitalize meta-syntactic variables.
1328         * python/lib/gdb/command/explore.py (ExploreCommand)
1329         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1330         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1331         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1332         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1333         Remove help indentation.
1334         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1335         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1336         (DisableFrameFilter, SetFrameFilterPriority)
1337         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1338
1339 2018-10-06  Tom Tromey  <tom@tromey.com>
1340
1341         PR tui/28819:
1342         * tui/tui-io.c (gdb_wgetch): New function.
1343         (tui_mld_getc, tui_getc): Use it.
1344
1345 2018-10-05  Tom Tromey  <tom@tromey.com>
1346
1347         * sol-thread.c (sol_thread_target::wait): Rename inner
1348         "save_ptid".
1349
1350 2018-10-04  Tom Tromey  <tom@tromey.com>
1351
1352         * configure: Rebuild.
1353         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1354
1355 2018-10-04  Tom Tromey  <tom@tromey.com>
1356
1357         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1358         declaration of "block".
1359
1360 2018-10-04  Tom Tromey  <tom@tromey.com>
1361
1362         * common/filestuff.c (fdwalk): Remove inner declaration of
1363         "result".
1364
1365 2018-10-04  Tom Tromey  <tom@tromey.com>
1366
1367         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1368         "structs_addr" and hoist declaration.
1369
1370 2018-10-04  Tom Tromey  <tom@tromey.com>
1371
1372         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1373         variable "size".
1374
1375 2018-10-04  Tom Tromey  <tom@tromey.com>
1376
1377         * mdebugread.c (parse_partial_symbols): Use std::string.
1378
1379 2018-10-04  Tom Tromey  <tom@tromey.com>
1380
1381         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1382         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1383         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1384         header.
1385         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1386         more inner scope.
1387         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1388         * varobj.c (varobj_update): Rename inner "newobj",
1389         "type_changed".
1390         * valprint.c (generic_emit_char): Rename inner "buf".
1391         * valops.c (find_overload_match): Rename inner "temp".
1392         (value_struct_elt_for_reference): Declare "v" in more inner
1393         scope.
1394         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1395         * unittests/array-view-selftests.c (run_tests): Rename inner
1396         "vec".
1397         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1398         header.
1399         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1400         "tsv" in more inner scope.
1401         (print_one_static_tracepoint_marker): Rename inner
1402         "tuple_emitter".
1403         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1404         (tic6x_push_dummy_call): Don't redeclare "addr".
1405         * target-float.c: Declare "dto" lower.
1406         * symtab.c (lookup_local_symbol): Rename inner "sym".
1407         (find_pc_sect_line): Rename inner "pc".
1408         * stack.c (print_frame): Don't redeclare "gdbarch".
1409         (return_command): Rename inner "gdbarch".
1410         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1411         "sp".
1412         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1413         header.
1414         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1415         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1416         scope.
1417         * remote.c (remote_target::update_thread_list): Don't redeclare
1418         "tp".
1419         (remote_target::process_initial_stop_replies): Rename inner
1420         "thread".
1421         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1422         (remote_target::wait_as): Don't redeclare "stop_reply".
1423         (remote_target::get_thread_local_address): Rename inner
1424         "result".
1425         (remote_target::get_tib_address): Likewise.
1426
1427         * regcache.c (cooked_read_test): Rename "regnum".
1428         * record-btrace.c (cmd_record_btrace_start): Rename inner
1429         "exception".
1430         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1431         loop header.
1432         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1433         header.
1434         (ppu2spu_sniffer): Rename inner "buf".
1435         * parse.c (operator_check_standard): Rename inner "type",
1436         "objfile".
1437         * p-valprint.c (pascal_val_print): Introduce new scope for
1438         "low_bound", "high_bound".
1439         * p-exp.y (yylex): Declare "i" in loop header.
1440         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1441         Lower declaration of "s".
1442         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1443         header.
1444         (nios2_push_dummy_call): Rename "len".
1445         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1446         "buf".
1447         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1448         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1449         (linux_xfer_osdata_modules): Likewise.
1450         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1451         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1452         (mips_o64_push_dummy_call): Likewise.
1453         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1454         "op".
1455         * mi/mi-main.c (list_available_thread_groups): Rename inner
1456         "tuple_emitter".
1457         (mi_cmd_data_read_memory): Rename inner "opts".
1458         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1459         "tuple_emitter".
1460         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1461         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1462         more inner scope.
1463         (parse_partial_symbols): Rename inner "pst", "p", "name"
1464         * main.c (captured_main_1): Rename inner "i"s.
1465         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1466         "oso2".
1467         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1468         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1469         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1470         (handle_signal_stop): Rename inner "gdbarch".
1471         (handle_command): Declare "signum" in loop header.
1472         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1473         "status".
1474         (examine_prologue): Rename inner "sol" and "sof".
1475         (ia64_extract_return_value): Rename inner "val".  Declare another
1476         "val" in a more inner scope.
1477         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1478         inner scope.
1479         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1480         "except".
1481         * findvar.c (default_read_var_value): Don't redeclare "addr".
1482         * f-exp.y (yylex): Declare "i" in loop header.
1483         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1484         Rename inner "type", "expect_type".
1485         (evaluate_subexp_for_sizeof): Rename inner "pc".
1486         * elfread.c (elf_symfile_read): Rename inner "abfd".
1487         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1488         "bytes_read".
1489         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1490         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1491         (dwarf_decode_line_header): Rename inner "lh".
1492         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1493         "offset".  Declare "i" in loop header.
1494         (disassemble_dwarf_expression): Rename inner "addr_size".
1495         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1496         inner "result".
1497         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1498         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1499         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1500         "inner_list_emitter".
1501         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1502         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1503         declaration in a block.
1504         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1505         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1506         "obstack_final_size".
1507         * cp-support.c (inspect_type): Declare "i" in loop header.
1508         * compile/compile.c (compile_instance::insert_symbol_error):
1509         Rename inner "e".
1510         * common/agent.c (agent_run_command): Remove inner "ret"
1511         declaration.
1512         * coffread.c (coff_symfile_read): Rename inner "name".
1513         (coff_symfile_read): Rename inner "abfd".
1514         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1515         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1516         "high".
1517         * c-exp.y (lex_one_token): Move "len" declaration lower.
1518         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1519         "gdbarch".
1520         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1521         "b".
1522         (watch_command_1): Declare "mark" later.
1523         (clear_command): Don't shadow "a" or "b".
1524         (delete_command): Rename inner "b".
1525         (delete_trace_command): Likewise.
1526         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1527         "op".
1528         (arm_gdbarch_init): Remove inner "e_flags".
1529         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1530         "offset" in inner blocks.
1531
1532 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1533
1534         * dwarf-index-write.c (file_write): Don't write if the vector is
1535         empty.
1536
1537 2018-10-05  Tom de Vries  <tdevries@suse.de>
1538
1539         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1540         PyArg_ParseTuple call.
1541
1542 2018-10-05  Tom de Vries  <tdevries@suse.de>
1543
1544         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1545         PyArg_ParseTuple call.
1546
1547 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1548
1549         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1550         to avoid exceeding 80 characters per line limit.
1551
1552 2018-10-04  Tom Tromey  <tom@tromey.com>
1553
1554         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1555         (reread_symbols): Update.
1556         * complaints.h (clear_complaints): Remove argument.
1557         * complaints.c (enum complaint_series): Remove.
1558         (series): Remove global.
1559         (complaint_internal): Update.
1560         (clear_complaints): Remove argument.
1561
1562 2018-10-04  Tom Tromey  <tom@tromey.com>
1563
1564         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1565         debugging symbols" message if there is a separate debug objfile.
1566
1567 2018-10-04  Tom Tromey  <tom@tromey.com>
1568
1569         PR cli/19551:
1570         * symfile.c (symbol_file_add_with_addrs): Update output.
1571         * psymtab.c (require_partial_symbols): Update output.
1572
1573 2018-10-04  Tom Tromey  <tom@tromey.com>
1574
1575         PR cli/22234:
1576         * complaints.c: Emit \n.
1577
1578 2018-10-04  Tom Tromey  <tom@tromey.com>
1579
1580         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1581         (separate_debug_file_exists, find_separate_debug_file)
1582         (add_symbol_file_command, reread_symbols, allocate_symtab)
1583         (allocate_compunit_symtab): Use filtered printing, not
1584         unfiltered.
1585         * psymtab.c (require_partial_symbols, dump_psymtab)
1586         (allocate_psymtab): Use filtered printing, not unfiltered.
1587
1588 2018-10-04  Tom Tromey  <tom@tromey.com>
1589
1590         * complaints.c (complaint_internal): Correctly check complaint
1591         count.
1592
1593 2018-10-04  Tom Tromey  <tom@tromey.com>
1594
1595         * complaints.h (struct complaints): Remove declaration.
1596         * complaints.c (clear_complaints): Remove an unused variable.
1597
1598 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1599
1600         * MAINTAINERS (Write After Approval): Add self.
1601
1602 2018-10-03  Tom Tromey  <tom@tromey.com>
1603
1604         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1605         "buffer_contents".
1606         * coffread.c (coff_symtab_read): Initialize "newobj".
1607
1608 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1609
1610         * dwarf2read.c (read_func_scope): Remove struct keyword in
1611         range-based for.
1612
1613 2018-10-03  Tom Tromey  <tom@tromey.com>
1614
1615         * README: Mention --enable-ubsan.
1616         * NEWS: Mention --enable-ubsan.
1617         * acinclude.m4: Include sanitize.m4.
1618         * configure: Rebuild.
1619         * configure.ac: Call AM_GDB_UBSAN.
1620         * sanitize.m4: New file.
1621
1622 2018-10-03  Tom Tromey  <tom@tromey.com>
1623
1624         * expression.h (enum exp_opcode): Use uint8_t as base type.
1625         * expprint.c (op_name): Handle invalid opcodes.
1626
1627 2018-10-03  Tom Tromey  <tom@tromey.com>
1628
1629         * parse.c (prefixify_expression): Add assert.
1630         (parse_exp_in_context_1): Throw exception if the expression is
1631         empty.
1632
1633 2018-10-03  Tom Tromey  <tom@tromey.com>
1634
1635         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1636
1637 2018-10-03  Tom Tromey  <tom@tromey.com>
1638
1639         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1640
1641 2018-10-03  Tom Tromey  <tom@tromey.com>
1642
1643         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1644         unsigned.
1645
1646 2018-10-03  Tom Tromey  <tom@tromey.com>
1647
1648         * findvar.c (extract_integer): Do work in an unsigned type.
1649
1650 2018-10-03  Tom Tromey  <tom@tromey.com>
1651
1652         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1653         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1654         base type.
1655         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1656         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1657         type.
1658         * c-lang.h (enum c_string_type_values): Use unsigned as base
1659         type.
1660         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1661
1662 2018-10-03  Tom Tromey  <tom@tromey.com>
1663
1664         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1665         <~dwarf2_frame_state_reg_info>: Update.
1666         <dwarf2_frame_state_reg_info>: Update.
1667         <alloc_regs>: Add assertion.  Update.
1668         <reg>: Now a std::vector.
1669         <num_regs>: Remove.
1670         <swap>: Update.
1671         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1672         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1673
1674 2018-10-03  Tom Tromey  <tom@tromey.com>
1675
1676         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1677
1678 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1679
1680         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1681
1682 2018-10-02  Tom Tromey  <tom@tromey.com>
1683
1684         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1685
1686 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1687
1688         * NEWS: Mention changed commands.
1689         * ser-uds.c: New file.
1690         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1691         * configure: Regenerate.
1692         * Makefile.in: Add new file.
1693         * serial.c (serial_open): Check if filename is a socket
1694           and lookup the appropriate interface accordingly.
1695
1696 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1697
1698         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1699         define.
1700         (AARCH64_EXTRA_MAGIC): Likewise.
1701         (AARCH64_FPSIMD_MAGIC): Likewise.
1702         (AARCH64_SVE_MAGIC): Likewise.
1703         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1704         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1705         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1706         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1707         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1708         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1709         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1710         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1711         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1712         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1713         (read_aarch64_ctx): Add function.
1714         (aarch64_linux_sigframe_init): Detect FP registers.
1715
1716 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1717
1718         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to 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         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1725         (AARCH64_D0_REGNUM): Likewise.
1726         (AARCH64_S0_REGNUM): Likewise.
1727         (AARCH64_H0_REGNUM): Likewise.
1728         (AARCH64_B0_REGNUM): Likewise.
1729         (AARCH64_SVE_V0_REGNUM): Likewise.
1730
1731 2018-10-01  Gary Benson <gbenson@redhat.com>
1732
1733         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1734         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1735         prfpregset_t instead of gdb_prfpregset_t.
1736         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1737         * configure, config.in: Rebuild.
1738
1739 2018-10-01  Gary Benson <gbenson@redhat.com>
1740
1741         * common/gdb_proc_service.h: New file, factored out from...
1742         * gdb_proc_service.h: Moved common code to the above file.
1743         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1744
1745 2018-10-01  Gary Benson <gbenson@redhat.com>
1746
1747         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1748         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1749
1750 2018-10-01  Gary Benson <gbenson@redhat.com>
1751
1752         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1753         (AC_CHECK_HEADERS): Check for linux/elf.h.
1754         * configure, config.in: Rebuild.
1755         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1756         doesn't define elf_fpregset_t.
1757
1758 2018-10-01  Gary Benson <gbenson@redhat.com>
1759
1760         * gdb_proc_service.h: Whitespace change.
1761
1762 2018-10-01  Tom Tromey  <tom@tromey.com>
1763
1764         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1765         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1766         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1767
1768 2018-10-01  Tom Tromey  <tom@tromey.com>
1769
1770         * README: Minor change.
1771
1772 2018-09-30  Pedro Alves  <palves@redhat.com>
1773
1774         * darwin-nat-info.c (darwin_debug_regions_recurse)
1775         (info_mach_exceptions_command): Remove unused local variables.
1776         * darwin-nat.c (darwin_decode_notify_message)
1777         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1778         (darwin_stop_inferior, darwin_setup_exceptions)
1779         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1780         (darwin_nat_target::attach, darwin_nat_target::detach)
1781         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1782         local variables.
1783         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1784         variables.
1785
1786 2018-09-29  Tom Tromey  <tom@tromey.com>
1787
1788         * README: Remove some leftover text.
1789
1790 2018-09-29  Tom Tromey  <tom@tromey.com>
1791
1792         * PROBLEMS: Rewrite.
1793         * README: Update.
1794
1795 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1796
1797         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1798         case with explicit breakpoint kind.
1799         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1800         'additional_info' and related logic.
1801         (riscv_debug_breakpoints): New variable.
1802         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1803         instruction to determine the breakpoint kind.
1804         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1805         flag.  Update description of 'set/show riscv
1806         use-compressed-breakpoints' flag.
1807
1808 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1809
1810         (NEWS): Mention changes to frame related commands.
1811         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1812         (add_prefix_cmd_suppress_notification): New function.
1813         (add_com_suppress_notification): Call
1814         add_cmd_suppress_notification.
1815         * command.h (add_cmd_suppress_notification): Declare.
1816         (add_prefix_cmd_suppress_notification): Declare.
1817         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1818         (parse_frame_specification): Moved from stack.c, with
1819         simplification to handle a single argument.
1820         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1821         switch to the selected frame.  Add a header comment.
1822         * stack.c: Remove 'safe-ctype.h' include.
1823         (find_frame_for_function): Add declaration.
1824         (find_frame_for_address): New function.
1825         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1826         (frame_selection_by_function_completer): New function.
1827         (info_frame_command): Rename to...
1828         (info_frame_command_core): ...this, and update parameter types.
1829         (select_frame_command): Rename to...
1830         (select_frame_command_core): ...this, and update parameter types.
1831         (frame_command): Rename to...
1832         (frame_command_core): ...this, and update parameter types.
1833         (class frame_command_helper): New class to wrap implementations of
1834         frame related sub-commands.
1835         (frame_apply_cmd_list): New static global.
1836         (frame_cmd_list): Make static.
1837         (select_frame_cmd_list): New global for sub-commands.
1838         (info_frame_cmd_list): New global for sub-commands.
1839         (_initialize_stack): Register sub-commands for 'frame',
1840         'select-frame', and 'info frame'.  Update 'frame apply' commands
1841         to use frame_apply_cmd_list.  Move function local static
1842         frame_apply_list to file static frame_apply_cmd_list for
1843         consistency.
1844         * stack.h (select_frame_command): Delete declarationn.
1845         (select_frame_for_mi): Declare new function.
1846
1847 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1848
1849         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1850         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1851         and NOP.
1852
1853 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1854
1855         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1856
1857 2018-09-26  Tom Tromey  <tom@tromey.com>
1858
1859         * valops.c (auto_abandon): Remove dead code.
1860
1861 2018-09-26  Tom Tromey  <tom@tromey.com>
1862
1863         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1864
1865 2018-09-24  Tom Tromey  <tom@tromey.com>
1866
1867         * common/pathstuff.c (get_standard_cache_dir): Make
1868         "xdg_cache_home" and "home" const.
1869         * top.c (init_history): Make "tmpenv" const.
1870         * main.c (get_init_files): Make "homedir" const.
1871
1872 2018-09-23  Tom Tromey  <tom@tromey.com>
1873
1874         PR python/18852:
1875         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1876
1877 2018-09-23  Tom Tromey  <tom@tromey.com>
1878
1879         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1880         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1881         * python/python-internal.h (gdbpy_handle_exception): Declare.
1882         * python/py-utils.c (gdbpy_handle_exception): New function.
1883
1884 2018-09-23  Tom Tromey  <tom@tromey.com>
1885
1886         PR python/17284:
1887         * python/py-type.c (typy_template_argument): Check for negative
1888         argument number.
1889
1890 2018-09-23  Tom Tromey  <tom@tromey.com>
1891
1892         PR python/14062:
1893         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1894
1895 2018-09-23  Tom Tromey  <tom@tromey.com>
1896
1897         PR python/18170:
1898         * python/py-value.c (valpy_int): Allow conversion from pointer
1899         type.
1900
1901 2018-09-23  Tom Tromey  <tom@tromey.com>
1902
1903         PR python/20126:
1904         * python/py-value.c (valpy_int): Respect type sign.
1905
1906 2018-09-23  Tom Tromey  <tom@tromey.com>
1907
1908         PR python/18352;
1909         * python/py-value.c (valpy_float): Allow conversions from int or
1910         char.
1911         (valpy_int, valpy_long): Allow conversions from float.
1912
1913 2018-09-23  Tom Tromey  <tom@tromey.com>
1914
1915         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1916         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1917
1918 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1919
1920         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1921         __sighndlr.
1922         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1923
1924 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1925
1926         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1927         target_terminal::ours().
1928
1929 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1930
1931         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1932         of vl to ULONGEST.
1933
1934 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1935
1936         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1937         redundant condition.
1938
1939 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1940
1941         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1942
1943         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1944         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1945         * sol-thread.c (ps_pdmodel): Don't guard definition.
1946
1947         * procfs.c: Fix formatting.
1948
1949         * procfs.c (sysset_t_alloc): Remove.
1950         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1951         (procfs_debug_inferior): Likewise.
1952         (procfs_set_exec_trap): Likewise.
1953         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1954         (proc_set_traced_sysexit): Likewise.
1955
1956         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1957         (dead_procinfo): Likewise.
1958         (proc_warn): Likewise.
1959         (proc_error): Likewise.
1960         (proc_get_LDT_entry): Likewise.
1961         (do_attach): Likewise.
1962         (procfs_target::pid_to_str): Likewise.
1963         (iterate_over_mappings): Likewise.
1964
1965         * procfs.c (create_procinfo): Fix ARI warning.
1966         (proc_get_status): Likewise.
1967         (proc_stop_process): Likewise.
1968         (proc_run_process): Likewise.
1969         (proc_kill): Likewise.
1970         (proc_get_LDT_entry): Likewise.
1971         (procfs_find_LDT_entry): Likewise.
1972         (proc_update_threads): Likewise.
1973         (proc_iterate_over_threads): Likewise.
1974         (do_attach): Likewise.
1975         (procfs_xfer_memory): Likewise.
1976         (invalidate_cache): Likewise.
1977         (procfs_target::resume): Likewise.
1978         (procfs_init_inferior): Likewise.
1979         (procfs_set_exec_trap): Likewise.
1980         (procfs_target::thread_alive): Likewise.
1981         (procfs_target::pid_to_exec_file): Likewise.
1982         (iterate_over_mappings): Likewise.
1983         (procfs_target::make_corefile_notes): Likewise.
1984         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1985
1986         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1987         (procfs_find_LDT_entry): Likewise.
1988         * sol-thread.c (ps_lgetLDT): Likewise.
1989
1990 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1991
1992         PR tdep/17903
1993         * procfs.c (procfs_target): Declare pid_to_exec_file.
1994         (procfs_target::pid_to_exec_file): New.
1995
1996 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1997
1998         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1999         renaming.
2000         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2001         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2002
2003 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2004
2005         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2006         (supply_fpregset, fill_fpregset): Move ...
2007         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2008         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2009         Remove references to ioctl-based procfs.
2010         Include <sys/reg.h>.
2011         Remove PR_MODEL_NATIVE guards.
2012         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2013         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2014
2015 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2016
2017         PR gdb/20981:
2018         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2019         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2020         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2021
2022 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2023
2024         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2025         (fbsd_print_sockaddr_in6): Likewise.
2026
2027 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2028             Chris January  <chris.january@arm.com>
2029
2030         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2031         (evaluate_subexp_standard): Return a dummy type when
2032         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2033         OP_F77_UNDETERMINED_ARGLIST case.
2034         * expression.h (enum noside): Update comment.
2035
2036 2018-09-19  George Vasick <george.vasick@oracle.com>
2037
2038         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2039
2040 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2041             April Chin <april.chin@oracle.com>
2042             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2043
2044         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2045         uint_t lwpid_t.
2046         (create_procinfo): Print pids in /proc without leading zeros.
2047
2048 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2049
2050         * nios2-tdep.c (nios2_gcc_target_options): New.
2051         (nios2_gdb_arch_init): Install new hook.
2052
2053 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2054
2055         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2056         New file.
2057         * update-gnulib.sh: Apply patch.
2058         * configure: Re-generate.
2059
2060 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2061
2062         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2063         description.  Make "info proc" command descriptions more
2064         consistent.
2065
2066 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2067
2068         * NEWS: Mention 'info proc files' command.
2069
2070 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2071
2072         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2073         descriptors for IP_FILES and IP_ALL.
2074
2075 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2076
2077         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2078         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2079         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2080         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2081         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2082         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2083         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2084         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2085         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2086         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2087         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2088         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2089         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2090         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2091         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2092         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2093         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2094         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2095         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2096         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2097         (struct fbsd_sockaddr_un): New types.
2098         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2099         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2100         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2101         (fbsd_core_info_proc_files): New functions.
2102         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2103         IP_ALL.
2104         * fbsd-tdep.h (fbsd_info_proc_files_header)
2105         (fbsd_info_proc_files_entry): New.
2106
2107 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2108
2109         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2110         * infcmd.c (info_proc_cmd_files): New function.
2111         (_initialize_infcmd): Register 'info proc files' command.
2112
2113 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2114
2115         * gnulib/aclocal-m4-deps.mk: Re-generate.
2116         * gnulib/aclocal.m4: Re-generate.
2117         * gnulib/config.in: Re-generate.
2118         * gnulib/configure: Re-generate.
2119         * gnulib/import/Makefile.am: Re-generate.
2120         * gnulib/import/Makefile.in: Re-generate.
2121         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2122         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2123         * gnulib/import/arpa_inet.in.h: New file.
2124         * gnulib/import/inet_ntop.c: New file.
2125         * gnulib/import/m4/arpa_inet_h.m4: New file.
2126         * gnulib/import/m4/inet_ntop.m4: New file.
2127         * gnulib/import/m4/netinet_in_h.m4: New file.
2128         * gnulib/import/m4/socklen.m4: New file.
2129         * gnulib/import/m4/sockpfaf.m4: New file.
2130         * gnulib/import/m4/stdalign.m4: New file.
2131         * gnulib/import/m4/sys_uio_h.m4: New file.
2132         * gnulib/import/netinet_in.in.h: New file.
2133         * gnulib/import/stdalign.in.h: New file.
2134         * gnulib/import/sys_socket.c: New file.
2135         * gnulib/import/sys_socket.in.h: New file.
2136         * gnulib/import/sys_uio.in.h: New file.
2137         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2138         module.
2139
2140 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2141
2142         * gnulib/aclocal-m4-deps.mk: New file.
2143         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2144         deterministically.
2145
2146 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2147
2148         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2149         KVE_PATH.
2150
2151 2018-09-18  Tom Tromey  <tom@tromey.com>
2152
2153         * compile/compile-object-load.c (struct
2154         link_hash_table_cleanup_data): Add constructor and destructor.
2155         Use DISABLE_COPY_AND_ASSIGN.
2156         (~link_hash_table_cleanup_data): Rename from
2157         link_hash_table_free.  Now a destructor.
2158         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2159
2160 2018-09-18  Tom Tromey  <tom@tromey.com>
2161
2162         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2163         * compile/compile-object-load.c (struct munmap_list): Move to
2164         header file.
2165         (munmap_list::add): Rename from munmap_list_add; rewrite.
2166         (munmap_list::~munmap_list): Rename from munmap_list_free.
2167         (munmap_listp_free_cleanup): Remove.
2168         (compile_object_load): Update.
2169         * compile/compile-object-load.h (struct munmap_list): Move from
2170         compile-object-load.c.  Rewrite.
2171
2172 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2173
2174         * aarch64-tdep.c (pass_in_v): Use register size.
2175         (aarch64_extract_return_value): Likewise.
2176         (aarch64_store_return_value): Likewise.
2177
2178 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2179
2180         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2181         rlim_t.
2182
2183 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2184
2185         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2186         Fix short help line.
2187
2188 2018-09-17  Tom Tromey  <tom@tromey.com>
2189
2190         PR python/20445:
2191         * configure: Rebuild.
2192         * configure.ac: Conditionally use -DNDEBUG for Python.
2193
2194 2018-09-17  Tom Tromey  <tom@tromey.com>
2195
2196         * configure: Rebuild.
2197         * configure.ac: Use gmp as a library dependency when checking for
2198         mpfr.
2199
2200 2018-09-17  Pedro Alves  <palves@redhat.com>
2201
2202         * python/py-inferior.c (find_inferior_object): Delete.
2203
2204 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2205
2206         * compile/compile-cplus-types.c
2207         (compile_cplus_instance::enter_scope): Don't use new_scope after
2208         std::move.
2209
2210 2018-09-17  Tom Tromey  <tom@tromey.com>
2211
2212         * common/pathstuff.c (get_standard_cache_dir): Use
2213         ~/Library/Caches on macOS.
2214         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2215
2216 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2217
2218         PR python/23669
2219         * breakpoint.c (commands_cmd_element): New.
2220         (_initialize_breakpoint): Assign commands_cmd_element.
2221         * breakpoint.h (commands_cmd_element): New.
2222         * cli/cli-script.c (while_cmd_element, if_command,
2223         define_cmd_element): New.
2224         (command_name_equals): Remove.
2225         (process_next_line): Compare commands by pointer, not by name.
2226         (_initialize_cli_script): Assign the various cmd_list_element
2227         variables.
2228         * compile/compile.c (compile_cmd_element): New.
2229         (_initialize_compile): Assign compile_cmd_element.
2230         * compile/compile.h (compile_cmd_element): New.
2231         * guile/guile.c (guile_cmd_element): New.
2232         (install_gdb_commands): Assign guile_cmd_element.
2233         * guile/guile.h (guile_cmd_element): New.
2234         * python/python.c (python_cmd_element): New.
2235         (_initialize_python): Assign python_cmd_element.
2236         * python/python.h (python_cmd_element): New.
2237         * tracepoint.c (while_stepping_cmd_element): New.
2238         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2239         * tracepoint.h (while_stepping_cmd_element): New.
2240
2241 2018-09-17  Tom Tromey  <tom@tromey.com>
2242
2243         * infrun.c (save_infcall_suspend_state): Return
2244         infcall_suspend_state_up.
2245         (save_infcall_control_state): Return infcall_control_state_up.
2246         * inferior.h (save_infcall_suspend_state)
2247         (save_infcall_control_state): Declare later.  Return unique
2248         pointers.
2249
2250 2018-09-17  Tom Tromey  <tom@tromey.com>
2251
2252         * infrun.c (struct stop_context): Declare constructor,
2253         destructor, "changed" method.
2254         (stop_context::stop_context): Rename from save_stop_context.
2255         (stop_context::~stop_context): Rename from
2256         release_stop_context_cleanup.
2257         (normal_stop): Update.
2258         (stop_context::changed): Rename from stop_context_changed.  Return
2259         bool.
2260
2261 2018-09-17  Tom Tromey  <tom@tromey.com>
2262
2263         * inferior.h (struct infcall_suspend_state_deleter): New.
2264         (infcall_suspend_state_up): New typedef.
2265         (struct infcall_control_state_deleter): New.
2266         (infcall_control_state_up): New typedef.
2267         (make_cleanup_restore_infcall_suspend_state)
2268         (make_cleanup_restore_infcall_control_state): Don't declare.
2269         * infcall.c (call_function_by_hand_dummy): Update.
2270         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2271         (make_cleanup_restore_infcall_suspend_state): Remove.
2272         (do_restore_infcall_control_state_cleanup)
2273         (make_cleanup_restore_infcall_control_state): Remove.
2274
2275 2018-09-17  Tom Tromey  <tom@tromey.com>
2276
2277         * gdbthread.h (struct thread_control_state): Add initializer.
2278         (class thread_info) <control>: Remove initializer.
2279         * inferior.h (struct inferior_control_state): Add initializer.
2280         (class inferior) <control>: Remove initializer.
2281         (exit_inferior_1): Update.
2282         * infrun.c (struct infcall_control_state): Add constructors.
2283         (save_infcall_control_state): Use new.
2284         (restore_infcall_control_state, discard_infcall_control_state):
2285         Use delete.
2286
2287 2018-09-17  Tom Tromey  <tom@tromey.com>
2288
2289         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2290         unique_ptr.
2291         <siginfo_data>: Now a unique_xmalloc_ptr.
2292         (save_infcall_suspend_state, restore_infcall_suspend_state)
2293         (discard_infcall_suspend_state)
2294         (get_infcall_suspend_state_regcache): Update.
2295
2296 2018-09-17  Tom Tromey  <tom@tromey.com>
2297
2298         * gdbthread.h (struct thread_suspend_state): Add initializers.
2299         (class thread_info) <suspend>: Remove initializer.
2300         * infrun.c (struct infcall_suspend_state): Add initializers.
2301         (save_infcall_suspend_state): Use new.
2302         (discard_infcall_suspend_state): Use delete.
2303
2304 2018-09-16  Tom Tromey  <tom@tromey.com>
2305
2306         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2307         Remove.
2308         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2309         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2310         (py_varobj_iter_new): Likewise.
2311         (py_varobj_get_iterator): Use gdbpy_ref.
2312
2313 2018-09-16  Tom Tromey  <tom@tromey.com>
2314
2315         * python/py-threadevent.c (py_get_event_thread): Simplify.
2316         * python/py-inferior.c (infpy_thread_from_thread_handle):
2317         Return immediately after calling thread_to_thread_object.  Use
2318         Py_RETURN_NONE.
2319         (thread_to_thread_object): Set the exception on a NULL return.
2320
2321 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2322
2323         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2324
2325 2018-09-16  Tom Tromey  <tom@tromey.com>
2326
2327         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2328         Remove.
2329
2330 2018-09-16  Tom Tromey  <tom@tromey.com>
2331
2332         * python/python-internal.h (thread_to_thread_object): Change
2333         return type.
2334         * python/py-inferior.c (thread_to_thread_object): Return a new
2335         reference.
2336         (infpy_thread_from_thread_handle): Update.
2337         * python/py-infthread.c (gdbpy_selected_thread): Update.
2338         * python/py-stopevent.c (create_stop_event_object): Update.
2339         * python/py-threadevent.c (py_get_event_thread): Return a new
2340         reference.
2341         (py_get_event_thread): Update.
2342         * python/py-event.h (py_get_event_thread): Change return type.
2343         * python/py-continueevent.c (create_continue_event_object):
2344         Update.
2345
2346 2018-09-16  Tom Tromey  <tom@tromey.com>
2347
2348         * python/py-progspace.c (pspy_get_objfiles): Update.
2349         * python/python-internal.h (objfile_to_objfile_object): Change
2350         return type.
2351         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2352         Update.
2353         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2354         Update.
2355         * python/python.c (gdbpy_get_current_objfile): Update.
2356         (gdbpy_objfiles): Update.
2357         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2358         Update.
2359         (objfile_to_objfile_object): Return a new reference.
2360         * python/py-symtab.c (stpy_get_objfile): Update.
2361         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2362         Update.
2363
2364 2018-09-16  Tom Tromey  <tom@tromey.com>
2365
2366         * python/py-inferior.c (infpy_get_progspace): Update.
2367         * python/python-internal.h (pspace_to_pspace_object): Change
2368         return type.
2369         * python/py-newobjfileevent.c
2370         (create_clear_objfiles_event_object): Update.
2371         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2372         Update.
2373         * python/python.c (gdbpy_get_current_progspace): Update.
2374         (gdbpy_progspaces): Update.
2375         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2376         reference.
2377         * python/py-objfile.c (objfpy_get_progspace): Update.
2378         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2379         Update.
2380
2381 2018-09-16  Tom Tromey  <tom@tromey.com>
2382
2383         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2384         (solib_name, block_for_pc, find_pc_line): New functions.
2385         (execute_unwinders): Update.
2386         * python/py-block.c (gdbpy_block_for_pc): Remove.
2387         * python/py-inferior.c (infpy_get_progspace): New function.
2388         (inferior_object_getset) <progspace>: Add.
2389         * python/py-progspace.c (pspy_objfiles): Rewrite.
2390         (pspy_solib_name, pspy_block_for_pc)
2391         (pspy_find_pc_line, pspy_is_valid): New functions.
2392         (progspace_object_methods): Add entries for solib_name,
2393         block_for_pc, find_pc_line, is_valid.
2394         * python/python-internal.h (gdbpy_block_for_pc)
2395         (build_objfiles_list): Don't declare.
2396         * python/python.c: Don't include solib.h.
2397         (gdbpy_solib_name, gdbpy_find_pc_line)
2398         (gdbpy_get_current_progspace, build_objfiles_list)
2399         (gdbpy_objfiles): Remove.
2400         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2401         solib_name, find_pc_line>: Remove entries.
2402
2403 2018-09-16  Tom Tromey  <tom@tromey.com>
2404
2405         * top.c (new_ui_command): Use GNU style for metasyntactic
2406         variables.
2407         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2408         variables.
2409         * maint.c (maintenance_translate_address): Remove "<>" around
2410         text.
2411         * interps.c (interpreter_exec_cmd): Use GNU style for
2412         metasyntactic variables.
2413         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2414         metasyntactic variables.
2415         * tracepoint.c (tfind_range_command): Use GNU style for
2416         metasyntactic variables.
2417         (tfind_outside_command): Likewise.
2418         (_initialize_tracepoint): Likewise.
2419         * remote.c (extended_remote_target::create_inferior): Use GNU
2420         style for metasyntactic variables.
2421         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2422         metasyntactic variables.
2423         (adi_assign_command): Likewise.
2424
2425 2018-09-16  Tom Tromey  <tom@tromey.com>
2426
2427         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2428         metasyntactic variables.  Print message if no disassembler options
2429         are available.
2430
2431 2018-09-15  Tom Tromey  <tom@tromey.com>
2432
2433         * infcmd.c (get_inferior_args): Return const char *.
2434         * inferior.h (get_inferior_args): Return type now const.
2435         * linux-tdep.c (linux_fill_prpsinfo): Update.
2436         * procfs.c (procfs_target::make_corefile_notes): Update.
2437
2438 2018-09-07  Tom Tromey  <tom@tromey.com>
2439
2440         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2441         inside the TRY.
2442
2443 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2444
2445         * nios2-tdep.c (nios2_type_align): New.
2446         (nios2_gdb_arch_init): Install type_align hook.
2447
2448 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2449
2450         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2451         type that is neither object file owned, nor gdbarch owned.
2452         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2453         gdbarch is non-NULL.
2454         (alloc_type_instance): Allocate non-objfile owned types on the
2455         gdbarch obstack.
2456         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2457         using TYPE_ALLOC to ensure memory is allocated on the correct
2458         obstack.
2459         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2460         obstack, or the gdbarch obstack.
2461         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2462
2463 2018-09-14  Tom Tromey  <tom@tromey.com>
2464
2465         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2466         block.
2467
2468 2018-09-14  Tom Tromey  <tom@tromey.com>
2469
2470         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2471
2472 2018-09-13  Tom Tromey  <tom@tromey.com>
2473
2474         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2475         static.
2476
2477 2018-09-13  Tom Tromey  <tom@tromey.com>
2478
2479         * exec.c (try_open_exec_file): Use std::string.
2480
2481 2018-09-13  Tom Tromey  <tom@tromey.com>
2482
2483         * utils.h (gdb_bfd_errmsg): Return std::string.
2484         * exec.c (exec_file_attach): Update.
2485         * compile/compile-object-load.c (compile_object_load): Update.
2486         * utils.c (gdb_bfd_errmsg): Return std::string.
2487
2488 2018-09-13  Tom Tromey  <tom@tromey.com>
2489
2490         * procfs.c (struct procinfo_deleter): New.
2491         (procinfo_up): New typedef.
2492         (do_destroy_procinfo_cleanup): Remove.
2493         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2494
2495 2018-09-13  Tom Tromey  <tom@tromey.com>
2496
2497         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2498
2499 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2500 2018-09-13  Tom Tromey  <tom@tromey.com>
2501
2502         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2503         (pspy_get_objfiles): New function.
2504         (progspace_object_methods): New.
2505         (pspace_object_type): Add tp_methods callback.
2506         * python/python-internal.h (build_objfiles_list): New
2507         declaration.
2508         * python/python.c (build_objfiles_list): New function.
2509         (gdbpy_objfiles): Implement using build_objfiles_list.
2510         * NEWS: Mention the Progspace.objfiles method.
2511
2512 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2513
2514         * python/py-inferior.c (infpy_get_progspace): New function.
2515         (inferior_object_getset): Add progspace property.
2516         * NEWS: Mention the new property.
2517
2518 2018-09-13  Tom Tromey  <tom@tromey.com>
2519
2520         PR rust/23650:
2521         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2522
2523 2018-09-13  Tom Tromey  <tom@tromey.com>
2524
2525         PR rust/23626:
2526         * rust-lang.c (rust_enum_variant): Now static.
2527         (rust_empty_enum_p): New function.
2528         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2529         Handle empty enum.
2530
2531 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2532
2533         * python/py-inferior.c (infpy_repr): New.
2534         (inferior_object_type): Register infpy_repr.
2535         * python/py-objfile.c (objfpy_repr): New.
2536         (objfile_object_type): Register objfpy_repr.
2537
2538 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2539
2540         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2541
2542 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2543
2544         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2545         typo.
2546
2547 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2548
2549         * common/common-utils.c: Don't include '<sys/stat.h>'.
2550         (is_regular_file): Move to...
2551         * common/filestuff.c (is_regular_file): ... here.
2552         * common/common-utils.h (is_regular_file): Move to...
2553         * common/filestuff.h (is_regular_file): ... here.
2554
2555 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2556
2557         * skip.c (debug_skip): New variable.
2558         (skiplist_entry::do_skip_file_p): Add debug output.
2559         (skiplist_entry::do_skip_gfile_p): Likewise.
2560         (skiplist_entry::skip_function_p): Likewise.
2561         (_initialize_step_skip): Create debug command.
2562         * NEWS: Mention set/show debug skip.
2563
2564 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2565
2566         * darwin-nat.c (should_disable_startup_with_shell):
2567         New function.
2568         (darwin_nat_target::create_inferior): Add call.
2569
2570 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2571
2572         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2573         inf_port, msg_state>: Initialize.
2574         (struct darwin_thread_info) <signaled, single_step>: Change
2575         type and initialize.
2576         (struct darwin_thread_info) <event>: Initialize.
2577
2578 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2579
2580         PR gdb/23555
2581         PR gdb/23558
2582         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2583         guesses.
2584
2585 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2586
2587         Revert:
2588         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2589
2590         PR gdb/23555
2591         PR gdb/23558
2592         * gnulib/aclocal.m4: Regenerate.
2593         * gnulib/config.in: Regenerate.
2594         * gnulib/configure: Regenerate.
2595         * gnulib/import/Makefile.am: Update.
2596         * gnulib/import/Makefile.in: Update.
2597         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2598         * gnulib/import/_Noreturn.h: ... this.
2599         * gnulib/import/alloca.in.h: Update.
2600         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2601         * gnulib/import/arg-nonnull.h: ... this.
2602         * gnulib/import/assure.h: Update.
2603         * gnulib/import/at-func.c: Update.
2604         * gnulib/import/basename-lgpl.c: Update.
2605         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2606         * gnulib/import/c++defs.h: ... this.
2607         * gnulib/import/canonicalize-lgpl.c: Update.
2608         * gnulib/import/cdefs.h: Update.
2609         * gnulib/import/chdir-long.c: Update.
2610         * gnulib/import/chdir-long.h: Update.
2611         * gnulib/import/cloexec.c: Update.
2612         * gnulib/import/cloexec.h: Update.
2613         * gnulib/import/close.c: Update.
2614         * gnulib/import/closedir.c: Update.
2615         * gnulib/import/config.charset: Update.
2616         * gnulib/import/dirent-private.h: Update.
2617         * gnulib/import/dirent.in.h: Update.
2618         * gnulib/import/dirfd.c: Update.
2619         * gnulib/import/dirname-lgpl.c: Update.
2620         * gnulib/import/dirname.h: Update.
2621         * gnulib/import/dosname.h: Update.
2622         * gnulib/import/dup-safer-flag.c: Update.
2623         * gnulib/import/dup-safer.c: Update.
2624         * gnulib/import/dup.c: Update.
2625         * gnulib/import/dup2.c: Update.
2626         * gnulib/import/errno.in.h: Update.
2627         * gnulib/import/error.c: Update.
2628         * gnulib/import/error.h: Update.
2629         * gnulib/import/exitfail.c: Update.
2630         * gnulib/import/exitfail.h: Update.
2631         * gnulib/import/extra/update-copyright: Update.
2632         * gnulib/import/fchdir.c: Update.
2633         * gnulib/import/fcntl.c: Update.
2634         * gnulib/import/fcntl.in.h: Update.
2635         * gnulib/import/fd-hook.c: Update.
2636         * gnulib/import/fd-hook.h: Update.
2637         * gnulib/import/fd-safer-flag.c: Update.
2638         * gnulib/import/fd-safer.c: Update.
2639         * gnulib/import/fdopendir.c: Update.
2640         * gnulib/import/filename.h: Update.
2641         * gnulib/import/filenamecat-lgpl.c: Update.
2642         * gnulib/import/filenamecat.h: Update.
2643         * gnulib/import/flexmember.h: Update.
2644         * gnulib/import/float+.h: Update.
2645         * gnulib/import/float.c: Update.
2646         * gnulib/import/float.in.h: Update.
2647         * gnulib/import/fnmatch.c: Update.
2648         * gnulib/import/fnmatch.in.h: Update.
2649         * gnulib/import/fnmatch_loop.c: Update.
2650         * gnulib/import/fpucw.h: Update.
2651         * gnulib/import/frexp.c: Update.
2652         * gnulib/import/frexpl.c: Update.
2653         * gnulib/import/fstat.c: Update.
2654         * gnulib/import/fstatat.c: Update.
2655         * gnulib/import/getcwd-lgpl.c: Update.
2656         * gnulib/import/getcwd.c: Update.
2657         * gnulib/import/getdtablesize.c: Update.
2658         * gnulib/import/getlogin_r.c: Update.
2659         * gnulib/import/getprogname.c: Update.
2660         * gnulib/import/getprogname.h: Update.
2661         * gnulib/import/gettext.h: Update.
2662         * gnulib/import/gettimeofday.c: Update.
2663         * gnulib/import/glob-libc.h: Update.
2664         * gnulib/import/glob.c: Update.
2665         * gnulib/import/glob.in.h: Update.
2666         * gnulib/import/glob_internal.h: Update.
2667         * gnulib/import/glob_pattern_p.c: Update.
2668         * gnulib/import/globfree.c: Update.
2669         * gnulib/import/hard-locale.c: Update.
2670         * gnulib/import/hard-locale.h: Update.
2671         * gnulib/import/intprops.h: Update.
2672         * gnulib/import/inttypes.in.h: Update.
2673         * gnulib/import/isnan.c: Update.
2674         * gnulib/import/isnand-nolibm.h: Update.
2675         * gnulib/import/isnand.c: Update.
2676         * gnulib/import/isnanl-nolibm.h: Update.
2677         * gnulib/import/isnanl.c: Update.
2678         * gnulib/import/itold.c: Update.
2679         * gnulib/import/libc-config.h: Update.
2680         * gnulib/import/limits.in.h: Update.
2681         * gnulib/import/localcharset.c: Update.
2682         * gnulib/import/localcharset.h: Update.
2683         * gnulib/import/localtime-buffer.c: Update.
2684         * gnulib/import/localtime-buffer.h: Update.
2685         * gnulib/import/lstat.c: Update.
2686         * gnulib/import/m4/00gnulib.m4: Update.
2687         * gnulib/import/m4/__inline.m4: Update.
2688         * gnulib/import/m4/absolute-header.m4: Update.
2689         * gnulib/import/m4/alloca.m4: Update.
2690         * gnulib/import/m4/builtin-expect.m4: Update.
2691         * gnulib/import/m4/canonicalize.m4: Update.
2692         * gnulib/import/m4/chdir-long.m4: Update.
2693         * gnulib/import/m4/close.m4: Update.
2694         * gnulib/import/m4/closedir.m4: Update.
2695         * gnulib/import/m4/configmake.m4: Update.
2696         * gnulib/import/m4/d-ino.m4: Update.
2697         * gnulib/import/m4/d-type.m4: Update.
2698         * gnulib/import/m4/dirent_h.m4: Update.
2699         * gnulib/import/m4/dirfd.m4: Update.
2700         * gnulib/import/m4/dirname.m4: Update.
2701         * gnulib/import/m4/double-slash-root.m4: Update.
2702         * gnulib/import/m4/dup.m4: Update.
2703         * gnulib/import/m4/dup2.m4: Update.
2704         * gnulib/import/m4/eealloc.m4: Update.
2705         * gnulib/import/m4/environ.m4: Update.
2706         * gnulib/import/m4/errno_h.m4: Update.
2707         * gnulib/import/m4/error.m4: Update.
2708         * gnulib/import/m4/exponentd.m4: Update.
2709         * gnulib/import/m4/exponentl.m4: Update.
2710         * gnulib/import/m4/extensions.m4: Update.
2711         * gnulib/import/m4/extern-inline.m4: Update.
2712         * gnulib/import/m4/fchdir.m4: Update.
2713         * gnulib/import/m4/fcntl-o.m4: Update.
2714         * gnulib/import/m4/fcntl.m4: Update.
2715         * gnulib/import/m4/fcntl_h.m4: Update.
2716         * gnulib/import/m4/fdopendir.m4: Update.
2717         * gnulib/import/m4/filenamecat.m4: Update.
2718         * gnulib/import/m4/flexmember.m4: Update.
2719         * gnulib/import/m4/float_h.m4: Update.
2720         * gnulib/import/m4/fnmatch.m4: Update.
2721         * gnulib/import/m4/fnmatch_h.m4: Update.
2722         * gnulib/import/m4/fpieee.m4: Update.
2723         * gnulib/import/m4/frexp.m4: Update.
2724         * gnulib/import/m4/frexpl.m4: Update.
2725         * gnulib/import/m4/fstat.m4: Update.
2726         * gnulib/import/m4/fstatat.m4: Update.
2727         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2728         * gnulib/import/m4/getcwd-path-max.m4: Update.
2729         * gnulib/import/m4/getcwd.m4: Update.
2730         * gnulib/import/m4/getdtablesize.m4: Update.
2731         * gnulib/import/m4/getlogin.m4: Update.
2732         * gnulib/import/m4/getlogin_r.m4: Update.
2733         * gnulib/import/m4/getpagesize.m4: Update.
2734         * gnulib/import/m4/getprogname.m4: Update.
2735         * gnulib/import/m4/gettimeofday.m4: Update.
2736         * gnulib/import/m4/glibc21.m4: Update.
2737         * gnulib/import/m4/glob.m4: Update.
2738         * gnulib/import/m4/glob_h.m4: Update.
2739         * gnulib/import/m4/gnulib-cache.m4: Update.
2740         * gnulib/import/m4/gnulib-common.m4: Update.
2741         * gnulib/import/m4/gnulib-comp.m4: Update.
2742         * gnulib/import/m4/gnulib-tool.m4: Update.
2743         * gnulib/import/m4/hard-locale.m4: Update.
2744         * gnulib/import/m4/include_next.m4: Update.
2745         * gnulib/import/m4/inttypes-pri.m4: Update.
2746         * gnulib/import/m4/inttypes.m4: Update.
2747         * gnulib/import/m4/isnand.m4: Update.
2748         * gnulib/import/m4/isnanl.m4: Update.
2749         * gnulib/import/m4/largefile.m4: Update.
2750         * gnulib/import/m4/limits-h.m4: Update.
2751         * gnulib/import/m4/localcharset.m4: Update.
2752         * gnulib/import/m4/locale-fr.m4: Update.
2753         * gnulib/import/m4/locale-ja.m4: Update.
2754         * gnulib/import/m4/locale-zh.m4: Update.
2755         * gnulib/import/m4/localtime-buffer.m4: Update.
2756         * gnulib/import/m4/longlong.m4: Update.
2757         * gnulib/import/m4/lstat.m4: Update.
2758         * gnulib/import/m4/malloc.m4: Update.
2759         * gnulib/import/m4/malloca.m4: Update.
2760         * gnulib/import/m4/math_h.m4: Update.
2761         * gnulib/import/m4/mbrtowc.m4: Update.
2762         * gnulib/import/m4/mbsinit.m4: Update.
2763         * gnulib/import/m4/mbsrtowcs.m4: Update.
2764         * gnulib/import/m4/mbstate_t.m4: Update.
2765         * gnulib/import/m4/memchr.m4: Update.
2766         * gnulib/import/m4/memmem.m4: Update.
2767         * gnulib/import/m4/mempcpy.m4: Update.
2768         * gnulib/import/m4/memrchr.m4: Update.
2769         * gnulib/import/m4/mkdir.m4: Update.
2770         * gnulib/import/m4/mkstemp.m4: Update.
2771         * gnulib/import/m4/mmap-anon.m4: Update.
2772         * gnulib/import/m4/mode_t.m4: Update.
2773         * gnulib/import/m4/msvc-inval.m4: Update.
2774         * gnulib/import/m4/msvc-nothrow.m4: Update.
2775         * gnulib/import/m4/multiarch.m4: Update.
2776         * gnulib/import/m4/nocrash.m4: Update.
2777         * gnulib/import/m4/off_t.m4: Update.
2778         * gnulib/import/m4/onceonly.m4: Update.
2779         * gnulib/import/m4/open-cloexec.m4: Update.
2780         * gnulib/import/m4/open.m4: Update.
2781         * gnulib/import/m4/openat.m4: Update.
2782         * gnulib/import/m4/opendir.m4: Update.
2783         * gnulib/import/m4/pathmax.m4: Update.
2784         * gnulib/import/m4/rawmemchr.m4: Update.
2785         * gnulib/import/m4/readdir.m4: Update.
2786         * gnulib/import/m4/readlink.m4: Update.
2787         * gnulib/import/m4/realloc.m4: Update.
2788         * gnulib/import/m4/rename.m4: Update.
2789         * gnulib/import/m4/rewinddir.m4: Update.
2790         * gnulib/import/m4/rmdir.m4: Update.
2791         * gnulib/import/m4/save-cwd.m4: Update.
2792         * gnulib/import/m4/secure_getenv.m4: Update.
2793         * gnulib/import/m4/setenv.m4: Update.
2794         * gnulib/import/m4/signal_h.m4: Update.
2795         * gnulib/import/m4/ssize_t.m4: Update.
2796         * gnulib/import/m4/stat-time.m4: Update.
2797         * gnulib/import/m4/stat.m4: Update.
2798         * gnulib/import/m4/std-gnu11.m4: Update.
2799         * gnulib/import/m4/stdbool.m4: Update.
2800         * gnulib/import/m4/stddef_h.m4: Update.
2801         * gnulib/import/m4/stdint.m4: Update.
2802         * gnulib/import/m4/stdio_h.m4: Update.
2803         * gnulib/import/m4/stdlib_h.m4: Update.
2804         * gnulib/import/m4/strchrnul.m4: Update.
2805         * gnulib/import/m4/strdup.m4: Update.
2806         * gnulib/import/m4/strerror.m4: Update.
2807         * gnulib/import/m4/string_h.m4: Update.
2808         * gnulib/import/m4/strstr.m4: Update.
2809         * gnulib/import/m4/strtok_r.m4: Update.
2810         * gnulib/import/m4/sys_socket_h.m4: Update.
2811         * gnulib/import/m4/sys_stat_h.m4: Update.
2812         * gnulib/import/m4/sys_time_h.m4: Update.
2813         * gnulib/import/m4/sys_types_h.m4: Update.
2814         * gnulib/import/m4/tempname.m4: Update.
2815         * gnulib/import/m4/time_h.m4: Update.
2816         * gnulib/import/m4/unistd-safer.m4: Update.
2817         * gnulib/import/m4/unistd_h.m4: Update.
2818         * gnulib/import/m4/warn-on-use.m4: Update.
2819         * gnulib/import/m4/wchar_h.m4: Update.
2820         * gnulib/import/m4/wchar_t.m4: Update.
2821         * gnulib/import/m4/wctype_h.m4: Update.
2822         * gnulib/import/m4/wint_t.m4: Update.
2823         * gnulib/import/malloc.c: Update.
2824         * gnulib/import/malloc/scratch_buffer.h: Update.
2825         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2826         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2827         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2828         * gnulib/import/malloca.c: Update.
2829         * gnulib/import/malloca.h: Update.
2830         * gnulib/import/malloca.valgrind: Update.
2831         * gnulib/import/math.in.h: Update.
2832         * gnulib/import/mbrtowc.c: Update.
2833         * gnulib/import/mbsinit.c: Update.
2834         * gnulib/import/mbsrtowcs-impl.h: Update.
2835         * gnulib/import/mbsrtowcs-state.c: Update.
2836         * gnulib/import/mbsrtowcs.c: Update.
2837         * gnulib/import/memchr.c: Update.
2838         * gnulib/import/memmem.c: Update.
2839         * gnulib/import/mempcpy.c: Update.
2840         * gnulib/import/memrchr.c: Update.
2841         * gnulib/import/mkdir.c: Update.
2842         * gnulib/import/mkstemp.c: Update.
2843         * gnulib/import/msvc-inval.c: Update.
2844         * gnulib/import/msvc-inval.h: Update.
2845         * gnulib/import/msvc-nothrow.c: Update.
2846         * gnulib/import/msvc-nothrow.h: Update.
2847         * gnulib/import/open.c: Update.
2848         * gnulib/import/openat-die.c: Update.
2849         * gnulib/import/openat-priv.h: Update.
2850         * gnulib/import/openat-proc.c: Update.
2851         * gnulib/import/openat.c: Update.
2852         * gnulib/import/openat.h: Update.
2853         * gnulib/import/opendir.c: Update.
2854         * gnulib/import/pathmax.h: Update.
2855         * gnulib/import/pipe-safer.c: Update.
2856         * gnulib/import/rawmemchr.c: Update.
2857         * gnulib/import/readdir.c: Update.
2858         * gnulib/import/readlink.c: Update.
2859         * gnulib/import/realloc.c: Update.
2860         * gnulib/import/ref-add.sin: Update.
2861         * gnulib/import/ref-del.sin: Update.
2862         * gnulib/import/rename.c: Update.
2863         * gnulib/import/rewinddir.c: Update.
2864         * gnulib/import/rmdir.c: Update.
2865         * gnulib/import/same-inode.h: Update.
2866         * gnulib/import/save-cwd.c: Update.
2867         * gnulib/import/save-cwd.h: Update.
2868         * gnulib/import/scratch_buffer.h: Update.
2869         * gnulib/import/secure_getenv.c: Update.
2870         * gnulib/import/setenv.c: Update.
2871         * gnulib/import/signal.in.h: Update.
2872         * gnulib/import/stat-time.c: Update.
2873         * gnulib/import/stat-time.h: Update.
2874         * gnulib/import/stat-w32.c: Update.
2875         * gnulib/import/stat-w32.h: Update.
2876         * gnulib/import/stat.c: Update.
2877         * gnulib/import/stdbool.in.h: Update.
2878         * gnulib/import/stddef.in.h: Update.
2879         * gnulib/import/stdint.in.h: Update.
2880         * gnulib/import/stdio.in.h: Update.
2881         * gnulib/import/stdlib.in.h: Update.
2882         * gnulib/import/str-two-way.h: Update.
2883         * gnulib/import/strchrnul.c: Update.
2884         * gnulib/import/strdup.c: Update.
2885         * gnulib/import/streq.h: Update.
2886         * gnulib/import/strerror-override.c: Update.
2887         * gnulib/import/strerror-override.h: Update.
2888         * gnulib/import/strerror.c: Update.
2889         * gnulib/import/string.in.h: Update.
2890         * gnulib/import/stripslash.c: Update.
2891         * gnulib/import/strnlen1.c: Update.
2892         * gnulib/import/strnlen1.h: Update.
2893         * gnulib/import/strstr.c: Update.
2894         * gnulib/import/strtok_r.c: Update.
2895         * gnulib/import/sys_stat.in.h: Update.
2896         * gnulib/import/sys_time.in.h: Update.
2897         * gnulib/import/sys_types.in.h: Update.
2898         * gnulib/import/tempname.c: Update.
2899         * gnulib/import/tempname.h: Update.
2900         * gnulib/import/time.in.h: Update.
2901         * gnulib/import/unistd--.h: Update.
2902         * gnulib/import/unistd-safer.h: Update.
2903         * gnulib/import/unistd.in.h: Update.
2904         * gnulib/import/unsetenv.c: Update.
2905         * gnulib/import/verify.h: Update.
2906         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2907         * gnulib/import/wchar.in.h: Update.
2908         * gnulib/import/wctype.in.h: Update.
2909         * gnulib/import/xalloc-oversized.h: Update.
2910         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2911         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2912
2913 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2914
2915         * record-btrace.c (get_thread_current_frame): Remove
2916         old_inferior_ptid.
2917
2918 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2919
2920         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2921         with check_tag to 1 if and only if the type is tagged and the
2922         component being searched cannot been found in the current
2923         view. Otherwise, always call ada_to_fixed_type with
2924         check_tag to 0.
2925
2926 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2927
2928         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2929         declaration.
2930         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2931         * ada-varobj.c (ada_varobj_get_number_of_children,
2932         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2933
2934 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2935
2936         * ada-valprint.c (ada_value_print): Use type instead of
2937         enclosing type.
2938
2939 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2940
2941         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2942         an array of access to unconstrained array.
2943
2944 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2945
2946         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2947         (ada_check_typedef): Use it.
2948
2949 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2950
2951         * ada-varobj.c (ada_varobj_describe_struct_child)
2952         (ada_varobj_describe_child): Handle union case like struct one.
2953
2954 2018-09-10  Tom Tromey  <tom@tromey.com>
2955
2956         PR python/18380:
2957         * python/python.c (_initialize_python): Make example in "python"
2958         help work in Python 3.
2959
2960 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2961
2962         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2963         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2964         $(EXEEXT) to the script, as it is not a program.
2965
2966 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2967
2968         * python/py-prettyprint.c (pretty_print_one_value): Return
2969         gdbpy_ref<>.
2970         (print_string_repr): Adjust.
2971         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2972         * python/python-internal.h (apply_varobj_pretty_printer): Return
2973         gdbpy_ref<>.
2974         * varobj.c (varobj_value_get_print_value): Adjust.
2975
2976 2018-09-08  Tom Tromey  <tom@tromey.com>
2977
2978         PR python/16047:
2979         * python/py-prettyprint.c (pretty_print_one_value): Check for
2980         to_string method.
2981
2982 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2983
2984         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2985         replace_operator_with_call.
2986
2987 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2988
2989         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2990
2991 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2992
2993         * ada-typeprint.c (print_range): Print the bounds using TYPE
2994         rather than its TYPE_TARGET_TYPE.
2995
2996 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2997
2998         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2999         call to ada_to_fixed_value_create.
3000
3001 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3002
3003         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3004
3005 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3006
3007         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3008         by calls to error.
3009
3010 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3011
3012         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3013         Move update of loop variable "fi".
3014
3015 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3016
3017         * ada-lang.c (value_assign_to_component): In the case of
3018         big-endian targets, extract the bits of the given VAL
3019         using an src_offset of zero if container is not a scalar.
3020
3021 2018-09-06  Simon Ser  <contact@emersion.fr>
3022
3023         PR gdb/23105
3024         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3025         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3026         * fbsd-tdep.c (fbsd_make_note_desc): New.
3027         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3028         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3029         * target.h (enum target_object) Add FreeBSD-specific
3030         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3031
3032 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3033
3034         * compile/compile-c.h (generate_c_for_variable_locations):
3035         Change reference to pointer.
3036         * compile/compile-c-support.c (compile_program) <compute>:
3037         Likewise.
3038         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3039         (generate_c_for_for_one_variable): Likewise
3040         (generate_c_for_variable_locations): Likewise
3041         * compile/compile-c-types.c (compile_c_instance::convert_type):
3042         Likewise
3043         * compile/compile-cplus-symbols.c (convert_one_symbol):
3044         std::move the scope passed to enter_scope.
3045         * compile/compile-cplus-types.c
3046         (compile_cplus_instance::enter_scope): Make parameter
3047         rvalue-reference.
3048         (compile_cplus_instance::new_scope): Change reference to
3049         pointer.
3050         (compile_cplus_instance::convert_type): Likewise
3051         (compile_cplus_convert_typedef): std::move the scope passed to
3052         enter_scope.
3053         (compile_cplus_convert_struct_or_union): Likewise.
3054         (compile_cplus_convert_enum): Likewise.
3055         (compile_cplus_convert_namespace): Likewise.
3056         * compile/compile-cplus.h (compile_cplus_instance)
3057         <enter_scope>: Make parameter rvalue-reference.
3058         * compile/compile-internal.h (compile_instance)
3059         <get_cached_type>: Likewise
3060         * compile/compile-loc2c.c (push): Likewise
3061         (pushf): Likewise
3062         (unary): Likewise
3063         (binary): Likewise
3064         (print_label): Likewise
3065         (pushf_register_address): Likewise
3066         (pushf_register): Likewise
3067         (do_compile_dwarf_expr_to_c): Likewise
3068         (compile_dwarf_expr_to_c): Likewise
3069         (compile_dwarf_bounds_to_c): Likewise
3070         * compile/compile.c (compile_instance::get_cached_type):
3071         Likewise
3072         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3073         (compile_dwarf_bounds_to_c): Likewise
3074         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3075         (dwarf2_compile_property_to_c): Likewise
3076         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3077         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3078         Likewise
3079
3080 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3081
3082         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3083         * tui/tui-data.c (init_content_element): Don't initialize it.
3084
3085 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3086
3087         * tui/tui-data.h (struct tui_win_info)
3088         <detail::opaque>: Remove.
3089         * tui/tui-data.c (init_win_info): Remove assignment.
3090
3091 2018-09-05  Tom Tromey  <tom@tromey.com>
3092
3093         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3094         -Wformat-nonliteral.
3095         * target-float.c (host_float_ops<T>::to_string)
3096         (host_float_ops<T>::from_string): Use
3097         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3098         * configure: Rebuild.
3099
3100 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3101
3102         * printcmd.c (printf_c_string): Use
3103         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3104         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3105
3106 2018-09-05  Tom Tromey  <tom@tromey.com>
3107
3108         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3109
3110 2018-09-05  Tom de Vries  <tdevries@suse.de>
3111
3112         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3113         with resolve_abstract_p == true.
3114         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3115         defaulting to false. Propagate resolve_abstract_p to
3116         dwarf2_fetch_die_loc_sect_off.
3117         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3118         parameter, defaulting to false.
3119         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3120         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3121         parameter.
3122         * dwarf2read.h (struct die_info): Forward-declare.
3123         (die_info_ptr): New typedef.
3124         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3125
3126 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3127
3128         GDB 8.2 released.
3129
3130 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3131             Pedro Alves  <palves@redhat.com>
3132
3133         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3134         "aclocal-m4-deps.mk".  Include file here.
3135         $(srcdir)/aclocal.m4: Add "configure.ac".
3136         * gnulib/aclocal-m4-deps.mk: New file.
3137         * gnulib/update-gnulib.sh: Automatically update
3138         "aclocal-m4-deps.mk".
3139
3140 2018-09-04  Tom Tromey  <tom@tromey.com>
3141
3142         * configure: Rebuild.
3143         * configure.ac: Remove multi-ice code.
3144
3145 2018-09-04  Tom Tromey  <tom@tromey.com>
3146
3147         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3148         (ada-exp.o): Update.
3149
3150 2018-09-04  Tom Tromey  <tom@tromey.com>
3151
3152         * Makefile.in (printcmd.o, target-float.o): Remove.
3153         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3154
3155 2018-09-04  Tom Tromey  <tom@tromey.com>
3156
3157         * gnulib/Makefile.in: Remove obsolete comment.
3158         * Makefile.in: Remove obsolete comment.
3159
3160 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3161
3162         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3163         line with '+'.
3164
3165 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3166
3167         * riscv-tdep.c: Add 'prologue-value.h' include.
3168         (struct riscv_unwind_cache): New struct.
3169         (riscv_debug_unwinder): New global.
3170         (riscv_scan_prologue): Update arguments, capture register details
3171         from prologue scan.
3172         (riscv_skip_prologue): Reformat arguments line, move end of
3173         prologue calculation into riscv_scan_prologue.
3174         (riscv_frame_cache): Update return type, create
3175         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3176         details.
3177         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3178         (riscv_frame_prev_register): Use the trad_frame within the
3179         riscv_unwind_cache.
3180         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3181         flag.
3182
3183 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3184
3185         * trad-frame.h (trad_frame_set_realreg): Declare.
3186         (trad_frame_set_addr): Declare.
3187         * trad-frame.c (trad_frame_set_realreg): Define new function.
3188         (trad_frame_set_addr): Define new function.
3189         (trad_frame_set_reg_realreg): Use new function.
3190         (trad_frame_set_reg_addr): Use new function.
3191
3192 2018-09-01  Keith Seitz  <keiths@redhat.com>
3193
3194         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3195         pulongest instead of "%lld".
3196         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3197         ATTRIBUTE_UNUSED.
3198
3199 2018-08-31  Tom Tromey  <tom@tromey.com>
3200
3201         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3202         variant part type.
3203
3204 2018-08-31  Pedro Alves  <palves@redhat.com>
3205
3206         * gdbarch.h: Regenerate.
3207
3208 2018-08-31  Pedro Alves  <palves@redhat.com>
3209
3210         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3211         * target.h (Hardware watchpoint interfaces): Describe
3212         continuable/steppable/non-steppable watchpoints.
3213         * gdbarch.h, gdbarch.c: Regenerate.
3214
3215 2018-08-31  Pedro Alves  <palves@redhat.com>
3216
3217         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3218         Delete.
3219         * s390-linux-nat.c
3220         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3221         * target.h (target_ops::have_continuable_watchpoint): Delete.
3222         (target_have_continuable_watchpoint): Delete.
3223         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3224         * target-delegates.c: Regenerate.
3225
3226 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3227
3228         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3229         the files present in "gnulib/import/m4/".
3230
3231 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3232
3233         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3234         c.sw, c.swsp, and c.sdsp.
3235
3236 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3237
3238         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3239         (riscv_read_misa_reg): Don't cache value read into inferior data.
3240         (riscv_new_inferior_data): Delete.
3241         (riscv_inferior_data_cleanup): Delete.
3242         (riscv_inferior_data): Delete.
3243         (riscv_invalidate_inferior_data): Delete.
3244         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3245
3246 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3247
3248         * compile/compile-cplus-types.c
3249         (compile_cplus_instance::leave_scope): Take the address of scope
3250         object.
3251         (compile_cplus_instance::convert_qualified_base): Compare quals
3252         to 0.
3253
3254 2018-08-30  Keith Seitz  <keiths@redhat.com>
3255
3256         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3257         Use "%s" and host_address_to_string instead of "%p" in printf.
3258
3259 2018-08-29  Keith Seitz  <keiths@redhat.com>
3260
3261         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3262         and compile-cplus-types.c.
3263         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3264         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3265         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3266         Declare.
3267         * compile/compile-c-support.c: Include compile-cplus.h.
3268         (load_libcompile): Templatize.
3269         (get_compile_context): "New" function.
3270         (c_get_compile_context): Use get_compile_context.
3271         (cplus_get_compile_context): New function.
3272         (cplus_push_user_expression, cplus_pop_user_expression)
3273         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3274         (cplus_compute_program): Define new structs/functions.
3275         * compile/compile-cplus-symmbols.c: New file.
3276         * compile/compile-cplus-types.c: New file.
3277         * compile/compile-cplus.h: New file.
3278         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3279         Declare.
3280         * compile/compile-object-load.c (get_out_value_type): Use
3281         strncmp_iw when comparing symbol names.
3282         (compile_object_load): Add mst_bss and mst_data.
3283         * compile/compile.c (_initialize_compile): Remove
3284         -Wno-implicit-function-declaration from `compile_args'.
3285         * compile/gcc-cp-plugin.h: New file.
3286         * NEWS: Mention C++ compile support and new debug options.
3287
3288 2018-08-29  Keith Seitz  <keiths@redhat.com>
3289
3290         * linespec.c (collect_info::add_symbol): Make virtual.
3291         (struct symbol_searcher_collect_info): New struct.
3292         (symbol_searcher::find_all_symbols): New method.
3293         * symtab.h (class symbol_searcher): New class.
3294
3295 2018-08-29  Keith Seitz  <keiths@redhat.com>
3296
3297         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3298         Change to vector of block_symbol.  Update all users.
3299         (struct collect_info) <symbols>: Likewise.
3300         (collect_info::add_symbol): Take block_symbol as argument.
3301         Update all callers.
3302         (decode_compound_collector) <m_symbols>: Change type to vector
3303         of block_symbol.  Update all users.
3304         (decode_compound_collector::operator ()): Change parameter type
3305         to block_symbol.
3306         (find_method, find_function_symbols, find_linespec_symbols)
3307         (find_label_symbols_in_block, find_label_symbols): Change symbol
3308         vectors to block_symbol vectors.
3309         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3310         block_symbol.
3311
3312 2018-08-29  Keith Seitz  <keiths@redhat.com>
3313
3314         * linespec.c (symbolp): Remove typedef and VEC definitions.
3315         (bound_minimal_symbol_d): Likewise.
3316
3317 2018-08-29  Keith Seitz  <keiths@redhat.com>
3318
3319         * linespec.c (decode_compound_collector::decode_compound_collector):
3320         Remove initialization for `m_symtabs'.
3321         (decode_compound_collector::release_symbols): Change return type
3322         to std::vector.  Update all callers.
3323         (class decode_compound_collector) <m_symbols>: Change type to
3324         std::vector.
3325         (lookup_prefix_sym): Change return type to std::vector.  Update all
3326         callers.
3327         (compare_symbols): Remove.
3328         (std_compare_symbols): Rename to `compare_symbols'.
3329         (find_method): Change `sym_classes' parameter to std::vector.
3330         Update all callers.  Use std::sort to sort sym_classes.
3331         (find_linespec_symbols): Remove cleanup.
3332
3333 2018-08-29  Keith Seitz  <keiths@redhat.com>
3334
3335         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3336         std::vector.  Update all users.
3337         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3338         (struct collect_info) <minimal_symbols>: Likewise.
3339         (compare_msymbols): Return bool.  Change parameters to const
3340         bound_minimal_symbol references.
3341         (find_method, find_function_symbols, find_linespec_symbols): Change
3342         `minsyms' parameter to std::vector.  Update all callers.
3343
3344 2018-08-29  Keith Seitz  <keiths@redhat.com>
3345
3346         * linespec.c (struct linespec) <label_symbols>: Change type to
3347         std::vector.  Update all users.
3348         (find_label_symbols_in_block): Change `result' parameter to
3349         std::vector.  Update all callers.
3350         (find_label_symbols): Return std::vector.  Update all callers.
3351
3352 2018-08-29  Keith Seitz  <keiths@redhat.com>
3353
3354         * linespec.c (struct linespec) <function_symbols>: Change type to
3355         std::vector.  Update all users.
3356         (struct collect_info) <function_symbols>: Likewise.
3357         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3358         (std_compare_symbols): New function.
3359         (find_method, find_function_symbols, find_linespec_symbols)
3360         (find_label_symbols_in_block): Change `symbols' parameter to
3361         std::vector.  Update all callers.
3362         (find_label_symbols): Likewise for `function_symbols' and
3363         `label_funcs_ret'.
3364
3365 2018-08-29  Keith Seitz  <keiths@redhat.com>
3366
3367         * linespec.c (symtab_vector_up): Define.
3368         (struct linespec) <file_symtabs>: Change type to std::vector *.
3369         Update all uses.
3370         (struct collect_info) <file_symtabs>: Likewise.
3371         (collect_symtabs_from_filename): Return symtab_vector_up.
3372         Update all callers.
3373         (decode_objc): Remove cleanup.
3374         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3375         (symtab_collector::release_symtabs): Return symtab_vector_up.
3376         Update all callers.
3377         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3378         Update all users.
3379         (collect_symtabs_from_filename, symtabs_from_filename): Return
3380         symtab_vector_up.  Update all callers.
3381
3382 2018-08-29  Tom Tromey  <tom@tromey.com>
3383
3384         * csky-tdep.c (csky_analyze_prologue): Use
3385         core_addr_to_string_nz.
3386
3387 2018-08-29  Tom Tromey  <tom@tromey.com>
3388
3389         * windows-nat.c (struct xlate_exception) <them>: Change type to
3390         DWORD.
3391         (xlate): Fix formatting.  Remove last entry.
3392         (struct xlate_exception, xlate): Comment out.
3393         (windows_nat_target::resume): Use ranged for.
3394
3395 2018-08-29  Jim Wilson  <jimw@sifive.com>
3396
3397         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3398         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3399         of NT_PRFPREG.
3400         (riscv_linux_nat_target::store_registers): Likewise.
3401
3402 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3403
3404         PR gdb/23555
3405         PR gdb/23558
3406         * gnulib/aclocal.m4: Regenerate.
3407         * gnulib/config.in: Regenerate.
3408         * gnulib/configure: Regenerate.
3409         * gnulib/import/Makefile.am: Update.
3410         * gnulib/import/Makefile.in: Update.
3411         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3412         * gnulib/import/_Noreturn.h: ... this.
3413         * gnulib/import/alloca.in.h: Update.
3414         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3415         * gnulib/import/arg-nonnull.h: ... this.
3416         * gnulib/import/assure.h: Update.
3417         * gnulib/import/at-func.c: Update.
3418         * gnulib/import/basename-lgpl.c: Update.
3419         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3420         * gnulib/import/c++defs.h: ... this.
3421         * gnulib/import/canonicalize-lgpl.c: Update.
3422         * gnulib/import/cdefs.h: Update.
3423         * gnulib/import/chdir-long.c: Update.
3424         * gnulib/import/chdir-long.h: Update.
3425         * gnulib/import/cloexec.c: Update.
3426         * gnulib/import/cloexec.h: Update.
3427         * gnulib/import/close.c: Update.
3428         * gnulib/import/closedir.c: Update.
3429         * gnulib/import/config.charset: Update.
3430         * gnulib/import/dirent-private.h: Update.
3431         * gnulib/import/dirent.in.h: Update.
3432         * gnulib/import/dirfd.c: Update.
3433         * gnulib/import/dirname-lgpl.c: Update.
3434         * gnulib/import/dirname.h: Update.
3435         * gnulib/import/dosname.h: Update.
3436         * gnulib/import/dup-safer-flag.c: Update.
3437         * gnulib/import/dup-safer.c: Update.
3438         * gnulib/import/dup.c: Update.
3439         * gnulib/import/dup2.c: Update.
3440         * gnulib/import/errno.in.h: Update.
3441         * gnulib/import/error.c: Update.
3442         * gnulib/import/error.h: Update.
3443         * gnulib/import/exitfail.c: Update.
3444         * gnulib/import/exitfail.h: Update.
3445         * gnulib/import/extra/update-copyright: Update.
3446         * gnulib/import/fchdir.c: Update.
3447         * gnulib/import/fcntl.c: Update.
3448         * gnulib/import/fcntl.in.h: Update.
3449         * gnulib/import/fd-hook.c: Update.
3450         * gnulib/import/fd-hook.h: Update.
3451         * gnulib/import/fd-safer-flag.c: Update.
3452         * gnulib/import/fd-safer.c: Update.
3453         * gnulib/import/fdopendir.c: Update.
3454         * gnulib/import/filename.h: Update.
3455         * gnulib/import/filenamecat-lgpl.c: Update.
3456         * gnulib/import/filenamecat.h: Update.
3457         * gnulib/import/flexmember.h: Update.
3458         * gnulib/import/float+.h: Update.
3459         * gnulib/import/float.c: Update.
3460         * gnulib/import/float.in.h: Update.
3461         * gnulib/import/fnmatch.c: Update.
3462         * gnulib/import/fnmatch.in.h: Update.
3463         * gnulib/import/fnmatch_loop.c: Update.
3464         * gnulib/import/fpucw.h: Update.
3465         * gnulib/import/frexp.c: Update.
3466         * gnulib/import/frexpl.c: Update.
3467         * gnulib/import/fstat.c: Update.
3468         * gnulib/import/fstatat.c: Update.
3469         * gnulib/import/getcwd-lgpl.c: Update.
3470         * gnulib/import/getcwd.c: Update.
3471         * gnulib/import/getdtablesize.c: Update.
3472         * gnulib/import/getlogin_r.c: Update.
3473         * gnulib/import/getprogname.c: Update.
3474         * gnulib/import/getprogname.h: Update.
3475         * gnulib/import/gettext.h: Update.
3476         * gnulib/import/gettimeofday.c: Update.
3477         * gnulib/import/glob-libc.h: Update.
3478         * gnulib/import/glob.c: Update.
3479         * gnulib/import/glob.in.h: Update.
3480         * gnulib/import/glob_internal.h: Update.
3481         * gnulib/import/glob_pattern_p.c: Update.
3482         * gnulib/import/globfree.c: Update.
3483         * gnulib/import/hard-locale.c: Update.
3484         * gnulib/import/hard-locale.h: Update.
3485         * gnulib/import/intprops.h: Update.
3486         * gnulib/import/inttypes.in.h: Update.
3487         * gnulib/import/isnan.c: Update.
3488         * gnulib/import/isnand-nolibm.h: Update.
3489         * gnulib/import/isnand.c: Update.
3490         * gnulib/import/isnanl-nolibm.h: Update.
3491         * gnulib/import/isnanl.c: Update.
3492         * gnulib/import/itold.c: Update.
3493         * gnulib/import/libc-config.h: Update.
3494         * gnulib/import/limits.in.h: Update.
3495         * gnulib/import/localcharset.c: Update.
3496         * gnulib/import/localcharset.h: Update.
3497         * gnulib/import/localtime-buffer.c: Update.
3498         * gnulib/import/localtime-buffer.h: Update.
3499         * gnulib/import/lstat.c: Update.
3500         * gnulib/import/m4/00gnulib.m4: Update.
3501         * gnulib/import/m4/__inline.m4: Update.
3502         * gnulib/import/m4/absolute-header.m4: Update.
3503         * gnulib/import/m4/alloca.m4: Update.
3504         * gnulib/import/m4/builtin-expect.m4: Update.
3505         * gnulib/import/m4/canonicalize.m4: Update.
3506         * gnulib/import/m4/chdir-long.m4: Update.
3507         * gnulib/import/m4/close.m4: Update.
3508         * gnulib/import/m4/closedir.m4: Update.
3509         * gnulib/import/m4/configmake.m4: Update.
3510         * gnulib/import/m4/d-ino.m4: Update.
3511         * gnulib/import/m4/d-type.m4: Update.
3512         * gnulib/import/m4/dirent_h.m4: Update.
3513         * gnulib/import/m4/dirfd.m4: Update.
3514         * gnulib/import/m4/dirname.m4: Update.
3515         * gnulib/import/m4/double-slash-root.m4: Update.
3516         * gnulib/import/m4/dup.m4: Update.
3517         * gnulib/import/m4/dup2.m4: Update.
3518         * gnulib/import/m4/eealloc.m4: Update.
3519         * gnulib/import/m4/environ.m4: Update.
3520         * gnulib/import/m4/errno_h.m4: Update.
3521         * gnulib/import/m4/error.m4: Update.
3522         * gnulib/import/m4/exponentd.m4: Update.
3523         * gnulib/import/m4/exponentl.m4: Update.
3524         * gnulib/import/m4/extensions.m4: Update.
3525         * gnulib/import/m4/extern-inline.m4: Update.
3526         * gnulib/import/m4/fchdir.m4: Update.
3527         * gnulib/import/m4/fcntl-o.m4: Update.
3528         * gnulib/import/m4/fcntl.m4: Update.
3529         * gnulib/import/m4/fcntl_h.m4: Update.
3530         * gnulib/import/m4/fdopendir.m4: Update.
3531         * gnulib/import/m4/filenamecat.m4: Update.
3532         * gnulib/import/m4/flexmember.m4: Update.
3533         * gnulib/import/m4/float_h.m4: Update.
3534         * gnulib/import/m4/fnmatch.m4: Update.
3535         * gnulib/import/m4/fnmatch_h.m4: Update.
3536         * gnulib/import/m4/fpieee.m4: Update.
3537         * gnulib/import/m4/frexp.m4: Update.
3538         * gnulib/import/m4/frexpl.m4: Update.
3539         * gnulib/import/m4/fstat.m4: Update.
3540         * gnulib/import/m4/fstatat.m4: Update.
3541         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3542         * gnulib/import/m4/getcwd-path-max.m4: Update.
3543         * gnulib/import/m4/getcwd.m4: Update.
3544         * gnulib/import/m4/getdtablesize.m4: Update.
3545         * gnulib/import/m4/getlogin.m4: Update.
3546         * gnulib/import/m4/getlogin_r.m4: Update.
3547         * gnulib/import/m4/getpagesize.m4: Update.
3548         * gnulib/import/m4/getprogname.m4: Update.
3549         * gnulib/import/m4/gettimeofday.m4: Update.
3550         * gnulib/import/m4/glibc21.m4: Update.
3551         * gnulib/import/m4/glob.m4: Update.
3552         * gnulib/import/m4/glob_h.m4: Update.
3553         * gnulib/import/m4/gnulib-cache.m4: Update.
3554         * gnulib/import/m4/gnulib-common.m4: Update.
3555         * gnulib/import/m4/gnulib-comp.m4: Update.
3556         * gnulib/import/m4/gnulib-tool.m4: Update.
3557         * gnulib/import/m4/hard-locale.m4: Update.
3558         * gnulib/import/m4/include_next.m4: Update.
3559         * gnulib/import/m4/inttypes-pri.m4: Update.
3560         * gnulib/import/m4/inttypes.m4: Update.
3561         * gnulib/import/m4/isnand.m4: Update.
3562         * gnulib/import/m4/isnanl.m4: Update.
3563         * gnulib/import/m4/largefile.m4: Update.
3564         * gnulib/import/m4/limits-h.m4: Update.
3565         * gnulib/import/m4/localcharset.m4: Update.
3566         * gnulib/import/m4/locale-fr.m4: Update.
3567         * gnulib/import/m4/locale-ja.m4: Update.
3568         * gnulib/import/m4/locale-zh.m4: Update.
3569         * gnulib/import/m4/localtime-buffer.m4: Update.
3570         * gnulib/import/m4/longlong.m4: Update.
3571         * gnulib/import/m4/lstat.m4: Update.
3572         * gnulib/import/m4/malloc.m4: Update.
3573         * gnulib/import/m4/malloca.m4: Update.
3574         * gnulib/import/m4/math_h.m4: Update.
3575         * gnulib/import/m4/mbrtowc.m4: Update.
3576         * gnulib/import/m4/mbsinit.m4: Update.
3577         * gnulib/import/m4/mbsrtowcs.m4: Update.
3578         * gnulib/import/m4/mbstate_t.m4: Update.
3579         * gnulib/import/m4/memchr.m4: Update.
3580         * gnulib/import/m4/memmem.m4: Update.
3581         * gnulib/import/m4/mempcpy.m4: Update.
3582         * gnulib/import/m4/memrchr.m4: Update.
3583         * gnulib/import/m4/mkdir.m4: Update.
3584         * gnulib/import/m4/mkstemp.m4: Update.
3585         * gnulib/import/m4/mmap-anon.m4: Update.
3586         * gnulib/import/m4/mode_t.m4: Update.
3587         * gnulib/import/m4/msvc-inval.m4: Update.
3588         * gnulib/import/m4/msvc-nothrow.m4: Update.
3589         * gnulib/import/m4/multiarch.m4: Update.
3590         * gnulib/import/m4/nocrash.m4: Update.
3591         * gnulib/import/m4/off_t.m4: Update.
3592         * gnulib/import/m4/onceonly.m4: Update.
3593         * gnulib/import/m4/open-cloexec.m4: Update.
3594         * gnulib/import/m4/open.m4: Update.
3595         * gnulib/import/m4/openat.m4: Update.
3596         * gnulib/import/m4/opendir.m4: Update.
3597         * gnulib/import/m4/pathmax.m4: Update.
3598         * gnulib/import/m4/rawmemchr.m4: Update.
3599         * gnulib/import/m4/readdir.m4: Update.
3600         * gnulib/import/m4/readlink.m4: Update.
3601         * gnulib/import/m4/realloc.m4: Update.
3602         * gnulib/import/m4/rename.m4: Update.
3603         * gnulib/import/m4/rewinddir.m4: Update.
3604         * gnulib/import/m4/rmdir.m4: Update.
3605         * gnulib/import/m4/save-cwd.m4: Update.
3606         * gnulib/import/m4/secure_getenv.m4: Update.
3607         * gnulib/import/m4/setenv.m4: Update.
3608         * gnulib/import/m4/signal_h.m4: Update.
3609         * gnulib/import/m4/ssize_t.m4: Update.
3610         * gnulib/import/m4/stat-time.m4: Update.
3611         * gnulib/import/m4/stat.m4: Update.
3612         * gnulib/import/m4/std-gnu11.m4: Update.
3613         * gnulib/import/m4/stdbool.m4: Update.
3614         * gnulib/import/m4/stddef_h.m4: Update.
3615         * gnulib/import/m4/stdint.m4: Update.
3616         * gnulib/import/m4/stdio_h.m4: Update.
3617         * gnulib/import/m4/stdlib_h.m4: Update.
3618         * gnulib/import/m4/strchrnul.m4: Update.
3619         * gnulib/import/m4/strdup.m4: Update.
3620         * gnulib/import/m4/strerror.m4: Update.
3621         * gnulib/import/m4/string_h.m4: Update.
3622         * gnulib/import/m4/strstr.m4: Update.
3623         * gnulib/import/m4/strtok_r.m4: Update.
3624         * gnulib/import/m4/sys_socket_h.m4: Update.
3625         * gnulib/import/m4/sys_stat_h.m4: Update.
3626         * gnulib/import/m4/sys_time_h.m4: Update.
3627         * gnulib/import/m4/sys_types_h.m4: Update.
3628         * gnulib/import/m4/tempname.m4: Update.
3629         * gnulib/import/m4/time_h.m4: Update.
3630         * gnulib/import/m4/unistd-safer.m4: Update.
3631         * gnulib/import/m4/unistd_h.m4: Update.
3632         * gnulib/import/m4/warn-on-use.m4: Update.
3633         * gnulib/import/m4/wchar_h.m4: Update.
3634         * gnulib/import/m4/wchar_t.m4: Update.
3635         * gnulib/import/m4/wctype_h.m4: Update.
3636         * gnulib/import/m4/wint_t.m4: Update.
3637         * gnulib/import/malloc.c: Update.
3638         * gnulib/import/malloc/scratch_buffer.h: Update.
3639         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3640         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3641         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3642         * gnulib/import/malloca.c: Update.
3643         * gnulib/import/malloca.h: Update.
3644         * gnulib/import/malloca.valgrind: Update.
3645         * gnulib/import/math.in.h: Update.
3646         * gnulib/import/mbrtowc.c: Update.
3647         * gnulib/import/mbsinit.c: Update.
3648         * gnulib/import/mbsrtowcs-impl.h: Update.
3649         * gnulib/import/mbsrtowcs-state.c: Update.
3650         * gnulib/import/mbsrtowcs.c: Update.
3651         * gnulib/import/memchr.c: Update.
3652         * gnulib/import/memmem.c: Update.
3653         * gnulib/import/mempcpy.c: Update.
3654         * gnulib/import/memrchr.c: Update.
3655         * gnulib/import/mkdir.c: Update.
3656         * gnulib/import/mkstemp.c: Update.
3657         * gnulib/import/msvc-inval.c: Update.
3658         * gnulib/import/msvc-inval.h: Update.
3659         * gnulib/import/msvc-nothrow.c: Update.
3660         * gnulib/import/msvc-nothrow.h: Update.
3661         * gnulib/import/open.c: Update.
3662         * gnulib/import/openat-die.c: Update.
3663         * gnulib/import/openat-priv.h: Update.
3664         * gnulib/import/openat-proc.c: Update.
3665         * gnulib/import/openat.c: Update.
3666         * gnulib/import/openat.h: Update.
3667         * gnulib/import/opendir.c: Update.
3668         * gnulib/import/pathmax.h: Update.
3669         * gnulib/import/pipe-safer.c: Update.
3670         * gnulib/import/rawmemchr.c: Update.
3671         * gnulib/import/readdir.c: Update.
3672         * gnulib/import/readlink.c: Update.
3673         * gnulib/import/realloc.c: Update.
3674         * gnulib/import/ref-add.sin: Update.
3675         * gnulib/import/ref-del.sin: Update.
3676         * gnulib/import/rename.c: Update.
3677         * gnulib/import/rewinddir.c: Update.
3678         * gnulib/import/rmdir.c: Update.
3679         * gnulib/import/same-inode.h: Update.
3680         * gnulib/import/save-cwd.c: Update.
3681         * gnulib/import/save-cwd.h: Update.
3682         * gnulib/import/scratch_buffer.h: Update.
3683         * gnulib/import/secure_getenv.c: Update.
3684         * gnulib/import/setenv.c: Update.
3685         * gnulib/import/signal.in.h: Update.
3686         * gnulib/import/stat-time.c: Update.
3687         * gnulib/import/stat-time.h: Update.
3688         * gnulib/import/stat-w32.c: Update.
3689         * gnulib/import/stat-w32.h: Update.
3690         * gnulib/import/stat.c: Update.
3691         * gnulib/import/stdbool.in.h: Update.
3692         * gnulib/import/stddef.in.h: Update.
3693         * gnulib/import/stdint.in.h: Update.
3694         * gnulib/import/stdio.in.h: Update.
3695         * gnulib/import/stdlib.in.h: Update.
3696         * gnulib/import/str-two-way.h: Update.
3697         * gnulib/import/strchrnul.c: Update.
3698         * gnulib/import/strdup.c: Update.
3699         * gnulib/import/streq.h: Update.
3700         * gnulib/import/strerror-override.c: Update.
3701         * gnulib/import/strerror-override.h: Update.
3702         * gnulib/import/strerror.c: Update.
3703         * gnulib/import/string.in.h: Update.
3704         * gnulib/import/stripslash.c: Update.
3705         * gnulib/import/strnlen1.c: Update.
3706         * gnulib/import/strnlen1.h: Update.
3707         * gnulib/import/strstr.c: Update.
3708         * gnulib/import/strtok_r.c: Update.
3709         * gnulib/import/sys_stat.in.h: Update.
3710         * gnulib/import/sys_time.in.h: Update.
3711         * gnulib/import/sys_types.in.h: Update.
3712         * gnulib/import/tempname.c: Update.
3713         * gnulib/import/tempname.h: Update.
3714         * gnulib/import/time.in.h: Update.
3715         * gnulib/import/unistd--.h: Update.
3716         * gnulib/import/unistd-safer.h: Update.
3717         * gnulib/import/unistd.in.h: Update.
3718         * gnulib/import/unsetenv.c: Update.
3719         * gnulib/import/verify.h: Update.
3720         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3721         * gnulib/import/wchar.in.h: Update.
3722         * gnulib/import/wctype.in.h: Update.
3723         * gnulib/import/xalloc-oversized.h: Update.
3724         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3725         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3726
3727 2018-08-16  Gary Benson <gbenson@redhat.com>
3728
3729         PR gdb/13000:
3730         * gdb/main.c (captured_main_1): Exit with nonzero status
3731         in batch mode if the last command to be executed failed.
3732         * NEWS: Mention the above.
3733
3734 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3735
3736         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3737         end of warning message.
3738
3739 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3740
3741         PR gdb/22943:
3742         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3743         (aarch64_extract_return_value): Use
3744         aapcs_is_vfp_call_or_return_candidate.
3745         (aarch64_return_in_memory): Likewise.
3746         (aarch64_store_return_value): Likewise.
3747
3748 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3749
3750         * aarch64-tdep.c
3751         (aapcs_is_vfp_call_or_return_candidate): Make static
3752         (pass_in_v_or_stack): Remove function.
3753         (pass_in_v_vfp_candidate): New function.
3754         (aarch64_push_dummy_call): Check for float register candidates.
3755
3756 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3757
3758         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3759         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3760         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3761
3762 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3763
3764         PR build/23399
3765         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3766         (struct ipa_sym_addresses): Rename to...
3767         (struct ipa_sym_addresses_common): ... this.
3768         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3769
3770 2018-08-28  Tom Tromey  <tom@tromey.com>
3771
3772         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3773         (token_fifo): Now a std::vector.
3774         (yylex, c_parse): Update.
3775         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3776         (token_fifo): Now a std::vector.
3777         (yylex, d_parse): Update.
3778         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3779         (token_fifo): Now a std::vector.
3780         (yylex, go_parse): Update.
3781
3782 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3783
3784         * parser-defs.h (struct type_stack) <elements>: Change type to
3785         std::vector<union type_stack_elt>.
3786         <depth, size>: Remove.
3787         * parse.c (parse_exp_in_context_1): Adjust.
3788         (type_stack_reserve): Remove.
3789         (check_type_stack_depth): Remove.
3790         (insert_into_type_stack): Adjust to std::vector.
3791         (insert_type): Likewise.
3792         (push_type): Likewise.
3793         (push_type_int): Likewise.
3794         (insert_type_address_space): Likewise.
3795         (pop_type): Likewise.
3796         (pop_type_int): Likewise.
3797         (pop_typelist): Likewise.
3798         (pop_type_stack): Likewise.
3799         (append_type_stack): Likewise.
3800         (push_type_stack): Likewise.
3801         (get_type_stack): Likewise.
3802         (type_stack_cleanup): Likewise.
3803         (push_typelist): Likewise.
3804         (follow_types): Likewise.
3805         (_initialize_parse): Likewise.
3806
3807 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3808
3809         * NEWS: Mention csky target.
3810
3811 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3812             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3813             Don Breazeal  <donb@codesourcery.com>
3814
3815         * csky-linux-tdep.c: New file.
3816         * csky-tdep.c: Likewise.
3817         * csky-tdep.h: Likewise.
3818         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3819         csky-tdep.o.
3820         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3821         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3822         * configure.tgt: Add csky support.
3823
3824 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3825
3826         * python/py-framefilter.c (py_print_frame): Print frame architecture
3827         when printing on an MI output.
3828
3829 2018-08-27  Tom Tromey  <tom@tromey.com>
3830
3831         PR build/23087:
3832         * configure: Rebuild.
3833         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3834
3835 2018-08-27  Tom Tromey  <tom@tromey.com>
3836
3837         * aarch64-linux-tdep.c
3838         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3839         casts to int.
3840
3841 2018-08-27  Tom Tromey  <tom@tromey.com>
3842
3843         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3844         unsigned.
3845         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3846         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3847         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3848         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3849         unsigned.
3850
3851 2018-08-27  Tom Tromey  <tom@tromey.com>
3852
3853         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3854         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3855
3856 2018-08-27  Tom Tromey  <tom@tromey.com>
3857
3858         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3859         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3860         ULONGEST_MAX.
3861         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3862         ULONGEST_MAX.
3863         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3864         ULONGEST_MAX.
3865         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3866         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3867         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3868         ULONGEST_MAX.
3869         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3870         (ppc64_linux_sigaction_tramp_frame)
3871         (ppc32_linux_sighandler_tramp_frame)
3872         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3873         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3874         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3875         * mn10300-linux-tdep.c (am33_linux_sigframe)
3876         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3877         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3878         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3879         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3880         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3881         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3882         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3883         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3884         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3885         * microblaze-linux-tdep.c
3886         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3887         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3888         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3889         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3890         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3891         * common/common-types.h (ULONGEST_MAX): New define.
3892         (CORE_ADDR_MAX): Fix formatting.
3893         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3894         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3895         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3896         (arm_linux_rt_sigreturn_tramp_frame)
3897         (arm_eabi_linux_sigreturn_tramp_frame)
3898         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3899         (thumb2_eabi_linux_sigreturn_tramp_frame)
3900         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3901         (arm_linux_restart_syscall_tramp_frame)
3902         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3903         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3904         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3905         ULONGEST_MAX.
3906         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3907
3908 2018-08-27  Tom Tromey  <tom@tromey.com>
3909
3910         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3911         CORE_ADDR_MAX.
3912         * mips-tdep.c (mips_deal_with_atomic_sequence)
3913         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3914         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3915         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3916         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3917         CORE_ADDR_MAX.
3918         * aarch64-tdep.c (aarch64_software_single_step): Use
3919         CORE_ADDR_MAX.
3920
3921 2018-08-27  Tom Tromey  <tom@tromey.com>
3922
3923         * linespec.c (complete_linespec_component): Add cast to "char".
3924         * completer.c (completion_tracker::build_completion_result): Add
3925         cast to "char".
3926
3927 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3928
3929         * solist.h (struct solist, struct target_so_ops): Fix
3930         indentation.
3931
3932 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3933
3934         * ada-tasks.c (ada_task_info_s): Remove typedef.
3935         (DEF_VEC_O(ada_task_info_s)): Remove.
3936         (struct ada_tasks_inferior_data): Initialize fields.
3937         <task_list>: Make an std::vector.
3938         (get_ada_tasks_inferior_data): Allocate with new.
3939         (ada_get_task_number): Adjust.
3940         (get_task_number_from_id): Likewise.
3941         (valid_task_id): Likewise.
3942         (ada_get_task_info_from_ptid): Likewise.
3943         (iterate_over_live_ada_tasks): Likewise.
3944         (add_ada_task): Likewise.
3945         (read_known_tasks): Likewise.
3946         (ada_build_task_list): Likewise.
3947         (print_ada_task_info): Likewise.
3948         (info_task): Likewise.
3949         (task_command_1): Likewise.
3950
3951 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3952
3953         * ada-lang.c (add_angle_brackets): Return std::string.
3954
3955 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3956
3957         * python/py-threadevent.c (py_get_event_thread): Initialize
3958         pythread.
3959
3960 2018-08-24  Pedro Alves  <palves@redhat.com>
3961
3962         * python/py-bpevent.c (create_breakpoint_event_object): Use
3963         copy-initialization.
3964         * python/py-continueevent.c (emit_continue_event): Use
3965         copy-initialization.
3966         * python/py-exitedevent.c (create_exited_event_object): Return a
3967         gdbpy_ref<>.
3968         (emit_exited_event): Use copy-initialization.
3969         * python/py-inferior.c (python_new_inferior)
3970         (python_inferior_deleted, add_thread_object): Use
3971         copy-initialization.
3972         * python/py-infevents.c (create_inferior_call_event_object)
3973         (create_register_changed_event_object)
3974         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3975         (emit_inferior_call_event, emit_memory_changed_event)
3976         (emit_register_changed_event): Use copy-initialization.
3977         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3978         Return a gdbpy_ref<>.
3979         (emit_new_objfile_event): Use copy-initialization.
3980         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3981         (emit_clear_objfiles_event): Use copy-initialization.
3982         * python/py-signalevent.c (create_signal_event_object): Use
3983         copy-initialization.
3984         * python/py-threadevent.c (create_thread_event_object): Use
3985         copy-initialization.
3986
3987 2018-08-24  Pedro Alves  <palves@redhat.com>
3988             Simon Marchi  <simon.marchi@ericsson.com>
3989
3990         PR gdb/23379
3991         * python/py-continueevent.c: Include "gdbthread.h".
3992         (create_continue_event_object): Add intro comment.  Add 'ptid'
3993         parameter.  Use it to find thread to pass to
3994         create_thread_event_object.
3995         (emit_continue_event): Pass PTID down to
3996         create_continue_event_object.
3997         * python/py-event.h (py_get_event_thread): Declare.
3998         (create_thread_event_object): Remove default from 'thread'
3999         parameter.
4000         * python/py-stopevent.c (create_stop_event_object): Use
4001         py_get_event_thread.
4002         * python/py-threadevent.c (get_event_thread): Rename to ...
4003         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4004         and use it to find the thread.
4005         (create_thread_event_object): Assert that THREAD isn't null.
4006         Don't find the event thread here.
4007
4008 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4009
4010         * block.h (blockrange, blockranges): New struct declarations.
4011         (struct block): Add new field named `ranges'.
4012         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4013         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4014         macros for accessing ranges in struct block.
4015         (make_blockranges): New declaration.
4016         block.c (make_blockranges): New function.
4017         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4018         for block.
4019         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4020         * blockframe.c (cache_pc_function_block): New static global.
4021         (clear_pc_function_cache): Clear cache_pc_function_block.
4022         (find_pc_partial_function): Move comment to symtab.h.  Add
4023         support for non-contiguous blocks.
4024         * cli/cli-cmds.c (block.h): Include.
4025         (print_disassembly): Handle printing of non-contiguous blocks.
4026         (disassemble_current_function): Likewise.
4027         (disassemble_command): Likewise.
4028
4029         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4030         BLOCK_START.
4031         * blockframe.c (get_pc_function_start): Likewise.
4032         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4033         (gcc_symbol_address): Likewise.
4034         * compile/compile-object-run.c (compile_object_run): Likewise.
4035         * compile/compile.c (get_expr_block_and_pc): Likewise.
4036         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4037         (func_addr_to_tail_call_list): Likewise.
4038         * findvar.c (default_read_var_value): Likewise.
4039         * inline-frame.c (inline_frame_this_id): Likewise.
4040         (skip-inline_frames): Likewise.
4041         * infcmd.c (until_next_command): Likewise.
4042         * linespec.c (convert_linespec_to_sals): Likewise.
4043         * parse.c (parse_exp_in_context_1): Likewise.
4044         * printcmd.c (build_address_symbolic): likewise.
4045         (info_address_command): Likewise.
4046         symtab.c (find_function_start_sal): Likewise.
4047         (skip_prologue_sal): Likewise.
4048         (find_function_alias_target): Likewise.
4049         (find_gnu_ifunc): Likewise.
4050         * stack.c (find_frame_funname): Likewise.
4051         * symtab.c (fixup_symbol_section): Likewise.
4052         (find_function_start_sal): Likewise.
4053         (skip_prologue_sal): Likewsie.
4054         (find_function_alias_target): Likewise.
4055         (find_gnu_ifunc): Likewise.
4056         * tracepoint.c (info_scope_command): Likewise.
4057         * value.c (value_fn_field): Likewise.
4058
4059         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4060         in place of find_pc_partial_function.
4061         * blockframe.c (find_function_entry_range_from_pc): New function.
4062         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4063         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4064         for each range in a block.
4065
4066
4067 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4068
4069         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4070         incrementation.
4071
4072 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4073
4074         * solib-svr4.c (read_program_headers_from_bfd): Return
4075         gdb::optional<gdb::byte_vector>.
4076         (svr4_exec_displacement): Adjust.
4077
4078 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4079
4080         * solib-svr4.c (read_program_header): Return
4081         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4082         (find_program_interpreter): Return
4083         gdb::optional<gdb::byte_vector>.
4084         (scan_dyntag_auxv): Adjust.
4085         (enable_break): Adjust.
4086         (svr4_exec_displacement): Adjust.
4087
4088 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4089
4090         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4091         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4092
4093 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4094
4095         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4096         string_vprintf.
4097         * guile/scm-utils.c (gdbscm_printf): Likewise.
4098         * serial.c (serial_printf): Likewise.
4099         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4100
4101 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4102
4103         * stack.c (print_frame): Print frame architecture when printing on
4104         an MI output.
4105         * NEWS: Mention new "arch" attribute in frame output.
4106
4107 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4108
4109         * arch/aarch64.h (aarch64_regnum): Update comment.
4110
4111 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4112
4113         * NEWS: Add SVE to 8.2 section.
4114
4115 2018-08-21  Pedro Alves  <palves@redhat.com>
4116
4117         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4118         out from gdbscm_parse_function_args.
4119         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4120         gdbscm_parse_function_args_1.
4121
4122 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4123
4124         PR gdb/17816
4125         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4126         operator.
4127
4128 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4129
4130         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4131
4132 2018-08-19  Michael Spang  <spang@google.com>
4133
4134         PR gdb/11786
4135         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4136         for PT_TLS segments.
4137
4138 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4139
4140         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4141         dwarf_variable_value.
4142         * dwarf2-frame.c (class dwarf_expr_executor):
4143         Add override for dwarf_variable_value.
4144         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4145         (class symbol_needs_eval_context): Likewise.
4146         (indirect_synthetic_pointer): Add forward declaration.
4147         (sect_variable_value): New function.
4148         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4149         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4150         for DW_OP_GNU_variable_value.
4151
4152 2018-08-16  Tom Tromey  <tom@tromey.com>
4153
4154         * top.c (read_command_file): Update.
4155         (command_line_input): Remove "repeat" argument.
4156         * ada-lang.c (get_selections): Update.
4157         * linespec.c (decode_line_2): Update.
4158         * defs.h (command_line_input): Remove argument.
4159         * cli/cli-script.c (read_next_line): Update.
4160         * python/py-gdb-readline.c: Update.
4161
4162 2018-08-17  Tom Tromey  <tom@tromey.com>
4163
4164         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4165         command_line_input.
4166
4167 2018-08-15  Tom Tromey  <tom@tromey.com>
4168
4169         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4170
4171 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4172
4173         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4174         If used, use find_pc_partial_function to find address range
4175         to disassemble.
4176         * mi/mi-main.c (mi_cmd_list_features): Report
4177         "data-disassemble-a-option" feature.
4178         * NEWS: Mention new -data-disassemble option -a.
4179
4180 2018-08-13  Tom Tromey  <tom@tromey.com>
4181
4182         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4183
4184 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4185
4186         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4187         (aarch64_linux_collect_sve_regset): Likewise.
4188         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4189         * regcache.h (regcache_map_entry_size): New function.
4190
4191 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4192
4193         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4194         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4195         (SVE_HEADER_VL_LENGTH): Likewise.
4196         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4197         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4198         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4199         (SVE_HEADER_SIZE_OFFSET): Likewise.
4200         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4201         (SVE_HEADER_VL_OFFSET): Likewise.
4202         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4203         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4204         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4205         (SVE_HEADER_SIZE): Likewise.
4206         (aarch64_linux_core_read_vq): Add function.
4207         (aarch64_linux_core_read_description): Check for SVE section.
4208
4209 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4210
4211         * aarch64-fbsd-tdep.c
4212         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4213         collect_size.
4214         * aarch64-linux-tdep.c
4215         (aarch64_linux_iterate_over_regset_sections): Likewise.
4216         * alpha-linux-tdep.c
4217         (alpha_linux_iterate_over_regset_sections):
4218         * alpha-nbsd-tdep.c
4219         (alphanbsd_iterate_over_regset_sections): Likewise.
4220         * amd64-fbsd-tdep.c
4221         (amd64fbsd_iterate_over_regset_sections): Likewise.
4222         * amd64-linux-tdep.c
4223         (amd64_linux_iterate_over_regset_sections): Likewise.
4224         * arm-bsd-tdep.c
4225         (armbsd_iterate_over_regset_sections): Likewise.
4226         * arm-fbsd-tdep.c
4227         (arm_fbsd_iterate_over_regset_sections): Likewise.
4228         * arm-linux-tdep.c
4229         (arm_linux_iterate_over_regset_sections): Likewise.
4230         * corelow.c (get_core_registers_cb): Likewise.
4231         (core_target::fetch_registers): Likewise.
4232         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4233         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4234         * gdbarch.h (void): Regenerate.
4235         * gdbarch.sh: Add supply_size and collect_size.
4236         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4237         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4238         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4239         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4240         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4241         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4242         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4243         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4244         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4245         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4246         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4247         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4248         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4249         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4250         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
4251         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4252         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4253         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4254         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4255         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4256         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4257         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
4258         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4259         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4260         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4261         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4262         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4263         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4264         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4265         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4266
4267 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4268
4269         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4270         with string_printf.
4271
4272 2018-08-10  Keith Seitz  <keiths@redhat.com>
4273
4274         * compile/compile-c-support.c (add_code_header, add_code_footer):
4275         Move into policy class.
4276         (c_push_user_expression, pop_user_expression_nop)
4277         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4278         (compile_program): New host class.
4279         (c_compile_program): New typedef.
4280         (c_compute_porgram): Use c_compile_program.
4281
4282 2018-08-10  Keith Seitz  <keiths@redhat.com>
4283
4284         * compile/compile-internal.h (compile_instance::~compile_instance):
4285         Remove calls to htab_delete.
4286         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4287         * compile.c (compile_instance::compile_instance): Initialize
4288         htab unique pointers.
4289         (compile_instance::get_cached_type, compile_instance::insert_type)
4290         (compile_instance::error_symbol_once): Update for unique_ptr.
4291
4292 2018-08-10  Keith Seitz  <keiths@redhat.com>
4293
4294         * compile/compile-c-symbols.c (struct symbol_error)
4295         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4296         (compile_instance::insert_symbol_error)
4297         (compile_instance::error_symbol_once): Move to ...
4298         * compile/compile.c: ... here.
4299
4300 2018-08-10  Keith Seitz  <keiths@redhat.com>
4301
4302         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4303         instead of `new_compile_instance'.
4304         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4305         Update description.
4306         If the symbol error map is not initialized, create it.
4307         (generate_c_for_for_one_symbol): Do not check/initialize
4308         the symbol error map.
4309         * compile/compile-c-types.c (compile_c_instance): Make a class.
4310         Update all callers.
4311         (compile_instance::compile_instance): Initialize the type cache.
4312         (get_cached_type): New function.
4313         (insert_type): Update description.
4314         (compile_c_instance::m_default_cflags): Define.
4315         (convert_type): Update description.  Use get_cached_type.
4316         (delete_instance): Moved to destructor.
4317         (new_compile_instance): Moved to constructor.
4318         * compile/compile-c.h (compile_c_instance): Make class inheriting
4319         from compile_instance.
4320         <base>: Remove field.
4321         <type_map, symbol_err_map>: Move to base class.
4322         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4323         * compile/compile-internal.h (compile_instance): Make class.
4324         <type_map_t, symbol_err_map_t>: Define.
4325         <fe>: Rename to `m_gcc_fe'.
4326         <scope, block, gcc_target_options>: Add `m_' prefix.
4327         <m_type_map, m_symbol_err_map>: New fields, moved from
4328         compile_c_instance.
4329         <destroy>: Remove.
4330         (convert_type, new_compile_instance): Remove.
4331         * compile/compile.c (cleanup_compile_instance): Remove.
4332         (compile_to_object): Use unique_ptr to eliminate cleanups.
4333         (compile_instance::set_print_callback, compile_instance::version)
4334         (compile_instance::set_verbose)
4335         (compile_instance::set_driver_filename)
4336         (compile_instance::set_triplet_regexp)
4337         (compile_instance::set_arguments)
4338         (compile_instance::set_source_file)
4339         (compile_instance::compile): Define.
4340
4341 2018-08-10  Keith Seitz  <keiths@redhat.com>
4342
4343         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4344         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4345         gcc-c-fe.def to define C plugin.
4346         (delete_instance): Delete `c_plugin'.
4347         (new_compile_instance): Initialize `c_plugin'.
4348         * compile/compile-c.h: Include gcc_c_plugin.h.
4349         (struct compile_c_instance) <c_plugin>: New member.
4350         * gcc-c-plugin.h: New file.
4351         Update all callers with API change.
4352
4353 2018-08-10  Keith Seitz  <keiths@redhat.com>
4354
4355         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4356         (HFILES_NO_SRCDIR): ... to here.
4357         Add compile-internal.h and compile-c.h.
4358         * compile/compile-c-support.c: Include compile-c.h.
4359         * compile/compile-c-symbols.c: Include compile-c.h.
4360         (generate_c_for_variable_locations): Update comment.
4361         * compile/compile-c-types.c: Include compile-c.h.
4362         * compile/compile-c.h: New file -- moved C language declarations
4363         from other files here.
4364         * compile/compile-internal.h: Do not include hashtab.h or
4365         common/enum-flags.h.
4366         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4367         (gcc_convert_symbol, gcc_symbol_address)
4368         (generate_c_for_variable_locations, c_get_mode_for_size)
4369         (c_get_range_decl_name): Definitions moved to compile-c.h.
4370         * compile/compile-loc2c.c: Include compile-c.h.
4371
4372 2018-08-10  Keith Seitz  <keiths@redhat.com>
4373
4374         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4375         (c_symbol_substitution_name): ... this.
4376         Update all callers.
4377
4378 2018-08-10  Keith Seitz  <keiths@redhat.com>
4379
4380         * compile/compile-c-support.c (c_compute_program): Use
4381         unique_xmalloc_ptr to eliminate cleanup.
4382         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4383         Return a unique_xmalloc_ptr and eliminate cleanup.
4384         * compile/compile-internal.h (generate_c_for_variable_locations):
4385         Return unique_xmalloc_ptr and update description.
4386
4387 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4388
4389         * corelow.c (core_target::get_core_register_section): Rename
4390         min_size to section_min_size.
4391
4392 2018-08-09  Jim Wilson  <jimw@sifive.com>
4393
4394         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4395         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4396         * NEWS: Mention new GNU/Linux RISC-V target.
4397         * configure.host: Add riscv*-*-linux*.
4398         * configure.nat: Add riscv*.
4399         * configure.tgt: Add riscv*-*-linux*.
4400         * riscv-linux-nat.c: New file.
4401         * riscv-linux-tdep.c: New file.
4402
4403 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4404
4405         * infrun.c (resume): Make static, add forward declaration.
4406         (proceed): Update header comment.
4407         * infrun.h (resume): Delete declaration.
4408
4409 2018-08-09  Tom Tromey  <tom@tromey.com>
4410
4411         * riscv-tdep.h: Minor formatting fixes.
4412
4413 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4414
4415         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4416         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4417         (test_mkdir_recursive): Likewise.
4418         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4419
4420 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4421
4422         * valarith.c (value_subscripted_rvalue): If an array is not in
4423         memory, and we don't know the upper bound, then we can't know that
4424         the requested element exists or not.
4425
4426 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4427
4428         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4429         (target_options_to_string): Add comment.
4430
4431 2018-08-08  Tom Tromey  <tom@tromey.com>
4432
4433         * unittests/scoped_mmap-selftests.c: Check result of "write".
4434
4435 2018-08-08  Jim Wilson  <jimw@sifive.com>
4436
4437         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4438         (decode_register_index_short): New.
4439         (decode_j_type_insn, decode_cj_type_insn): New.
4440         (decode_b_type_insn, decode_cb_type_insn): New.
4441         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4442         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4443         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4444         is_c_sw_insn instead of is_sw_insn.
4445         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4446         (riscv_software_single_step): New.
4447         * riscv-tdep.h (riscv_software_single_step): Declare.
4448
4449         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4450         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4451
4452 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4453
4454         PR gdb/18050:
4455         * target.c (dispose_inferior): Don't dispose of inferiors that are
4456         already killed.
4457
4458 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4459
4460         * remote.c (remote_target::download_tracepoint): Change char* to
4461         const char*.
4462
4463 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4464
4465         * target.h (target_options_to_string): Return an std::string.
4466         * target.c (str_comma_list_concat_elem): Return void, use
4467         std::string.
4468         (do_option): Likewise.
4469         (target_options_to_string): Return an std::string.
4470         * linux-nat.c (linux_nat_target::wait): Adjust.
4471         * target-debug.h (target_debug_print_options): Adjust.
4472
4473 2018-08-07  Tom Tromey  <tom@tromey.com>
4474
4475         * Makefile.in (CPPFLAGS): New variable.
4476         (INTERNAL_CPPFLAGS): Use it.
4477
4478 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4479
4480         * NEWS: Mention the index cache.
4481
4482 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4483
4484         * common/pathstuff.h (get_standard_cache_dir): New.
4485         * common/pathstuff.c (get_standard_cache_dir): New.
4486         * build-id.h (build_id_to_string): New.
4487         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4488         DEBUG_STR_SUFFIX): Move to here.
4489         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4490         DEBUG_STR_SUFFIX): Move from there.
4491         (write_psymtabs_to_index): Make non-static, add basename
4492         parameter.  Write to temporary files, rename when done.
4493         (save_gdb_index_command): Adjust call to
4494         write_psymtabs_to_index.
4495         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4496         field.
4497         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4498         (get_gdb_index_contents_from_cache): New.
4499         (get_gdb_index_contents_from_cache_dwz): New.
4500         (dwarf2_initialize_objfile): Read index from cache.
4501         (dwarf2_build_psymtabs): Save to index.
4502         * dwarf-index-cache.h: New file.
4503         * dwarf-index-cache.c: New file.
4504         * dwarf-index-write.h: New file.
4505
4506 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4507
4508         * gnulib/aclocal.m4: Re-generate.
4509         * gnulib/config.in: Re-generate.
4510         * gnulib/configure: Re-generate.
4511         * gnulib/import/Makefile.am: Re-generate.
4512         * gnulib/import/Makefile.in: Re-generate.
4513         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4514         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4515         * gnulib/import/m4/mkdir.m4: New file.
4516         * gnulib/import/mkdir.c: New file.
4517         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4518         module.
4519
4520 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4521
4522         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4523         * common/scoped_mmap.c: New file.
4524         * common/scoped_mmap.h (destroy): New method.
4525         (~scoped_mmap, reset): Use destroy.
4526         (scoped_mmap): New move constructor.
4527         (mmap_file): New declaration.
4528         * unittests/scoped_mmap-selftests.c (test_normal,
4529         test_invalid_filename, run_tests): New functions.
4530         (_initialize_scoped_mmap_selftests): Register selftest.
4531
4532 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4533
4534         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4535         (read_gdb_index_from_buffer): ... this.  Remove section
4536         parameter, add buffer parameter.
4537         (get_gdb_index_contents_ftype,
4538         get_gdb_index_contents_dwz_ftype): New typedefs.
4539         (dwarf2_read_gdb_index): Add callback parameters to get the
4540         index contents.
4541         (get_gdb_index_contents_from_section): New.
4542         (dwarf2_initialize_objfile): Update call to
4543         dwarf2_read_gdb_index.
4544
4545 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4546
4547         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4548         (gdb_open_cloexec): Likewise.
4549         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4550         (commandline_from_pid): Likewise.
4551         (linux_xfer_osdata_threads): Likewise.
4552         (linux_xfer_osdata_fds): Likewise.
4553         * ada-lang.c (is_package_name): Likewise.
4554         * auxv.c (procfs_xfer_auxv): Likewise.
4555         * breakpoint.c (print_one_breakpoint_location): Use
4556         uiout::field_fmt.
4557         (print_one_catch_solib): Use string_printf.
4558         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4559         (add_pe_forwarded_sym): Likewise.
4560         * dwarf2read.c (create_type_unit_group): Likewise.
4561         (build_error_marker_type): Likewise.
4562         * infcall.c (get_function_name): Likewise.
4563         * valprint.c (print_converted_chars_to_obstack): Likewise.
4564         * xtensa-tdep.c (xtensa_register_type): Likewise.
4565
4566 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4567
4568         * remote.c (remote_target::download_tracepoint): Fix format
4569         string errors.
4570
4571 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4572
4573         * tracefile.c: Include common/byte-vector.h.
4574         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4575         with trace_regblock_size if needed.  Update uses of buf.
4576
4577 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4578
4579         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4580         std::vector<unsigned char>.
4581         * tracepoint.c (collection_list::collection_list): Remove
4582         m_regs_mask initializer from initializer list.  Resize
4583         m_regs_mask using the largest remote register number.
4584         (collection_list::add_remote_register): Remove size check on
4585         m_regs_mask.  Use at to access element.
4586         (collection_list::stringify): Change type of temp_buf to
4587         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4588         stringify the register mask.  Use pack_hex_byte for the register
4589         mask.
4590
4591 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4592
4593         * tracepoint.h (class collection_list) <add_register>: Remove.
4594         <add_remote_register, add_ax_registers, add_local_register>:
4595         Declare.
4596         <add_memrange>: Add scope parameter.
4597         * tracepoint.c (encode_actions_1): Likewise.
4598         (collection_list::add_register): Rename to ...
4599         (collection_list::add_remote_register): ... this.  Update
4600         comment.
4601         (collection_list::add_ax_registers, add_local_register): New
4602         methods.
4603         (collection_list::add_memrange): Add scope parameter.  Call
4604         add_local_register instead of add_register.
4605         (finalize_tracepoint_aexpr): New function.
4606         (collection_list::collect_symbol): Update calls to add_memrange.
4607         Call add_local_register instead of add_register.  Call
4608         add_ax_registers.  Call finalize_tracepoint_aexpr.
4609         (encode_actions_1): Get remote regnos for $reg action.  Call
4610         add_remote_register, add_ax_registers, and add_local_register.
4611         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4612         (validate_actionline): Call finalize_tracepoint_aexpr.
4613
4614 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4615
4616         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4617         Replace array buf with gdb::char_vector buf, of size
4618         get_remote_packet_size ().  Replace references to buf and
4619         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4620         and xsnprintf with snprintf.  Raise errors if the buffer is too
4621         small.
4622
4623 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4624
4625         * remote.c (remote_target::download_tracepoint): Fix the has_more
4626         predicate in the QTDP action list iteration.
4627
4628 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4629
4630         * remote.c (remote_target::download_tracepoint): Fix indentation
4631         in for block.
4632
4633 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4634
4635         * proc-api.c (_initialize_proc_api): Remove c, unused.
4636         * procfs.c (procfs_init_inferior): Remove signals, unused.
4637         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4638         unused.
4639
4640 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4641             Andrew Burgess  <andrew.burgess@embecosm.com>
4642
4643         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4644         'W_STOPCODE (0)' as this could be ambiguous.
4645
4646 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4647
4648         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4649         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4650         "ai_socktype").
4651
4652 2018-08-02  Tom Tromey  <tom@tromey.com>
4653
4654         PR symtab/16842.
4655         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4656         symbols.
4657         (process_structure_scope): Likewise.
4658
4659 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4660
4661         PR gdb/22629:
4662         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4663         kill inferior.
4664
4665 2018-08-02  Tom Tromey  <tom@tromey.com>
4666
4667         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4668         (darwin_suspend_inferior, darwin_resume_inferior)
4669         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4670         (darwin_check_new_threads): Check result of get_darwin_inferior.
4671
4672 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4673
4674         GDB 8.1.1 released.
4675
4676 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4677
4678         * varobj.c (varobj_get_path_expr_parent): Report an error if
4679         parent is a dynamic varobj.
4680
4681 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4682
4683         * gnulib/aclocal.m4: Re-generate.
4684         * gnulib/config.in: Re-generate.
4685         * gnulib/configure: Re-generate.
4686         * gnulib/import/Makefile.in: Re-generate.
4687         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4688         * gnulib/import/m4/onceonly.m4: Re-generate.
4689
4690 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4691
4692         * target-descriptions.c (struct xml_test_tdesc): New.
4693         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4694         (record_xml_tdesc): Update.
4695         (maintenance_check_xml_descriptions): Update.
4696         * target-descriptions.h (record_xml_tdesc): Update comment.
4697
4698 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4699
4700         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4701         checking array bounds are defined.
4702
4703 2018-07-30  Tom Tromey  <tom@tromey.com>
4704
4705         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4706         irreflexivity violation.
4707
4708 2018-07-30  Tom Tromey  <tom@tromey.com>
4709
4710         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4711         * value.c (unpack_long): Remove lint code.
4712         * valops.c (value_ind): Remove lint code.
4713         * valarith.c (value_x_binop, value_x_unop, value_equal)
4714         (value_pos): Remove lint code.
4715
4716 2018-07-28  Tom de Vries  <tdevries@suse.de>
4717
4718         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4719         with undefined upper bound as <optimized out>.
4720
4721 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4722
4723         * gcore.in: Rename variable "name" to "prefix".  Expand
4724         "usage" text.
4725
4726 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4727
4728         * windows-nat.c (windows_nat_target::create_inferior): Update to
4729         call close() in global namespace.
4730
4731 2018-07-26  Tom Tromey  <tom@tromey.com>
4732
4733         * dwarf-index-write.c (add_address_entry): Don't add objfile
4734         offsets.
4735         * dbxread.c (find_stab_function): Rename from
4736         find_stab_function_addr.  Return a bound_minimal_symbol.
4737         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4738         Don't add objfile offsets.
4739         (end_psymtab): Use raw_text_low, raw_text_high,
4740         MSYMBOL_VALUE_RAW_ADDRESS.
4741         (read_ofile_symtab): Update.
4742         (process_one_symbol): Update.
4743         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4744         offsets.
4745         (dw2_relocate): Remove.
4746         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4747         searching addrmap.
4748         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4749         Update.
4750         (process_psymtab_comp_unit_reader, add_partial_symbol)
4751         (add_partial_subprogram, dwarf2_ranges_read): Update.
4752         (load_partial_dies): Update.
4753         (add_address_entry): Don't add objfile offsets.
4754         (dwarf2_build_include_psymtabs): Update.
4755         (create_addrmap_from_aranges): Don't add objfile offsets.
4756         (dw2_find_pc_sect_compunit_symtab): Update.
4757         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4758         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4759         Update.
4760         (parse_partial_symbols): Don't add objfile offsets.  Use
4761         raw_text_low, raw_text_high.  Update.
4762         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4763         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4764         or call 'relocate' quick function.  Clear psymbol_map.
4765         * psympriv.h (struct partial_symbol) <address>: Add section
4766         offset.
4767         <set_unrelocated_address>: Rename from set_address.
4768         <raw_text_low, raw_text_high>: New methods.
4769         <text_low, text_high>: Add objfile parameter.
4770         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4771         set_unrelocated_address.
4772         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4773         (find_pc_psymbol): Update.
4774         (fixup_psymbol_section, relocate_psymtabs): Remove.
4775         (dump_psymtab, psym_functions): Update.
4776         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4777         parameter.
4778         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4779         (start_psymtab_common): Update.
4780         * symfile-debug.c (debug_qf_relocate): Remove.
4781         (debug_sym_quick_functions): Update.
4782         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4783         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4784         Update.
4785
4786 2018-07-26  Tom Tromey  <tromey@redhat.com>
4787
4788         * dbxread.c (end_psymtab): Use text_high_valid and
4789         text_low_valid.
4790         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4791         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4792         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4793         Update comment.
4794         <text_low_valid, text_high_valid>: New fields.
4795         <set_text_low, set_text_high>: Update.
4796         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4797
4798 2018-07-26  Tom Tromey  <tom@tromey.com>
4799
4800         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4801         Update.
4802         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4803         textlow and texthigh fields.
4804         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4805         Update.
4806         * mdebugread.c (parse_lines, parse_partial_symbols)
4807         (psymtab_to_symtab_1): Update.
4808         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4809         Rename fields.  Update comment.  Now private.
4810         <text_low, text_high, set_text_low, set_text_high>: New methods.
4811         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4812         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4813         (start_psymtab_common, maintenance_info_psymtabs)
4814         (maintenance_check_psymtabs): Update.
4815         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4816         texthigh fields.
4817         (scan_xcoff_symtab): Update.
4818
4819 2018-07-26  Tom Tromey  <tromey@redhat.com>
4820
4821         * psympriv.h (struct partial_symbol) <unrelocated_address,
4822         address, set_address>: New methods.
4823         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4824         (fixup_psymbol_section, relocate_psymtabs): Update.
4825         (print_partial_symbols): Add 'objfile' parameter.  Update.
4826         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4827         Update.
4828
4829 2018-07-26  Tom Tromey  <tom@tromey.com>
4830
4831         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4832         (debug_names::write_psymbols): Update.
4833         * psympriv.h (struct partial_symbol): Derive from
4834         general_symbol_info.
4835         <obj_section>: New method.
4836         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4837         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4838         (find_pc_sect_psymbol, fixup_psymbol_section)
4839         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4840         (print_partial_symbols, recursively_search_psymtabs)
4841         (compare_psymbols, psymbol_hash, psymbol_compare)
4842         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4843         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4844
4845 2018-07-26  Tom Tromey  <tromey@redhat.com>
4846
4847         * dbxread.c (end_psymtab): Remove dead code.
4848
4849 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4850
4851         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4852         DWARF unwinders are disabled.
4853         * dwarf2-frame.c: Add dwarf2read.h include.
4854         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4855         disabled.
4856         (dwarf2_frame_unwinders_enabled_p): Define.
4857         (show_dwarf_unwinders_enabled_p): New function.
4858         (_initialize_dwarf2_frame): Register switch to control DWARF
4859         unwinder use.
4860         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4861         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4862         (show_dwarf_cmdlist): Remove static keyword.
4863         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4864         (show_dwarf_cmdlist): Declare.
4865         * NEWS: Document new feature.
4866
4867 2018-07-26  Tom de Vries  <tdevries@suse.de>
4868
4869         PR breakpoints/23366
4870         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4871
4872 2018-07-26  Tom de Vries  <tdevries@suse.de>
4873
4874         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4875         DW_AT_count can't be translated to a dynamic prop.
4876
4877 2018-07-25  Tom de Vries  <tdevries@suse.de>
4878
4879         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4880         try/catch.
4881
4882 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4883
4884         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4885
4886 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4887
4888         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4889
4890 2018-07-24  Keith Seitz  <keiths@redhat.comt
4891
4892         PR symtab/23010
4893         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4894         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4895         instead of add_symbol_to_list.
4896         (read_file_scope): Call prepare_one_comp_unit before reading
4897         any other DIEs.
4898
4899 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4900
4901         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4902
4903 2018-07-24  Tom Tromey  <tom@tromey.com>
4904
4905         * utils.c (malloc, realloc, free): Don't declare.
4906         * configure, config.in: Rebuild.
4907         * configure.ac: Don't check for declarations of free, malloc, or
4908         realloc.
4909
4910 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4911
4912         * aarch64-linux-nat.c
4913         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4914         variable.
4915         * arm-linux-nat.c (fetch_regs): Likewise.
4916         (store_regs): Likewise.
4917         (fetch_vfp_regs): Likewise.
4918         (store_vfp_regs): Likewise.
4919         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4920         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4921         (arm_linux_nat_target::insert_watchpoint): Likewise.
4922         (arm_linux_nat_target::remove_watchpoint): Likewise.
4923         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4924         Likewise.
4925         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4926         Likewise.
4927         * ppc-linux-nat.c (fetch_register): Likewise.
4928         (fetch_all_gp_regs): Likewise.
4929         (fetch_ppc_registers): Likewise.
4930         (store_all_gp_regs): Likewise.
4931         (store_ppc_registers): Likewise.
4932         (hwdebug_insert_point): Likewise.
4933         (can_use_watchpoint_cond_accel): Likewise.
4934         * remote-sim.c (gdb_os_write_stdout): Likewise.
4935
4936 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4937             Tom Tromey  <tom@tromey.com>
4938
4939         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4940         test for it.
4941         * configure: Rebuild.
4942
4943 2018-07-22  Tom Tromey  <tom@tromey.com>
4944
4945         * regformats/regdat.sh: Define xmltarget_${name} inside
4946         #ifndef IN_PROCESS_AGENT.
4947
4948 2018-07-22  Tom Tromey  <tom@tromey.com>
4949
4950         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4951
4952 2018-07-22  Tom Tromey  <tom@tromey.com>
4953
4954         * symfile.c (reread_symbols): Notify iter, not objfile.
4955
4956 2018-07-22  Tom Tromey  <tom@tromey.com>
4957
4958         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4959         Use arch_ops.
4960         (ravenscar_thread_target::prepare_to_store): Likewise.
4961
4962 2018-07-22  Tom Tromey  <tom@tromey.com>
4963
4964         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4965         unused variable.  Call value_fetch_lazy when needed.
4966         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4967         Remove unused variable.  Call value_fetch_lazy when needed.
4968
4969 2018-07-22  Tom Tromey  <tom@tromey.com>
4970
4971         * m32c-tdep.c (mark_dma): Return void.
4972         (make_regs): Remove unused declarations.
4973
4974 2018-07-22  Tom Tromey  <tom@tromey.com>
4975
4976         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4977         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4978         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4979         bkscm_get_valid_block_smob_arg_unsafe for effect.
4980
4981 2018-07-22  Tom Tromey  <tom@tromey.com>
4982
4983         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4984         value_type.
4985
4986 2018-07-22  Tom Tromey  <tom@tromey.com>
4987
4988         * windows-nat.c (saved_context): Conditionally define.
4989         * remote.c (remote_target::remote_btrace_maybe_reopen):
4990         Conditionally declare "warned".
4991         * inflow.c (sigquit_ours): Conditionally define.
4992         (new_tty): Move "tty" declaration inside #if.
4993         * guile/guile.c (guile_datadir): Conditionally define.
4994         * charset.c (set_be_le_names): Move some declarations inside #if.
4995         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4996         #if.
4997         (parse_xml_btrace_conf): Likewise.
4998
4999 2018-07-22  Tom Tromey  <tom@tromey.com>
5000
5001         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5002
5003 2018-07-22  Tom Tromey  <tom@tromey.com>
5004
5005         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5006         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5007         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5008         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5009         * stack.c (frame_apply_level_command): Remove unused variable.
5010         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5011         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5012         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5013         unused variable.
5014         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5015         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5016         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5017         variable.
5018         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5019         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5020         variable.
5021         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5022         Remove unused variable.
5023         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5024         variable.
5025         * common/tdesc.c (print_xml_feature::visit): Remove unused
5026         variable.
5027         * compile/compile-object-load.c (store_regs): Remove unused
5028         variables.
5029         * complaints.c (clear_complaints): Remove unused variable.
5030         * corelow.c (core_target_open): Remove unused variable.
5031         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5032         variable.
5033         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5034         variable.
5035         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5036         variable.
5037         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5038         variable.
5039         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5040         variable.
5041         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5042         variable.
5043         * ia64-tdep.c (examine_prologue): Remove unused variable.
5044         * infcall.c (run_inferior_call): Remove unused variable.
5045         * inferior.c (exit_inferior): Remove unused variable.
5046         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5047         * linespec.c (decode_line_2): Remove unused variable.
5048         * linux-nat.c (super_close): Remove.
5049         * linux-tdep.c (linux_info_proc): Remove unused variable.
5050         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5051         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5052         Remove unused variable.
5053         * parse.c (find_minsym_type_and_address): Remove unused variable.
5054         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5055         variable.
5056         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5057         variable.
5058         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5059         variables.
5060         * record-btrace.c (record_btrace_target::store_registers): Remove
5061         unused variable.
5062         (cmd_show_record_btrace_cpu): Remove unused variable.
5063         * riscv-tdep.c (riscv_register_reggroup_p)
5064         (riscv_push_dummy_call, riscv_return_value): Remove unused
5065         variable.
5066         * rust-exp.y (literal): Remove unused variable.
5067         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5068         unused variable.
5069         <STRUCTOP_ANONYMOUS>: Likewise.
5070         * s390-linux-tdep.c (s390_linux_init_abi_31)
5071         (s390_linux_init_abi_64): Remove unused variable.
5072         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5073         (file_select_thread, net_windows_open, _initialize_ser_windows):
5074         Remove unused variables.
5075         * symtab.c (find_pc_sect_line): Remove unused variable.
5076         * target-memory.c (compute_garbled_blocks): Remove unused
5077         variable.
5078         (target_write_memory_blocks): Remove unused variable.
5079         * target.c (target_stack::unpush): Remove unused variables.
5080         * tracepoint.c (start_tracing, all_tracepoint_actions)
5081         (merge_uploaded_trace_state_variables)
5082         (print_one_static_tracepoint_marker): Remove unused variable.
5083         * unittests/basic_string_view/element_access/char/1.cc (test01):
5084         Remove unused variable.
5085         * windows-nat.c (windows_continue, windows_add_all_dlls)
5086         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5087         Remove unused variables.
5088
5089 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5090
5091         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5092         attr_profile in HAVE_ELF.
5093         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5094         HAVE_ELF.
5095
5096 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5097
5098         * frame.c (frame_register_unwind): Change parameter name.
5099         (frame_unwind_register): Likewise.
5100         (frame_unwind_register_value): Likewise.
5101         (frame_unwind_register_signed): Likewise.
5102         (frame_unwind_register_unsigned): Likewise.
5103         * frame.h (frame_register_unwind): Likewise.
5104         (frame_unwind_register): Likewise.
5105         (frame_unwind_register_value): Likewise.
5106         (frame_unwind_register_signed): Likewise.
5107         (frame_unwind_register_unsigned): Likewise.
5108         (frame_unwind_arch): Likewise.
5109
5110 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5111
5112         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5113         ISA maintenance.
5114
5115 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5116
5117         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5118         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5119         hand.
5120
5121 2018-07-20  Keith Seitz  <keiths@redhat.com>
5122
5123         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5124         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5125         m_compunit_symtab, m_language>: Add "m_" prefix.
5126         Update all uses.
5127         * buildsym.c: Update all uses.
5128
5129 2018-07-20  Tom Tromey  <tom@tromey.com>
5130
5131         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5132         * buildsym.h (record_line_ftype): Remove typedef.
5133
5134 2018-07-20  Tom Tromey  <tom@tromey.com>
5135
5136         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5137         (end_expandable_symtab): Likewise.
5138         (end_symtab_get_static_block): Likewise.
5139         (end_symtab_from_static_block): Likewise.
5140         * buildsym-legacy.c (augment_type_symtab): Remove.
5141         (end_expandable_symtab): Remove.
5142         (end_symtab_get_static_block): Remove.
5143         (end_symtab_from_static_block): Remove.
5144
5145 2018-07-20  Tom Tromey  <tom@tromey.com>
5146
5147         * dwarf2read.c: Include buildsym.h.
5148         (struct dwarf2_cu) <builder>: New method.
5149         (fixup_go_packaging): Update.
5150         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5151         use scoped_free_pendings.
5152         (using_directives): Add "cu" parameter, remove "language".
5153         (read_import_statement, setup_type_unit_groups, )
5154         (read_func_scope, read_lexical_block_scope)
5155         (dwarf2_record_block_ranges, read_namespace): Update.
5156         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5157         (lnp_state_machine::handle_end_sequence): Update.
5158         (class lnp_state_machine) <m_cu>: New member.
5159         <m_record_line_callback>: Remove.
5160         <m_currently_recording_lines>: New member.
5161         (lnp_state_machine::handle_set_file): Update.
5162         (noop_record_line): Remove.
5163         (dwarf_record_line_p): Add cu parameter.
5164         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5165         (lnp_state_machine::record_line)
5166         (lnp_state_machine::lnp_state_machine)
5167         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5168         (dwarf_decode_lines): Update.
5169         (dwarf2_start_subfile): Add cu parameter.
5170         (dwarf2_start_symtab, new_symbol): Update.
5171         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5172         Remove dwarf2_per_objfile parameter.
5173         (dwarf_decode_macros): Update.
5174
5175 2018-07-20  Tom Tromey  <tom@tromey.com>
5176
5177         * stabsread.c (define_symbol): Update.
5178         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5179         * dwarf2read.c (new_symbol): Update.
5180         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5181         * cp-namespace.c: Include buildsym.h.
5182         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5183         * buildsym-legacy.c (get_buildsym_compunit): New function.
5184
5185 2018-07-20  Tom Tromey  <tom@tromey.com>
5186
5187         * xcoffread.c: Include buildsym-legacy.h.
5188         * windows-nat.c: Include buildsym-legacy.h.
5189         * stabsread.c: Include buildsym-legacy.h.
5190         * mdebugread.c: Include buildsym-legacy.h.
5191         * buildsym-legacy.h: New file.
5192         * buildsym-legacy.c: New file, from buildsym.c.
5193         * go32-nat.c: Include buildsym-legacy.h.
5194         * dwarf2read.c: Include buildsym-legacy.h.
5195         * dbxread.c: Include buildsym-legacy.h.
5196         * cp-namespace.c: Include buildsym-legacy.h.
5197         * coffread.c: Include buildsym-legacy.h.
5198         * buildsym.h: Move some contents to buildsym-legacy.h.
5199         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5200         buildsym-legacy.c.
5201         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5202
5203 2018-07-20  Tom Tromey  <tom@tromey.com>
5204
5205         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5206         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5207         (buildsym_compunit::buildsym_compunit)
5208         (buildsym_compunit::~buildsym_compunit)
5209         (buildsym_compunit::get_macro_table): Define.
5210
5211 2018-07-20  Tom Tromey  <tom@tromey.com>
5212
5213         * buildsym.c (reset_symtab_globals): Remove.
5214         (buildsym_compunit::end_symtab_from_static_block): Update.
5215         (buildsym_compunit::augment_type_symtab): Update.
5216         (end_symtab_from_static_block): Call free_buildsym_compunit.
5217         (augment_type_symtab, end_symtab, end_expandable_symtab):
5218         Likewise.
5219
5220 2018-07-20  Tom Tromey  <tom@tromey.com>
5221
5222         * arch-utils.c: Do not include buildsym.h.
5223         * mipsread.c: Do not include buildsym.h.
5224         * machoread.c: Do not include buildsym.h.
5225         * elfread.c: Do not include buildsym.h.
5226
5227 2018-07-20  Tom Tromey  <tom@tromey.com>
5228
5229         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5230         initialization.
5231         (buildsym_compunit): Add new constructor.
5232         (struct buildsym_compunit) <get_last_source_file, finish_block,
5233         record_block_range, start_subfile, patch_subfile_names,
5234         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5235         set_last_source_start_addr, get_last_source_start_addr,
5236         get_local_using_directives, set_local_using_directives,
5237         get_global_using_directives, outermost_context_p,
5238         get_current_context_stack, get_context_stack_depth,
5239         get_current_subfile, get_local_symbols, get_file_symbols,
5240         get_global_symbols, record_debugformat, record_producer,
5241         push_context, pop_context, end_symtab_get_static_block,
5242         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5243         New public methods.
5244         <record_pending_block, finish_block_internal, make_blockvector,
5245         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5246         private methods.
5247         Update all users.
5248
5249 2018-05-22  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.c (record_pending_block): Move earlier.  Remove objfile
5258         parameter.
5259         (finish_block_internal): Update.
5260
5261 2018-07-20  Tom Tromey  <tom@tromey.com>
5262
5263         * buildsym.h (EXTERN): Don't define or undef.
5264         * buildsym.c (EXTERN): Don't define.
5265
5266 2018-07-20  Tom Tromey  <tom@tromey.com>
5267
5268         * buildsym.c: Remove TODO comment.
5269
5270 2018-07-20  Tom Tromey  <tom@tromey.com>
5271
5272         * coffread.c (coff_symtab_read): Update.
5273         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5274         (xcoff_new_init): Update.
5275         * mipsread.c (mipscoff_new_init): Update.
5276         * mdebugread.c (mdebug_build_psymtabs): Update.
5277         * elfread.c (elf_new_init): Update.
5278         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5279         Update.
5280         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5281         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5282         (stabsect_build_psymtabs): Update.
5283         * buildsym.h (buildsym_init): Don't declare.
5284         * buildsym.c: Update comment.
5285         (prepare_for_building): Remove.
5286         (start_symtab, restart_symtab): Update.
5287         (reset_symtab_globals): Update comment.
5288         (buildsym_init): Remove.
5289
5290 2018-07-20  Tom Tromey  <tom@tromey.com>
5291
5292         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5293         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5294         (read_enum_type, common_block_start, common_block_end)
5295         (cleanup_undefined_types_1, finish_global_stabs): Update.
5296         * mdebugread.c (psymtab_to_symtab_1): Update.
5297         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5298         (read_lexical_block_scope, new_symbol): Update.
5299         * dbxread.c (process_one_symbol): Update.
5300         * coffread.c (coff_symtab_read, process_coff_symbol)
5301         (coff_read_enum_type): Update.
5302         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5303         declare.
5304         (get_local_symbols, get_file_symbols, get_global_symbols): New
5305         functions.
5306         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5307         m_global_symbols.
5308         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5309         (~scoped_free_pendings): Update.
5310         (finish_block, prepare_for_building, reset_symtab_globals)
5311         (end_symtab_get_static_block, end_symtab_with_blockvector)
5312         (augment_type_symtab, push_context): Update.
5313         (get_local_symbols, get_file_symbols, get_global_symbols): New
5314         functions.
5315         (buildsym_init): Update.
5316
5317 2018-07-20  Tom Tromey  <tom@tromey.com>
5318
5319         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5320         (process_full_type_unit): Likewise.
5321         (dwarf2_start_symtab): Set list_in_scope.
5322
5323 2018-07-20  Tom Tromey  <tom@tromey.com>
5324
5325         * dwarf2read.c (process_psymtab_comp_unit_reader)
5326         (build_type_psymtabs_reader): Do not set list_in_scope.
5327
5328 2018-07-20  Tom Tromey  <tom@tromey.com>
5329
5330         * buildsym.c (free_pendings): Remove.
5331         (add_symbol_to_list, scoped_free_pendings)
5332         (finish_block_internal, buildsym_init): Update.
5333
5334 2018-07-20  Tom Tromey  <tom@tromey.com>
5335
5336         * xcoffread.c (read_xcoff_symtab): Update.
5337         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5338         Update.
5339         * dbxread.c (process_one_symbol): Update.
5340         * coffread.c (coff_symtab_read): Update.
5341         * buildsym.h (finish_block): Update.
5342         * buildsym.c (finish_block): Remove "listhead" argument.
5343         (end_symtab_get_static_block): Update.
5344
5345 2018-07-20  Tom Tromey  <tom@tromey.com>
5346
5347         * buildsym.h (class scoped_free_pendings): Remove constructor.
5348         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5349         method.
5350         <m_pending_block_obstack, m_pending_blocks>: New members.
5351         (pending_block_obstack, pending_blocks): Remove.
5352         (scoped_free_pendings::scoped_free_pendings): Default.
5353         (~scoped_free_pendings): Update.
5354         (free_pending_blocks): Remove.
5355         (finish_block_internal, record_pending_block, make_blockvector)
5356         (end_symtab_get_static_block, augment_type_symtab, push_context)
5357         (buildsym_init): Update.
5358
5359 2018-07-20  Tom Tromey  <tom@tromey.com>
5360
5361         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5362         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5363         members.
5364         (pending_addrmap, pending_addrmap_obstack)
5365         (pending_addrmap_interesting): Remove.
5366         (scoped_free_pendings, record_block_range, make_blockvector)
5367         (prepare_for_building, reset_symtab_globals, buildsym_init):
5368         Update.
5369
5370 2018-07-20  Tom Tromey  <tom@tromey.com>
5371
5372         * xcoffread.c (process_linenos): Update.
5373         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5374         * mdebugread.c (psymtab_to_symtab_1): Update.
5375         * dwarf2read.c (setup_type_unit_groups)
5376         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5377         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5378         * dbxread.c (process_one_symbol): Update.
5379         * coffread.c (coff_symtab_read, enter_linenos)
5380         (process_coff_symbol): Update.
5381         * buildsym.h (current_subfile): Don't declare.
5382         (get_current_subfile): Declare.
5383         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5384         member.
5385         (start_subfile, free_buildsym_compunit, push_subfile)
5386         (prepare_for_building, start_symtab): Update.
5387         (get_current_subfile): New function.
5388
5389 2018-07-20  Tom Tromey  <tom@tromey.com>
5390
5391         * coffread.c (coff_symtab_read): Update.
5392         * xcoffread.c (read_xcoff_symtab): Update.
5393         * dwarf2read.c (new_symbol): Update.
5394         (read_func_scope, read_lexical_block_scope): Update.
5395         * dbxread.c (process_one_symbol): Update.
5396         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5397         (outermost_context_p): Remove macro.
5398         (outermost_context_p, get_current_context_stack)
5399         (get_context_stack_depth): Declare.
5400         (pop_context): Return struct context_stack.
5401         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5402         member.
5403         (context_stack_size): Remove.
5404         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5405         (prepare_for_building, end_symtab_get_static_block)
5406         (augment_type_symtab, push_context): Update.
5407         (pop_context): Return struct context_stack.
5408         (outermost_context_p, get_current_context_stack)
5409         (get_context_stack_depth): New functions.
5410         (buildsym_init): Update.
5411
5412 2018-07-20  Tom Tromey  <tom@tromey.com>
5413
5414         * rust-exp.y: Now a pure parser.  Update all rules.
5415         (%union): Move earlier.
5416         (current_parser, work_obstack): Remove globals.
5417         (rust_parser, ~rust_parser): Update.
5418         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5419         lex_character, lex_number, lex_string, lex_identifier,
5420         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5421         convert_name, convert_params_to_expression,
5422         convert_ast_to_expression, ast_basic_type, ast_operation,
5423         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5424         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5425         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5426         ast_array_type, ast_slice_type, ast_reference_type,
5427         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5428         (rust_parse): Update.
5429         (rustyyerror, rustyylex): Add parser parameter.
5430         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5431         (rust_lex_stringish_test, rust_lex_test_sequence)
5432         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5433         (rust_lex_test_push_back, rust_lex_tests): Update.
5434
5435 2018-07-19  Pedro Alves  <palves@redhat.com>
5436
5437         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5438         gdb::unique_xmalloc_ptr.
5439         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5440         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5441         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5442         copy-initialization.
5443         * guile/scm-pretty-print.c (ppscm_print_children): Use
5444         gdb::unique_xmalloc_ptr instead of cleanups.
5445         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5446         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5447         gdb::unique_xmalloc_ptr.
5448         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5449         Adjust to use gdb::unique_xmalloc_ptr.
5450         * guile/scm-utils.c (extract_arg): Adjust.
5451         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5452         gdb::unique_xmalloc_ptr instead of a cleanup.
5453
5454 2018-07-19  Tom Tromey  <tom@tromey.com>
5455
5456         * utils.c (do_value_free_to_mark)
5457         (make_cleanup_value_free_to_mark): Remove.
5458         * utils.h (make_cleanup_value_free_to_mark): Remove.
5459
5460 2018-07-19  Pedro Alves  <palves@redhat.com>
5461
5462         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5463         forwarding reference.
5464
5465 2018-07-18  Pedro Alves  <palves@redhat.com>
5466
5467         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5468         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5469         cleanup.
5470
5471 2018-07-18  Pedro Alves  <palves@redhat.com>
5472
5473         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5474         exceptions.
5475         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5476         (gdbscm_wrap): New.
5477         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5478         directly instead of a cleanup.
5479         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5480         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5481         (vlscm_binop_gdbthrow): New, factored out from ...
5482         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5483         (vlscm_rich_compare): Use gdbscm_wrap.
5484         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5485         instead of a cleanup.
5486         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5487         cleanup.
5488         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5489         Use xfree directly instead of a cleanup.
5490         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5491         Adjust to use gdbscm_wrap and scoped_value_mark.
5492         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5493         (gdbscm_value_address, gdbscm_value_dereference)
5494         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5495         scoped_value_mark.
5496         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5497         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5498         scoped_value_mark.
5499         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5500         gdbscm_wrap and scoped_value_mark.
5501         (gdbscm_value_to_string): Use xfree directly instead of a
5502         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5503         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5504         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5505         scoped_value_mark.
5506         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5507         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5508         scoped_value_mark.
5509         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5510         gdbscm_wrap.
5511
5512 2018-07-18  Tom de Vries  <tdevries@suse.de>
5513
5514         * findvar.c (default_read_var_value): Also resolve dynamic type for
5515         LOC_OPTIMIZED_OUT vars.
5516
5517 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5518
5519         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5520         decoding.
5521
5522 2018-07-17  Tom Tromey  <tom@tromey.com>
5523
5524         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5525         (compute_enum_list, pascm_set_param_value_x)
5526         (gdbscm_parameter_value): Update.
5527         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5528         (gdbscm_scm_to_host_string): Update.
5529         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5530         Update.
5531         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5532         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5533         * guile/scm-string.c (gdbscm_scm_to_string): Return
5534         unique_xmalloc_ptr.
5535         (gdbscm_scm_to_host_string): Likewise.
5536
5537 2018-07-17  Tom Tromey  <tom@tromey.com>
5538
5539         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5540         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5541         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5542         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5543         unique_xmalloc_ptr.
5544
5545 2018-07-17  Tom Tromey  <tom@tromey.com>
5546
5547         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5548         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5549         Update.
5550         * guile/scm-cmd.c (cmdscm_function): Update.
5551         * guile/scm-pretty-print.c
5552         (ppscm_print_exception_unless_memory_error): Update.
5553         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5554         Return unique_xmalloc_ptr.
5555
5556 2018-07-17  Tom Tromey  <tom@tromey.com>
5557
5558         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5559         Use string_printf.
5560
5561 2018-07-17  Jim Wilson  <jimw@sifive.com>
5562
5563         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5564         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5565         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5566         unecessary braces after EF_RISCV_RVC test.  Delete call to
5567         set_gdbarch_decr_pc_after_break.
5568
5569         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5570         RISCV_LAST_FP_REGNUM + 1.
5571         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5572
5573 2018-07-17  Tom Tromey  <tom@tromey.com>
5574
5575         * configure.ac: Remove --disable-gdbcli.
5576         * configure: Rebuild.
5577         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5578         (SUBDIR_CLI_CFLAGS): Remove.
5579         (SFILES): Use SUBDIR_CLI_SRCS.
5580         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5581
5582 2018-07-17  Tom Tromey  <tom@tromey.com>
5583
5584         PR gdb/18624:
5585         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5586
5587 2018-07-16  Jim Wilson  <jimw@sifive.com>
5588
5589         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5590
5591 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5592
5593         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5594         variable.
5595         (libunwind_frame_sniffer): Likewise.
5596         (libunwind_frame_prev_register): Likewise.
5597         (libunwind_sigtramp_frame_sniffer): Likewise.
5598         * ia64-tdep.c (ia64_access_reg): Likewise.
5599         (ia64_access_rse_reg): Likewise.
5600         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5601         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5602
5603 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5604
5605         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5606
5607 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5608
5609         * remote-sim.c (gdbsim_target::close,
5610         gdbsim_target::mourn_inferior): Remove unused variables.
5611
5612 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5613
5614         * ia64-tdep.c (ktab_buf): New global.
5615         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5616         (get_kernel_table): Adjust.
5617
5618 2018-07-16  Tom Tromey  <tom@tromey.com>
5619
5620         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5621         * dwarf2read.c (using_directives, new_symbol): Use
5622         outermost_context_p.
5623         * dbxread.c (process_one_symbol): Use outermost_context_p.
5624         * coffread.c (coff_symtab_read): Use outermost_context_p.
5625
5626 2018-07-16  Tom Tromey  <tom@tromey.com>
5627
5628         * dwarf2read.c (using_directives, read_func_scope)
5629         (read_lexical_block_scope): Update.
5630         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5631         * buildsym.h (local_using_directives, global_using_directives):
5632         Don't declare.
5633         (get_local_using_directives, set_local_using_directives)
5634         (get_global_using_directives): Declare.
5635         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5636         m_global_using_directives>: New members.
5637         (finish_block_internal, prepare_for_building)
5638         (reset_symtab_globals, end_symtab_get_static_block)
5639         (push_context): Update.
5640         (get_local_using_directives, set_local_using_directives)
5641         (get_global_using_directives): New functions.
5642         (buildsym_init): Update.
5643
5644 2018-07-16  Tom Tromey  <tom@tromey.com>
5645
5646         * xcoffread.c (xcoff_initial_scan): Don't call
5647         free_pending_blocks.
5648         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5649         * buildsym.h (class scoped_free_pendings): Add constructor.
5650         (free_pending_blocks): Don't declare.
5651         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5652         (free_pending_blocks): Now static.
5653
5654 2018-07-16  Tom Tromey  <tom@tromey.com>
5655
5656         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5657         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5658         member.
5659         (struct subfile_stack): Remove.
5660         (subfile_stack): Remove.
5661         (push_subfile, pop_subfile, buildsym_init): Update.
5662
5663 2018-07-16  Tom Tromey  <tom@tromey.com>
5664
5665         * buildsym.c (push_subfile): Use gdb_assert.
5666         (pop_subfile): Use gdb_assert.
5667
5668 2018-07-16  Tom Tromey  <tom@tromey.com>
5669
5670         * buildsym.h (merge_symbol_lists): Remove.
5671         * buildsym.c (merge_symbol_lists): Remove.
5672
5673 2018-07-16  Tom Tromey  <tom@tromey.com>
5674
5675         * stabsread.c (scan_file_globals): Update comment.
5676         * stabsread.h (scan_file_globals): Move from buildsym.h.
5677         * buildsym.h (scan_file_globals): Move to stabsread.h.
5678
5679 2018-07-16  Tom Tromey  <tom@tromey.com>
5680
5681         * xcoffread.c (xcoff_new_init): Update.
5682         * mipsread.c (mipscoff_new_init): Update.
5683         * mdebugread.c (mdebug_build_psymtabs): Update.
5684         * elfread.c (elf_new_init): Update.
5685         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5686         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5687         * buildsym.h (buildsym_new_init): Don't declare.
5688         * buildsym.c (buildsym_new_init): Remove.
5689
5690 2018-07-16  Tom Tromey  <tom@tromey.com>
5691
5692         * stabsread.h (within_function): Move from buildsym.h.
5693         * stabsread.c (start_stabs): Clear within_function.
5694         * coffread.c (coff_start_symtab): Clear within_function.
5695         * buildsym.h (within_function): Move to stabsread.h.
5696         * buildsym.c (prepare_for_building): Update.
5697
5698 2018-07-16  Tom Tromey  <tom@tromey.com>
5699
5700         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5701         * dwarf2read.c (dwarf2_start_symtab): Don't set
5702         processing_gcc_compilation.
5703         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5704
5705 2018-07-16  Tom Tromey  <tom@tromey.com>
5706
5707         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5708         (next_symbol_text_func): Move from buildsym.h.
5709         * stabsread.c (hashname): Move from buildsym.c.
5710         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5711         (next_symbol_text_func, hashname): Move to stabsread.h.
5712         * buildsym.c: Don't include bcache.h
5713         (hashname): Move to stasbread.c.
5714
5715 2018-07-16  Tom Tromey  <tom@tromey.com>
5716
5717         * buildsym.h (context_stack_size): Don't declare.
5718         * buildsym.c (context_stack_size): New global.
5719
5720 2018-07-16  Tom Tromey  <tom@tromey.com>
5721
5722         * dbxread.c (processing_acc_compilation): New global.
5723         * buildsym.h (processing_acc_compilation): Don't declare.
5724
5725 2018-07-16  Tom Tromey  <tom@tromey.com>
5726
5727         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5728         * dbxread.c (read_ofile_symtab): Update.
5729         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5730         * buildsym.h (last_source_start_addr): Remove.
5731         (set_last_source_start_addr, get_last_source_start_addr):
5732         Declare.
5733         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5734         parameter.
5735         (struct buildsym_compunit) <m_last_source_start_addr>: New
5736         member.
5737         (prepare_for_building): Remove start_addr parameter.
5738         (start_symtab, restart_symtab, end_symtab_get_static_block)
5739         (end_symtab_with_blockvector): Update.
5740         (set_last_source_start_addr, get_last_source_start_addr): New
5741         functions.
5742
5743 2018-07-16  Tom Tromey  <tom@tromey.com>
5744
5745         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5746         member.
5747         (have_line_numbers): Remove.
5748         (record_line, prepare_for_building, end_symtab_get_static_block)
5749         (augment_type_symtab): Update.
5750
5751 2018-07-16  Tom Tromey  <tom@tromey.com>
5752
5753         * buildsym.c (~buildsym_compunit): Free the macro table.
5754         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5755         methods.
5756         <m_pending_macros>: New member.
5757         (pending_macros): Remove.
5758         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5759         (reset_symtab_globals, end_symtab_get_static_block)
5760         (end_symtab_with_blockvector, augment_type_symtab)
5761         (buildsym_init): Update.
5762
5763 2018-07-16  Tom Tromey  <tom@tromey.com>
5764
5765         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5766         parameter.
5767         (buildsym_compunit::set_last_source_file): New method.
5768         <m_last_source_file>: New member.
5769         (prepare_for_building): Remove "name" parameter.
5770         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5771         (last_source_file): Remove.
5772         (set_last_source_file, get_last_source_file): Update.
5773
5774 2018-07-16  Tom Tromey  <tom@tromey.com>
5775
5776         * buildsym.c (prepare_for_building): Add assert.
5777
5778 2018-07-16  Tom Tromey  <tom@tromey.com>
5779
5780         * buildsym.c (~buildsym_compunit): Update.
5781         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5782         (start_subfile, patch_subfile_names)
5783         (end_symtab_with_blockvector): Update.
5784
5785 2018-07-16  Tom Tromey  <tom@tromey.com>
5786
5787         * buildsym.c (struct buildsym_compunit): Add constructor,
5788         destructor, initializers.
5789         (start_buildsym_compunit): Remove.
5790         (free_buildsym_compunit): Use "delete".
5791         (start_symtab, restart_symtab): Use "new".
5792
5793 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5794
5795         * symfile.c (set_objfile_default_section_offset): Remove struct
5796         keyword.
5797
5798 2018-07-14  Stafford Horne  <shorne@gmail.com>
5799
5800         * (Responsible Maintainers): Add myself as or1k maintainer.
5801
5802 2018-07-13  Tom Tromey  <tom@tromey.com>
5803
5804         * symfile.c (set_objfile_default_section_offset): Use extra braces
5805         around initializer.
5806
5807 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5808
5809         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5810         non-branching basr.
5811
5812 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5813
5814         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5815         unittests/cli-utils-selftests.c
5816         * unittests/cli-utils-selftests.c: New file.
5817
5818 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5819
5820         * NEWS: Mention new commands. Mention change to 'thread apply'.
5821
5822 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5823
5824         * thread.c (thr_try_catch_cmd): New function.
5825         (thread_apply_all_command): Handle qcs flags.
5826         (thread_apply_command): Handle qcs flags.
5827         (taas_command): New function.
5828         (tfaas_command): New function.
5829         (_initialize_thread): Update to setup the new commands 'taas
5830         and 'tfaas'. Change doc string for 'thread apply'.
5831
5832 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5833
5834         * stack.c: (trailing_outermost_frame): New function, mostly
5835         extracted from backtrace_command_1.
5836         (leading_innermost_frame): New function.
5837         (backtrace_command_1): Update to call trailing_outermost_frame.
5838         (frame_apply_command_count): New function.
5839         (frame_apply_level_command): New function.
5840         (frame_apply_all_command): New function.
5841         (frame_apply_command): New function.
5842         (faas_command): New function.
5843         (frame_cmd_list): New variable.
5844         (_initialize_stack): Update to setup the new commands 'frame apply'
5845         and 'faas'.
5846
5847 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5848
5849         * cli-utils.c (number_or_range_parser::get_number): Only handle
5850         numbers or convenience var as numbers.
5851         (parse_flags): New function.
5852         (parse_flags_qcs): New function.
5853         (number_or_range_parser::finished): Ensure parsing end is detected
5854         before end of string.
5855         * cli-utils.h (parse_flags): New function.
5856         (parse_flags_qcs): New function.
5857         (number_or_range_parser): Remove m_finished bool.
5858         (number_or_range_parser::skip_range): Set m_in_range to false.
5859
5860 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5861
5862         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5863         on Windows.
5864
5865 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5866             Jan Kratochvil  <jan.kratochvil@redhat.com>
5867             Paul Fertser  <fercerpav@gmail.com>
5868             Tsutomu Seki  <sekiriki@gmail.com>
5869             Pedro Alves  <palves@redhat.com>
5870
5871         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5872         'unittests/parse-connection-spec-selftests.c'.
5873         (COMMON_SFILES): Add 'common/netstuff.c'.
5874         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5875         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5876         * common/netstuff.c: New file.
5877         * common/netstuff.h: New file.
5878         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5879         (wait_for_connect): Update comment.  New parameter
5880         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5881         Use 'sock' directly instead of 'scb->fd'.
5882         (try_connect): New function, with code from 'net_open'.
5883         (net_open): Rewrite main loop to deal with multiple
5884         sockets/addresses.  Handle IPv6-style hostnames; implement
5885         support for IPv6 connections.
5886         * unittests/parse-connection-spec-selftests.c: New file.
5887
5888 2018-07-11  Pedro Alves  <palves@redhat.com>
5889
5890         PR gdb/23377
5891         * remote.c (remote_target::remote_detach_pid): Call
5892         set_current_process.
5893
5894 2018-07-11  Pedro Alves  <palves@redhat.com>
5895
5896         * h8300-tdep.c (h8300_gdbarch_init): Remove
5897         set_gdbarch_ecoff_reg_to_regnum calls.
5898
5899 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5900
5901         PR c++/23373
5902         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5903         offsets/sizes for static members of a class/struct.
5904
5905 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5906
5907         * target-descriptions.c (tdesc_register_bitsize): Rename.
5908         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5909         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5910         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5911
5912 2018-07-10  Tom Tromey  <tom@tromey.com>
5913
5914         * breakpoint.c (moribund_locations): Now static and a
5915         std::vector.
5916         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5917         (build_bpstat_chain, update_global_location_list)
5918         (breakpoint_retire_moribund): Update.
5919         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5920         VEC.
5921
5922 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5923
5924         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5925         (riscv_register_reggroup_p): Use new function, remove unneeded
5926         parenthesis.
5927         (riscv_push_dummy_call): Extend assert to compare against xlen or
5928         flen based on register type.
5929
5930 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5931
5932         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5933
5934 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5935
5936         * remote.c (show_hardware_watchpoint_limit): New function.
5937         (show_hardware_watchpoint_length_limit): New function.
5938         (show_hardware_breakpoint_limit): New function.
5939         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5940         where appropriate, update help text.
5941
5942 2018-07-09  Tom Tromey  <tom@tromey.com>
5943
5944         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5945         (CLIBS): Don't mention NAT_CLIBS.
5946
5947 2018-07-09  Tom Tromey  <tom@tromey.com>
5948
5949         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5950         (LIBGDB_OBS, clean mostlyclean): Update.
5951         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5952
5953 2018-07-09  Tom Tromey  <tom@tromey.com>
5954
5955         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5956         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5957         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5958
5959 2018-07-09  Tom Tromey  <tom@tromey.com>
5960
5961         * Makefile.in (ALLDEPFILES): Remove exec.c.
5962         (COMMON_OBS): Remove exec.o.
5963         (COMMON_SFILES): Add exec.c.
5964
5965 2018-07-09  Tom Tromey  <tom@tromey.com>
5966
5967         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5968
5969 2018-07-09  Tom Tromey  <tom@tromey.com>
5970
5971         * Makefile.in (clean mostlyclean): Remove stamp-version.
5972         (version.c): Depend on stamp-version.
5973         (stamp-version): New rule, from version.c rule.
5974
5975 2018-07-09  Tom Tromey  <tom@tromey.com>
5976
5977         * Makefile.in (init.c): Depend on stamp-init.
5978         (stamp-init): New rule, from init.c rule.
5979         (clean mostlyclean): Remove stamp-init.
5980
5981 2018-07-09  Tom Tromey  <tom@tromey.com>
5982
5983         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5984         SUBDIR_GCC_COMPILE_SRCS.
5985
5986 2018-07-09  Tom Tromey  <tom@tromey.com>
5987
5988         * Makefile.in (init.c): Remove some unused sed rules.
5989
5990 2018-07-09  Tom Tromey  <tom@tromey.com>
5991
5992         * Makefile.in (TSOBS): Remove.
5993         (INIT_FILES): Update.
5994         (LIBGDB_OBS): Update.
5995         (COMMON_SFILES): Add inflow.c.
5996         (SFILES): Remove inflow.c.
5997
5998 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5999
6000         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6001
6002 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6003
6004         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6005         get_saveloc_name, is_signal_frame_name, step_name,
6006         init_remote_name, create_addr_space_name,
6007         destroy_addr_space_name, search_unwind_table_name,
6008         find_dyn_list_name): Constify.
6009
6010 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6011
6012         * darwin-nat.c (darwin_pthread_kill): New function.
6013         (darwin_resume_thread): Use darwin_pthread_kill.
6014
6015 2018-07-05  Tom de Vries  <tdevries@suse.de>
6016
6017         * macroexp.c (macro_buffer) <operator=>: New member function.
6018
6019 2018-07-04  Tom Tromey  <tom@tromey.com>
6020
6021         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6022
6023 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6024
6025         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6026         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6027         * maint.c: Likewise.
6028         * top.c: Likewise.
6029
6030 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6031
6032         * NEWS: Create a new section for the next release branch.
6033         Rename the section of the current branch, now that it has
6034         been cut.
6035
6036 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6037
6038         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6039         * version.in: Bump version to 8.2.50.DATE-git.
6040
6041 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6042             Pedro Alves  <palves@redhat.com>
6043
6044         * linux-nat.c (linux_init_ptrace): Rename to ...
6045         (linux_init_ptrace_procfs): ... this.  Call
6046         linux_proc_init_warnings.
6047         (linux_nat_target::post_attach)
6048         (linux_nat_target::post_startup_inferior): Adjust.
6049         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6050         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6051
6052 2018-07-04  Tom de Vries  <tdevries@suse.de>
6053
6054         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6055         check ...
6056         (read_comp_unit_head): ... here.
6057
6058 2018-07-03  Tom Tromey  <tom@tromey.com>
6059
6060         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6061         (stop_tracing, tstatus_command)
6062         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6063         (print_one_static_tracepoint_marker): Update.
6064         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6065         std::vector.
6066         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6067         VEC.
6068         (all_tracepoints, static_tracepoints_here): Return std::vector.
6069
6070 2018-07-03  Tom Tromey  <tom@tromey.com>
6071
6072         * common/ptid.c (ptid_equal): Remove.
6073         * common/ptid.h (ptid_equal): Don't declare.
6074         * ada-tasks.c: Update.
6075         * breakpoint.c: Update.
6076         * common/agent.c: Update.
6077         * corelow.c: Update.
6078         * darwin-nat-info.c: Update.
6079         * darwin-nat.c: Update.
6080         * dcache.c: Update.
6081         * dtrace-probe.c: Update.
6082         * dummy-frame.c: Update.
6083         * fbsd-nat.c: Update.
6084         * frame.c: Update.
6085         * gdbthread.h: Update.
6086         * gnu-nat.c: Update.
6087         * go32-nat.c: Update.
6088         * inf-loop.c: Update.
6089         * inf-ptrace.c: Update.
6090         * infcall.c: Update.
6091         * infcmd.c: Update.
6092         * inflow.c: Update.
6093         * infrun.c: Update.
6094         * linux-fork.c: Update.
6095         * linux-nat.c: Update.
6096         * linux-thread-db.c: Update.
6097         * mi/mi-cmd-var.c: Update.
6098         * mi/mi-interp.c: Update.
6099         * mi/mi-main.c: Update.
6100         * nto-procfs.c: Update.
6101         * ppc-linux-tdep.c: Update.
6102         * procfs.c: Update.
6103         * python/py-inferior.c: Update.
6104         * python/py-record-btrace.c: Update.
6105         * python/py-record.c: Update.
6106         * ravenscar-thread.c: Update.
6107         * regcache.c: Update.
6108         * remote-sim.c: Update.
6109         * remote.c: Update.
6110         * sol-thread.c: Update.
6111         * solib.c: Update.
6112         * target.c: Update.
6113         * tui/tui-stack.c: Update.
6114         * varobj.c: Update.
6115         * windows-nat.c: Update.
6116         * windows-tdep.c: Update.
6117
6118 2018-07-03  Tom Tromey  <tom@tromey.com>
6119
6120         * common/ptid.c (ptid_match): Remove.
6121         * common/ptid.h (ptid_match): Don't declare.
6122         * fbsd-nat.c: Update.
6123         * infcmd.c: Update.
6124         * infrun.c: Update.
6125         * linux-nat.c: Update.
6126         * record-btrace.c: Update.
6127         * regcache.c: Update.
6128         * remote.c: Update.
6129
6130 2018-07-03  Tom Tromey  <tom@tromey.com>
6131
6132         * common/ptid.c (ptid_tid_p): Remove.
6133         * common/ptid.h (ptid_tid_p): Don't declare.
6134         * sol-thread.c: Update.
6135
6136 2018-07-03  Tom Tromey  <tom@tromey.com>
6137
6138         * common/ptid.c (ptid_lwp_p): Remove.
6139         * common/ptid.h (ptid_lwp_p): Don't declare.
6140         * fbsd-nat.c: Update.
6141         * linux-nat.c: Update.
6142         * nat/linux-procfs.c: Update.
6143         * nat/x86-linux-dregs.c: Update.
6144         * sol-thread.c: Update.
6145
6146 2018-07-03  Tom Tromey  <tom@tromey.com>
6147
6148         * common/ptid.c (ptid_is_pid): Remove.
6149         * common/ptid.h (ptid_is_pid): Don't declare.
6150         * infrun.c: Update.
6151         * linux-nat.c: Update.
6152         * mi/mi-interp.c: Update.
6153         * remote.c: Update.
6154         * thread.c: Update.
6155
6156 2018-07-03  Tom Tromey  <tom@tromey.com>
6157
6158         * common/ptid.c (ptid_get_tid): Remove.
6159         * common/ptid.h (ptid_get_tid): Don't declare.
6160         * ada-tasks.c: Update.
6161         * aix-thread.c: Update.
6162         * bsd-uthread.c: Update.
6163         * darwin-nat.c: Update.
6164         * fbsd-nat.c: Update.
6165         * i386-darwin-nat.c: Update.
6166         * infrun.c: Update.
6167         * linux-tdep.c: Update.
6168         * nto-procfs.c: Update.
6169         * ppc-ravenscar-thread.c: Update.
6170         * python/py-infthread.c: Update.
6171         * ravenscar-thread.c: Update.
6172         * sol-thread.c: Update.
6173         * sparc-ravenscar-thread.c: Update.
6174         * windows-nat.c: Update.
6175
6176 2018-07-03  Tom Tromey  <tom@tromey.com>
6177
6178         * common/ptid.c (ptid_get_lwp): Remove.
6179         * common/ptid.h (ptid_get_lwp): Don't declare.
6180         * aarch64-linux-nat.c: Update.
6181         * ada-tasks.c: Update.
6182         * aix-thread.c: Update.
6183         * amd64-linux-nat.c: Update.
6184         * arm-linux-nat.c: Update.
6185         * corelow.c: Update.
6186         * fbsd-nat.c: Update.
6187         * fbsd-tdep.c: Update.
6188         * gnu-nat.c: Update.
6189         * i386-cygwin-tdep.c: Update.
6190         * i386-gnu-nat.c: Update.
6191         * i386-linux-nat.c: Update.
6192         * ia64-linux-nat.c: Update.
6193         * inf-ptrace.c: Update.
6194         * infrun.c: Update.
6195         * linux-fork.c: Update.
6196         * linux-nat.c: Update.
6197         * linux-tdep.c: Update.
6198         * linux-thread-db.c: Update.
6199         * mips-linux-nat.c: Update.
6200         * nat/aarch64-linux-hw-point.c: Update.
6201         * nat/aarch64-linux.c: Update.
6202         * nat/linux-btrace.c: Update.
6203         * nat/linux-osdata.c: Update.
6204         * nat/linux-procfs.c: Update.
6205         * nat/x86-linux-dregs.c: Update.
6206         * obsd-nat.c: Update.
6207         * ppc-fbsd-nat.c: Update.
6208         * ppc-linux-nat.c: Update.
6209         * procfs.c: Update.
6210         * python/py-infthread.c: Update.
6211         * ravenscar-thread.c: Update.
6212         * remote.c: Update.
6213         * s390-linux-nat.c: Update.
6214         * sol-thread.c: Update.
6215         * sol2-tdep.c: Update.
6216         * spu-linux-nat.c: Update.
6217         * x86-linux-nat.c: Update.
6218         * xtensa-linux-nat.c: Update.
6219
6220 2018-07-03  Tom Tromey  <tom@tromey.com>
6221
6222         * common/ptid.c (ptid_get_pid): Remove.
6223         * common/ptid.h (ptid_get_pid): Don't declare.
6224         * aarch64-linux-nat.c: Update.
6225         * ada-lang.c: Update.
6226         * aix-thread.c: Update.
6227         * alpha-bsd-nat.c: Update.
6228         * amd64-fbsd-nat.c: Update.
6229         * amd64-linux-nat.c: Update.
6230         * arm-linux-nat.c: Update.
6231         * arm-nbsd-nat.c: Update.
6232         * auxv.c: Update.
6233         * break-catch-syscall.c: Update.
6234         * breakpoint.c: Update.
6235         * bsd-uthread.c: Update.
6236         * corelow.c: Update.
6237         * ctf.c: Update.
6238         * darwin-nat.c: Update.
6239         * fbsd-nat.c: Update.
6240         * fbsd-tdep.c: Update.
6241         * gcore.c: Update.
6242         * gnu-nat.c: Update.
6243         * hppa-nbsd-nat.c: Update.
6244         * hppa-obsd-nat.c: Update.
6245         * i386-fbsd-nat.c: Update.
6246         * ia64-linux-nat.c: Update.
6247         * inf-ptrace.c: Update.
6248         * infcmd.c: Update.
6249         * inferior.c: Update.
6250         * inferior.h: Update.
6251         * inflow.c: Update.
6252         * infrun.c: Update.
6253         * linux-fork.c: Update.
6254         * linux-nat.c: Update.
6255         * linux-tdep.c: Update.
6256         * linux-thread-db.c: Update.
6257         * m68k-bsd-nat.c: Update.
6258         * mi/mi-interp.c: Update.
6259         * mi/mi-main.c: Update.
6260         * mips-linux-nat.c: Update.
6261         * mips-nbsd-nat.c: Update.
6262         * mips64-obsd-nat.c: Update.
6263         * nat/aarch64-linux-hw-point.c: Update.
6264         * nat/aarch64-linux.c: Update.
6265         * nat/linux-btrace.c: Update.
6266         * nat/linux-osdata.c: Update.
6267         * nat/linux-procfs.c: Update.
6268         * nat/x86-linux-dregs.c: Update.
6269         * nto-procfs.c: Update.
6270         * obsd-nat.c: Update.
6271         * ppc-linux-nat.c: Update.
6272         * ppc-nbsd-nat.c: Update.
6273         * ppc-obsd-nat.c: Update.
6274         * proc-service.c: Update.
6275         * procfs.c: Update.
6276         * python/py-inferior.c: Update.
6277         * python/py-infthread.c: Update.
6278         * ravenscar-thread.c: Update.
6279         * record.c: Update.
6280         * remote-sim.c: Update.
6281         * remote.c: Update.
6282         * rs6000-nat.c: Update.
6283         * s390-linux-nat.c: Update.
6284         * sh-nbsd-nat.c: Update.
6285         * sol-thread.c: Update.
6286         * sparc-nat.c: Update.
6287         * sparc64-tdep.c: Update.
6288         * spu-linux-nat.c: Update.
6289         * spu-tdep.c: Update.
6290         * target-debug.h: Update.
6291         * target.c: Update.
6292         * thread.c: Update.
6293         * tid-parse.c: Update.
6294         * tracefile-tfile.c: Update.
6295         * vax-bsd-nat.c: Update.
6296         * windows-nat.c: Update.
6297         * x86-linux-nat.c: Update.
6298         * x86-nat.c: Update.
6299
6300 2018-07-03  Tom Tromey  <tom@tromey.com>
6301
6302         * common/ptid.c (pid_to_ptid): Remove.
6303         * common/ptid.h (pid_to_ptid): Don't declare.
6304         * aix-thread.c: Update.
6305         * arm-linux-nat.c: Update.
6306         * common/ptid.c: Update.
6307         * common/ptid.h: Update.
6308         * corelow.c: Update.
6309         * ctf.c: Update.
6310         * darwin-nat.c: Update.
6311         * fbsd-nat.c: Update.
6312         * fork-child.c: Update.
6313         * gnu-nat.c: Update.
6314         * go32-nat.c: Update.
6315         * inf-ptrace.c: Update.
6316         * infcmd.c: Update.
6317         * inferior.c: Update.
6318         * infrun.c: Update.
6319         * linux-fork.c: Update.
6320         * linux-nat.c: Update.
6321         * nat/aarch64-linux-hw-point.c: Update.
6322         * nat/fork-inferior.c: Update.
6323         * nat/x86-linux-dregs.c: Update.
6324         * nto-procfs.c: Update.
6325         * obsd-nat.c: Update.
6326         * procfs.c: Update.
6327         * progspace.c: Update.
6328         * remote.c: Update.
6329         * rs6000-nat.c: Update.
6330         * s390-linux-nat.c: Update.
6331         * sol-thread.c: Update.
6332         * spu-linux-nat.c: Update.
6333         * target.c: Update.
6334         * top.c: Update.
6335         * tracefile-tfile.c: Update.
6336         * windows-nat.c: Update.
6337
6338 2018-07-03  Tom Tromey  <tom@tromey.com>
6339
6340         * common/ptid.h (ptid_build): Don't declare.
6341         * common/ptid.c (ptid_build): Remove.
6342         * aix-thread.c: Update.
6343         * bsd-kvm.c: Update.
6344         * bsd-uthread.c: Update.
6345         * common/agent.c: Update.
6346         * common/ptid.c: Update.
6347         * common/ptid.h: Update.
6348         * corelow.c: Update.
6349         * darwin-nat.c: Update.
6350         * fbsd-nat.c: Update.
6351         * gnu-nat.c: Update.
6352         * linux-fork.c: Update.
6353         * linux-nat.c: Update.
6354         * linux-thread-db.c: Update.
6355         * nat/linux-osdata.c: Update.
6356         * nat/linux-procfs.c: Update.
6357         * nto-procfs.c: Update.
6358         * obsd-nat.c: Update.
6359         * proc-service.c: Update.
6360         * procfs.c: Update.
6361         * ravenscar-thread.c: Update.
6362         * remote-sim.c: Update.
6363         * remote.c: Update.
6364         * sol-thread.c: Update.
6365         * target.c: Update.
6366         * windows-nat.c: Update.
6367
6368 2018-07-03  Tom Tromey  <tom@tromey.com>
6369
6370         * infrun.c (follow_exec): Use exit_inferior_silent.
6371         * inferior.c (exit_inferior_num_silent): Remove.
6372         * inferior.h (exit_inferior_num_silent): Don't declare.
6373
6374 2018-07-03  Tom Tromey  <tom@tromey.com>
6375
6376         PR cli/23340:
6377         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6378         inferior_ptid on error.
6379
6380 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6381             Simon Marchi  <simon.marchi@polymtl.ca>
6382
6383         PR tdep/8282
6384         * disasm.h (gdb_disassembler): Add
6385         `m_disassembler_options_holder'. member
6386         * disasm.c (get_all_disassembler_options): New function.
6387         (gdb_disassembler::gdb_disassembler): Use it.
6388         (gdb_buffered_insn_length_init_dis): Likewise.
6389         (gdb_buffered_insn_length): Adjust accordingly.
6390         (set_disassembler_options): Handle options with arguments.
6391         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6392         line if showing options with descriptions.
6393         (disassembler_options_completer): Adapt to using the
6394         `disasm_options_and_args_t' structure.
6395         * mips-tdep.c (mips_disassembler_options): New variable.
6396         (mips_disassembler_options_o32): Likewise.
6397         (mips_disassembler_options_n32): Likewise.
6398         (mips_disassembler_options_n64): Likewise.
6399         (gdb_print_insn_mips): Don't set `disassembler_options'.
6400         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6401         functions.
6402         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6403         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6404         `gdbarch_disassembler_options_implicit' and
6405         `gdbarch_valid_disassembler_options'.
6406         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6407         `disasm_options_and_args_t' structure.
6408         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6409         method.
6410         (valid_disassembler_options): Switch from `disasm_options_t' to
6411         the `disasm_options_and_args_t' structure.
6412         * NEWS: Document `set disassembler-options' support for the MIPS
6413         target.
6414         * gdbarch.h: Regenerate.
6415         * gdbarch.c: Regenerate.
6416
6417 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6418
6419         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6420
6421 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6422
6423         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6424         parameter in call to amd64_target_description.
6425         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6426         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6427         (amd64fbsd_init_abi): Likewise.
6428         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6429         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6430         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6431         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6432
6433 2018-06-29  Pedro Alves  <palves@redhat.com>
6434
6435         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6436         "segments" parameter.
6437         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6438         (_initialize_amd64_tdep): Update call to
6439         amd64_create_target_description.
6440         (amd64_target_description): Add "segments" parameter.  Adjust
6441         the implementation to use it.
6442         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6443         call to amd64_create_target_description.
6444         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6445         * gdb/arch/amd64.h (amd64_create_target_description): Add
6446         "segments" register.
6447         * gdb/arch/amd64.c (amd64_create_target_description): Add
6448         "segments" parameter.  Call create_feature_i386_64bit_segments
6449         only if SEGMENTS is true.
6450         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6451         call to amd64_create_target_description.
6452
6453 2018-06-29  Pedro Alves  <palves@redhat.com>
6454
6455         * thread.c (thread_target_id_str): New, factored out from ...
6456         (print_thread_info_1): ... here.  Use it to compute the max
6457         "Target Id" column width.
6458
6459 2018-06-29  Pedro Alves  <palves@redhat.com>
6460
6461         * remote.c (remote_target::extra_thread_info): Delete
6462         'display_buf' and 'n' locals.  from the cache, regardless of
6463         packet mechanims is in use.  Use cache for qThreadExtra and qP
6464         methods too.
6465
6466 2018-06-29  Pedro Alves  <palves@redhat.com>
6467
6468         * blockframe.c (find_pc_sect_containing_function): New function.
6469         * breakpoint.c (print_breakpoint_location): Don't call
6470         find_pc_sect_function.
6471         * linespec.c (create_sals_line_offset): Record the location's
6472         symbol in the sal.
6473         * linespec.c (convert_address_location_to_sals): Fill in sal's
6474         symbol with find_pc_sect_containing_function.
6475         * symtab.c (find_function_start_sal): Rename to ...
6476         (find_function_start_sal_1): ... this.
6477         (find_function_start_sal): Reimplement as wrapper around
6478         find_function_start_sal_1, and use
6479         find_pc_sect_containing_function to fill in the sal's symbol.
6480         (find_function_start_sal(symbol*, bool)): Adjust.
6481         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6482         comments.
6483         (find_pc_sect_containing_function): Declare.
6484
6485 2018-06-29  Pedro Alves  <palves@redhat.com>
6486
6487         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6488         true if the the location has no symbol.
6489
6490 2018-06-28  Tom Tromey  <tom@tromey.com>
6491
6492         * NEWS: Mention --enable-codesign.
6493         * silent-rules.mk (ECHO_SIGN): New variable.
6494         * configure.ac: Add --enable-codesign.
6495         * configure: Rebuild.
6496         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6497         (gdb$(EXEEXT)): Optionally invoke codesign.
6498
6499 2018-06-28  Pedro Alves  <palves@redhat.com>
6500
6501         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6502         comments.
6503         (switch_to_thread_no_regs): Adjust comment.
6504         * infcmd.c (stop_pc): Delete.
6505         (post_create_inferior, info_program_command): Replace references
6506         to stop_pc with references to thread_info->suspend.stop_pc.
6507         * inferior.h (stop_pc): Delete declaration.
6508         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6509         (handle_inferior_event_1, handle_signal_stop)
6510         (process_event_stop_test, keep_going_stepped_thread)
6511         (handle_step_into_function, handle_step_into_function_backward)
6512         (print_stop_location): Replace references to stop_pc with
6513         references to thread_info->suspend.stop_pc.
6514         (struct infcall_suspend_state) <stop_pc>: Delete field.
6515         (save_infcall_suspend_state, restore_infcall_suspend_state):
6516         Remove references to inf_stat->stop_pc.
6517         * linux-fork.c (fork_load_infrun_state): Likewise.
6518         * record-btrace.c (record_btrace_set_replay): Likewise.
6519         * record-full.c (record_full_goto_entry): Likewise.
6520         * remote.c (print_one_stopped_thread): Likewise.
6521         * target.c (target_resume): Extend comment.
6522         * thread.c (set_executing_thread): New.
6523         (set_executing): Use it.
6524         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6525         Remove references to stop_pc.
6526
6527 2018-06-28  Pedro Alves  <palves@redhat.com>
6528
6529         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6530         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6531
6532 2018-06-28  Tom Tromey  <tom@tromey.com>
6533
6534         * coffread.c (coff_symfile_finish): Update.
6535         * xcoffread.c (xcoff_symfile_finish): Update.
6536         * elfread.c (elf_symfile_finish): Update.
6537         * symfile.h (dwarf2_free_objfile): Don't declare.
6538         * dwarf2read.c (_initialize_dwarf2_read): Use
6539         register_objfile_data_with_cleanup.
6540         (dwarf2_free_objfile): Now static.  Change signature.
6541
6542 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6543
6544         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6545         option "-o" to add-symbol-file-load to add an offset to each
6546         section's load address.
6547         * symfile.c (set_objfile_default_section_offset): New function.
6548
6549 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6550
6551         * symfile.c (add_symbol_file_command): Make sure that sections
6552         with the same name are sorted in the same order.
6553
6554 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6555
6556         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6557         require the second argument.  If omitted, load sections at the
6558         addresses specified in the file.
6559
6560 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6561
6562         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6563         (_initialize_symfile): Add option "-o" to symbol-file to add an
6564         offset to each section of the symbol file.
6565
6566 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6567
6568         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6569
6570 2018-06-27  Tom Tromey  <tom@tromey.com>
6571
6572         * stack.c (_initialize_stack): Update "func" help text.
6573
6574 2018-06-27  Tom Tromey  <tom@tromey.com>
6575
6576         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6577         std::vector.
6578         (unwind_infopy_str, pyuw_create_unwind_info)
6579         (unwind_infopy_add_saved_register, pyuw_sniffer)
6580         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6581         Update.
6582         (struct saved_reg): Add constructor.
6583         <value>: Now a gdbpy_ref<>.
6584
6585 2018-06-27  Tom Tromey  <tom@tromey.com>
6586
6587         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6588
6589 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6590
6591         * gdb-gdb.py.in: Format using autopep8.
6592
6593 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6594
6595         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6596         (type_lookup_function): Recognize CORE_ADDR values.
6597
6598 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6599
6600         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6601         print tag_name.
6602
6603 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6604
6605         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6606         <__lt__>: Add.
6607
6608 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6609
6610         * gdb-gdb.py: Move to...
6611         * gdb-gdb.py.in: ... here.
6612         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6613         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6614         dependencies.
6615         (distclean): Remove gdb-gdb.py when cleaning.
6616         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6617         * configure: Re-generate.
6618
6619 2018-06-27  Pedro Alves  <palves@redhat.com>
6620
6621         * proc-service.c (get_ps_regcache): New.
6622         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6623         (ps_lsetfpregs): Use it.
6624
6625 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6626
6627         PR gdb/21695
6628         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6629         (dwarf_decode_lines_1): Adjust.
6630
6631 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6632
6633         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6634         override.
6635         <info_proc>: Likewise.
6636
6637 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6638
6639         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6640         to windows_fetch_one_register, and only handle the case of
6641         fetching one register.  Move the code that reloads the context
6642         and iterates over all registers if R is negative to...
6643         (windows_nat_target::fetch_registers): ... here.
6644         (do_windows_store_inferior_registers): Rename to
6645         windows_store_one_register, and only handle the case of storing
6646         one register.  Move the code that handles the case where r is
6647         negative to...
6648         (windows_nat_target::store_registers) ... here.
6649
6650 2018-06-26  Tom Tromey  <tom@tromey.com>
6651
6652         PR rust/22574:
6653         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6654         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6655         Update.
6656         (rust_internal_print_type): Add podata parameter.
6657         (rust_print_type): Update.
6658
6659 2018-06-26  Tom Tromey  <tom@tromey.com>
6660
6661         * typeprint.h (struct print_offset_data) <update, finish,
6662         maybe_print_hole>: New methods.
6663         <indentation>: New constant.
6664         * typeprint.c (print_offset_data::indentation): Define.
6665         (print_offset_data::maybe_print_hole, print_offset_data::update)
6666         (print_offset_data::finish): Move from c-typeprint.c and rename.
6667         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6668         (print_spaces_filtered_with_print_options): Update.
6669         (c_print_type_union_field_offset, maybe_print_hole)
6670         (c_print_type_struct_field_offset): Move to typeprint.c and
6671         rename.
6672         (c_type_print_base_struct_union): Update.
6673
6674 2018-06-25  Pedro Alves  <palves@redhat.com>
6675
6676         * gdbthread.h (thread_info_ref, delete_thread)
6677         (delete_thread_silent, first_thread_of_inferior)
6678         (any_thread_of_inferior, switch_to_thread)
6679         (enable_thread_stack_temporaries)
6680         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6681         (get_last_thread_stack_temporary)
6682         (value_in_thread_stack_temporaries, can_access_registers_thread):
6683         Spell out "struct thread_info" instead of just "thread_info".
6684         * inferior.h (notice_new_inferior): Likewise.
6685
6686 2018-06-25  Pedro Alves  <palves@redhat.com>
6687
6688         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6689         pass thread_info pointer to delete_thread.
6690         (windows_nat_target::detach): Pass inferior pointer to
6691         detach_inferior.
6692         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6693         delete_thread.
6694         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6695         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6696         and pass a thread_info pointer to delete_thread.
6697         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6698         pass thread_info pointer to delete_thread.
6699         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6700         delete_thread_silent call.
6701         * procfs.c (procfs_target::detach): Pass inferior pointer to
6702         detach_inferior.
6703         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6704         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6705         delete_thread_silent call.
6706         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6707         pass thread_info pointer to delete_thread.
6708         (windows_nat_target::detach): Pass inferior pointer to
6709         delete_inferior.
6710
6711 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6712
6713         * regcache.c (readable_regcache::read_part): Fix asserts.
6714         (reg_buffer::raw_collect_part): New function.
6715         (regcache::write_part): Fix asserts.
6716         (reg_buffer::raw_supply_part): New function.
6717         (regcache::transfer_regset_register): New helper function.
6718         (regcache::transfer_regset): Call new functions.
6719         (regcache_supply_regset): Use gdb_byte*.
6720         (regcache::supply_regset): Likewise.
6721         (regcache_collect_regset): Likewise.
6722         (regcache::collect_regset): Likewise.
6723         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6724         (reg_buffer::raw_supply_part): Likewise.
6725         (regcache::transfer_regset_register): Likewise.
6726         (regcache::transfer_regset): Use gdb_byte*.
6727
6728 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6729
6730         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6731
6732 2018-06-21  Pedro Alves  <palves@redhat.com>
6733
6734         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6735         instead of a ptid_t.  All callers adjusted.
6736         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6737         adjusted.
6738         (print_ada_task_info, display_current_task_id, task_command_1):
6739         Adjust.
6740         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6741         inferior_thread.
6742         (breakpoint_kind): Adjust.
6743         (remove_breakpoints_pid): Rename to ...
6744         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6745         pointer.  All callers adjusted.
6746         (bpstat_clear_actions): Use inferior_thread.
6747         (get_bpstat_thread): New.
6748         (bpstat_do_actions): Use it.
6749         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6750         to take a thread_info pointer.  All callers adjusted.
6751         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6752         (breakpoint_re_set_thread): Use inferior_thread.
6753         * breakpoint.h (struct inferior): Forward declare.
6754         (bpstat_stop_status): Update.
6755         (remove_breakpoints_pid): Delete.
6756         (remove_breakpoints_inf): New.
6757         * bsd-uthread.c (bsd_uthread_target::wait)
6758         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6759         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6760         (maint_btrace_packet_history_cmd)
6761         (maint_btrace_clear_packet_history_cmd): Adjust.
6762         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6763         inferior_thread.
6764         * cli/cli-interp.c: Include "inferior.h".
6765         * common/refcounted-object.h (struct
6766         refcounted_object_ref_policy): New.
6767         * compile/compile-object-load.c: Include gdbthread.h.
6768         (store_regs): Use inferior_thread.
6769         * corelow.c (core_target::close): Use current_inferior.
6770         (core_target_open): Adjust to use first_thread_of_inferior and use
6771         the current inferior.
6772         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6773         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6774         <thread>: ... this new field.  All references adjusted.
6775         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6776         Take a thread_info pointer instead of a ptid_t.
6777         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6778         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6779         thread_info pointer instead of a ptid_t.
6780         * elfread.c: Include "inferior.h".
6781         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6782         Use inferior_thread.
6783         * eval.c (evaluate_subexp): Likewise.
6784         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6785         inferior_thread.
6786         * gdb_proc_service.h (struct thread_info): Forward declare.
6787         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6788         <thread>: ... this new field.  All references adjusted.
6789         * gdbarch.h, gdbarch.c: Regenerate.
6790         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6791         'thread' parameter.  All implementations and callers adjusted.
6792         * gdbthread.h (thread_info) <set_running>: New method.
6793         (delete_thread, delete_thread_silent): Take a thread_info pointer
6794         instead of a ptid.
6795         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6796         (first_thread_of_process): Delete, replaced by ...
6797         (first_thread_of_inferior): ... this new function.  All callers
6798         adjusted.
6799         (any_live_thread_of_process): Delete, replaced by ...
6800         (any_live_thread_of_inferior): ... this new function.  All callers
6801         adjusted.
6802         (switch_to_thread, switch_to_no_thread): Declare.
6803         (is_executing): Delete.
6804         (enable_thread_stack_temporaries): Update comment.
6805         <enable_thread_stack_temporaries>: Take a thread_info pointer
6806         instead of a ptid_t.  Incref the thread.
6807         <~enable_thread_stack_temporaries>: Decref the thread.
6808         <m_ptid>: Delete
6809         <m_thr>: New.
6810         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6811         (get_last_thread_stack_temporary)
6812         (value_in_thread_stack_temporaries, can_access_registers_thread):
6813         Take a thread_info pointer instead of a ptid_t.  All callers
6814         adjusted.
6815         * infcall.c (get_call_return_value): Use inferior_thread.
6816         (run_inferior_call): Work with thread pointers instead of ptid_t.
6817         (call_function_by_hand_dummy): Work with thread pointers instead
6818         of ptid_t.  Use thread_info_ref.
6819         * infcmd.c (proceed_thread_callback): Access thread's state
6820         directly.
6821         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6822         access thread's state directly.
6823         (continue_command): Use inferior_thread.
6824         (info_program_command): Use find_thread_ptid and access thread
6825         state directly.
6826         (proceed_after_attach_callback): Use thread state directly.
6827         (notice_new_inferior): Take a thread_info pointer instead of a
6828         ptid_t.  All callers adjusted.
6829         (exit_inferior): Take an inferior pointer instead of a pid.  All
6830         callers adjusted.
6831         (exit_inferior_silent): New.
6832         (detach_inferior): Delete.
6833         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6834         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6835         (detach_inferior_command, kill_inferior_command): Use
6836         find_inferior_id instead of valid_gdb_inferior_id and
6837         gdb_inferior_id_to_pid.
6838         (inferior_command): Use inferior and thread pointers.
6839         * inferior.h (struct thread_info): Forward declare.
6840         (notice_new_inferior): Take a thread_info pointer instead of a
6841         ptid_t.  All callers adjusted.
6842         (detach_inferior): Delete declaration.
6843         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6844         instead of a pid.  All callers adjusted.
6845         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6846         (valid_gdb_inferior_id): Delete.
6847         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6848         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6849         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6850         ...
6851         <inf>: ... this new field.
6852         <step_ptid>: Delete, replaced by ...
6853         <step_thread>: ... this new field.
6854         (get_displaced_stepping_state): Take an inferior pointer instead
6855         of a pid.  All callers adjusted.
6856         (displaced_step_in_progress_any_inferior): Adjust.
6857         (displaced_step_in_progress_thread): Take a thread pointer instead
6858         of a ptid_t.  All callers adjusted.
6859         (displaced_step_in_progress, add_displaced_stepping_state): Take
6860         an inferior pointer instead of a pid.  All callers adjusted.
6861         (get_displaced_step_closure_by_addr): Adjust.
6862         (remove_displaced_stepping_state): Take an inferior pointer
6863         instead of a pid.  All callers adjusted.
6864         (displaced_step_prepare_throw, displaced_step_prepare)
6865         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6866         All callers adjusted.
6867         (start_step_over): Adjust.
6868         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6869         displaced step queue.
6870         (do_target_resume): Adjust.
6871         (fetch_inferior_event): Use inferior_thread.
6872         (context_switch, get_inferior_stop_soon): Take an
6873         execution_control_state pointer instead of a ptid_t.  All callers
6874         adjusted.
6875         (switch_to_thread_cleanup): Delete.
6876         (stop_all_threads): Use scoped_restore_current_thread.
6877         * inline-frame.c: Include "gdbthread.h".
6878         (inline_state) <inline_state>: Take a thread pointer instead of a
6879         ptid_t.  All callers adjusted.
6880         <ptid>: Delete, replaced by ...
6881         <thread>: ... this new field.
6882         (find_inline_frame_state): Take a thread pointer instead of a
6883         ptid_t.  All callers adjusted.
6884         (skip_inline_frames, step_into_inline_frame)
6885         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6886         pointer instead of a ptid_t.  All callers adjusted.
6887         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6888         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6889         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6890         pointers directly.
6891         * linux-nat.c (get_detach_signal): Likewise.
6892         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6893         (thread_db_notice_clone): Adjust.
6894         (thread_db_find_new_threads_silently)
6895         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6896         a thread pointer instead of a ptid_t.  All callers adjusted.
6897         * mi/mi-cmd-var.c: Include "inferior.h".
6898         (mi_cmd_var_update_iter): Update to use thread pointers.
6899         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6900         inferior directly.
6901         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6902         out to ...
6903         (mi_output_running): ... this new function.
6904         (mi_on_resume_1): Adjust to use it.
6905         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6906         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6907         directly.
6908         (interrupt_thread_callback): : Adjust to use thread and inferior
6909         pointers.
6910         * proc-service.c: Include "gdbthread.h".
6911         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6912         * progspace-and-thread.c: Include "inferior.h".
6913         * progspace.c: Include "inferior.h".
6914         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6915         hold a reference to an inferior_object.
6916         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6917         inferior_thread.
6918         * python/py-inferior.c (struct inferior_object): Give the type a
6919         tag name instead of a typedef.
6920         (python_on_normal_stop): No need to check if the current thread is
6921         listed.
6922         (inferior_to_inferior_object): Change return type to
6923         inferior_object.  All callers adjusted.
6924         (find_thread_object): Delete, bits factored out to ...
6925         (thread_to_thread_object): ... this new function.
6926         * python/py-infthread.c (create_thread_object): Use
6927         inferior_to_inferior_object.
6928         (thpy_is_stopped): Use thread pointer directly.
6929         (gdbpy_selected_thread): Use inferior_thread.
6930         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6931         field, replaced with ...
6932         <thread>: ... this new field.  All users adjusted.
6933         (btpy_insn_or_gap_new): Drop const.
6934         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6935         callers adjusted.
6936         * python/py-record.c: Include "gdbthread.h".
6937         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6938         a ptid_t.  All callers adjusted.
6939         (gdbpy_current_recording): Use inferior_thread.
6940         * python/py-record.h (recpy_record_object) <ptid>: Delete
6941         field, replaced with ...
6942         <thread>: ... this new field.  All users adjusted.
6943         (recpy_element_object) <ptid>: Delete
6944         field, replaced with ...
6945         <thread>: ... this new field.  All users adjusted.
6946         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6947         a ptid_t.  All callers adjusted.
6948         * python/py-threadevent.c: Include "gdbthread.h".
6949         (get_event_thread): Use thread_to_thread_object.
6950         * python/python-internal.h (struct inferior_object): Forward
6951         declare.
6952         (find_thread_object, find_inferior_object): Delete declarations.
6953         (thread_to_thread_object, inferior_to_inferior_object): New
6954         declarations.
6955         * record-btrace.c: Include "inferior.h".
6956         (require_btrace_thread): Use inferior_thread.
6957         (record_btrace_frame_sniffer)
6958         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6959         (get_thread_current_frame): Use scoped_restore_current_thread and
6960         switch_to_thread.
6961         (get_thread_current_frame): Use thread pointer directly.
6962         (record_btrace_replay_at_breakpoint): Use thread's inferior
6963         pointer directly.
6964         * record-full.c: Include "inferior.h".
6965         * regcache.c: Include "gdbthread.h".
6966         (get_thread_arch_regcache): Use the inferior's address space
6967         directly.
6968         (get_thread_regcache, registers_changed_thread): New.
6969         * regcache.h (get_thread_regcache(thread_info *thread)): New
6970         overload.
6971         (registers_changed_thread): New.
6972         (remote_target) <remote_detach_1>: Swap order of parameters.
6973         (remote_add_thread): <remote_add_thread>: Return the new thread.
6974         (get_remote_thread_info(ptid_t)): New overload.
6975         (remote_target::remote_notice_new_inferior): Use thread pointers
6976         directly.
6977         (remote_target::process_initial_stop_replies): Use
6978         thread_info::set_running.
6979         (remote_target::remote_detach_1, remote_target::detach)
6980         (extended_remote_target::detach): Adjust.
6981         * stack.c (frame_show_address): Use inferior_thread.
6982         * target-debug.h (target_debug_print_thread_info_pp): New.
6983         * target-delegates.c: Regenerate.
6984         * target.c (default_thread_address_space): Delete.
6985         (memory_xfer_partial_1): Use current_inferior.
6986         (target_detach): Use current_inferior.
6987         (target_thread_address_space): Delete.
6988         (generic_mourn_inferior): Use current_inferior.
6989         * target.h (struct target_ops) <thread_address_space>: Delete.
6990         (target_thread_address_space): Delete.
6991         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6992         pointers directly.
6993         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6994         thread pointer instead of a ptid_t.  Adjust all callers.
6995         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6996         (first_thread_of_process): Delete, replaced by ...
6997         (first_thread_of_inferior): ... this new function.  All callers
6998         adjusted.
6999         (any_thread_of_process): Rename to ...
7000         (any_thread_of_inferior): ... this, and take an inferior pointer.
7001         (any_live_thread_of_process): Rename to ...
7002         (any_live_thread_of_inferior): ... this, and take an inferior
7003         pointer.
7004         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7005         (value_in_thread_stack_temporaries)
7006         (get_last_thread_stack_temporary): Take a thread pointer instead
7007         of a ptid_t.  Adjust all callers.
7008         (thread_info::set_running): New.
7009         (validate_registers_access): Use inferior_thread.
7010         (can_access_registers_ptid): Rename to ...
7011         (can_access_registers_thread): ... this, and take a thread
7012         pointer.
7013         (print_thread_info_1): Adjust to compare thread pointers instead
7014         of ptids.
7015         (switch_to_no_thread, switch_to_thread): Make extern.
7016         (scoped_restore_current_thread::~scoped_restore_current_thread):
7017         Use m_thread pointer directly.
7018         (scoped_restore_current_thread::scoped_restore_current_thread):
7019         Use inferior_thread.
7020         (thread_command): Use thread pointer directly.
7021         (thread_num_make_value_helper): Use inferior_thread.
7022         * top.c (execute_command): Use inferior_thread.
7023         * tui/tui-interp.c: Include "inferior.h".
7024         * varobj.c (varobj_create): Use inferior_thread.
7025         (value_of_root_1): Use find_thread_global_id instead of
7026         global_thread_id_to_ptid.
7027
7028 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7029
7030         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7031         possible.
7032         (regcache::write_part): Likewise.
7033         (readable_regcache::cooked_read_part): Update comment.
7034         (readable_regcache::cooked_write_part): Likewise.
7035         * regcache.h: (readable_regcache::read_part): Likewise.
7036         (regcache::write_part): Likewise.
7037
7038 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7039             Dirk Schubert  <dirk.schubert@arm.com>
7040
7041         * aarch64-linux-nat.c (post_attach): New.
7042         (aarch64_linux_nat_target::post_attach): Override post_attach to
7043         record the number of hardware debug registers.
7044
7045 2018-06-20  Tom Tromey  <tom@tromey.com>
7046
7047         * python/py-param.c (add_setshow_generic): Make parameters const.
7048         (parmpy_init): Update.
7049
7050 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7051
7052         * regcache.h (regcache_cooked_read_ftype): Rename to...
7053         (register_read_ftype): ...this, change type to function_view.
7054         (class reg_buffer) <save>: Remove src parameter.
7055         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7056         parameter non-const in first overload.  Remove src parameter in
7057         second overload.
7058         * regcache.c (do_cooked_read): Remove.
7059         (readonly_detached_regcache::readonly_detached_regcache): Make
7060         parameter non-const, adjust call to other constructor.
7061         (reg_buffer::save): Remove src parameter.
7062         * frame.c (do_frame_register_read): Remove.
7063         (frame_save_as_regcache): Use lambda function.
7064         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7065         parameter to ppu2spu_data *.
7066         (ppu2spu_sniffer): Use lambda function.
7067
7068 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7069
7070         * record-full.c (record_full_target::insert_breakpoint): Remove
7071         "struct" keyword, add const.
7072
7073 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7074
7075         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7076         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7077         * configure.ac: Remove AC_PREREQ, add missing quoting.
7078         * gnulib/configure.ac: Modernize usage of
7079         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7080         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7081         (AUTOMAKE_VERSION): Bump to 1.15.1.
7082         * configure: Re-generate.
7083         * config.in: Re-generate.
7084         * aclocal.m4: Re-generate.
7085         * gnulib/aclocal.m4: Re-generate.
7086         * gnulib/config.in: Re-generate.
7087         * gnulib/configure: Re-generate.
7088         * gnulib/import/Makefile.in: Re-generate.
7089
7090 2018-06-19  Pedro Alves  <palves@redhat.com>
7091
7092         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7093         (lookup_minimal_symbol_by_pc_section): ... here with
7094         gdb_assert_not_reached added.
7095
7096 2018-06-19  Pedro Alves  <palves@redhat.com>
7097
7098         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7099         parameter with a block parameter.  Compare location's block symbol
7100         with the frame's block instead of addresses.
7101         (skip_inline_frames): Pass the current block instead of the
7102         frame's address.  Break out as soon as we determine the frame
7103         should not be skipped.
7104
7105 2018-06-18  Tom Tromey  <tom@tromey.com>
7106
7107         * solib-aix.c (solib_aix_get_section_offsets): Return
7108         unique_xmalloc_ptr.
7109         (solib_aix_solib_create_inferior_hook): Update.
7110
7111 2018-06-18  Tom Tromey  <tom@tromey.com>
7112
7113         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7114
7115 2018-06-18  Tom Tromey  <tom@tromey.com>
7116
7117         * solib-frv.c (frv_relocate_main_executable): Use
7118         unique_xmalloc_ptr.
7119         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7120         unique_xmalloc_ptr.
7121
7122 2018-06-18  Tom Tromey  <tom@tromey.com>
7123
7124         * objfiles.h (inhibit_section_map_updates): Update.
7125         (resume_section_map_updates, resume_section_map_updates_cleanup):
7126         Remove.
7127         * solib-svr4.c (svr4_handle_solib_event): Update.
7128         * objfiles.c (inhibit_section_map_updates): Return
7129         scoped_restore_tmpl<int>.
7130         (resume_section_map_updates, resume_section_map_updates_cleanup):
7131         Remove.
7132
7133 2018-06-18  Tom Tromey  <tom@tromey.com>
7134
7135         * valprint.h (read_string): Update.
7136         * valprint.c (read_string): Change type of "buffer".
7137         (val_print_string): Update.
7138         * python/py-value.c (valpy_string): Update.
7139         * language.h (struct language_defn) <la_get_string>: Change
7140         type of "buffer".
7141         (default_get_string, c_get_string): Update.
7142         * language.c (default_get_string): Change type of "buffer".
7143         * guile/scm-value.c (gdbscm_value_to_string): Update.
7144         * c-lang.c (c_get_string): Change type of "buffer".
7145
7146 2018-06-18  Tom Tromey  <tom@tromey.com>
7147
7148         * ser-mingw.c (struct pipe_state_destroyer): New.
7149         (pipe_state_up): New typedef.
7150         (cleanup_pipe_state): Remove.
7151         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7152
7153 2018-06-18  Tom Tromey  <tom@tromey.com>
7154
7155         * rust-lang.h (rust_yyerror): Don't declare.
7156         * rust-lang.c (rust_language_defn): Update.
7157         * rust-exp.y (yyerror): Now static.
7158         * parse.c (parse_exp_in_context_1): Update.
7159         * p-lang.h (p_yyerror): Don't declare.
7160         * p-lang.c (p_language_defn): Update.
7161         * p-exp.y (yyerror): Now static.
7162         * opencl-lang.c (opencl_language_defn): Update.
7163         * objc-lang.c (objc_language_defn): Update.
7164         * m2-lang.h (m2_yyerror): Don't declare.
7165         * m2-lang.c (m2_language_defn): Update.
7166         * m2-exp.y (yyerror): Now static.
7167         * language.h (struct language_defn) <la_error>: Remove.
7168         * language.c (unk_lang_error): Remove.
7169         (unknown_language_defn, auto_language_defn): Remove.
7170         * go-lang.h (go_yyerror): Don't declare.
7171         * go-lang.c (go_language_defn): Update.
7172         * go-exp.y (yyerror): Now static.
7173         * f-lang.h (f_yyerror): Don't declare.
7174         * f-lang.c (f_language_defn): Update.
7175         * f-exp.y (yyerror): Now static.
7176         * d-lang.h (d_yyerror): Don't declare.
7177         * d-lang.c (d_language_defn): Update.
7178         * d-exp.y (yyerror): Now static.
7179         * c-lang.h (c_yyerror): Don't declare.
7180         * c-lang.c (c_language_defn, cplus_language_defn)
7181         (asm_language_defn, minimal_language_defn): Update.
7182         * c-exp.y (yyerror): Now static.
7183         * ada-lang.h (ada_yyerror): Don't declare.
7184         * ada-lang.c (ada_language_defn): Update.
7185         * ada-exp.y (yyerror): Now static.
7186
7187 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7188
7189         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7190         (store_sveregs_to_thread): Likewise.
7191         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7192         (aarch64_linux_store_inferior_registers): Likewise.
7193         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7194         function.
7195         (aarch64_sve_regs_copy_to_regcache): Likewise.
7196         (aarch64_sve_regs_copy_from_regcache): Likewise.
7197         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7198         declaration.
7199         (aarch64_sve_regs_copy_to_regcache): Likewise.
7200         (aarch64_sve_regs_copy_from_regcache): Likewise.
7201         (sve_context): Structure from Linux headers.
7202         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7203         (SVE_SIG_ZREG_SIZE): Likewise.
7204         (SVE_SIG_PREG_SIZE): Likewise.
7205         (SVE_SIG_FFR_SIZE): Likewise.
7206         (SVE_SIG_REGS_OFFSET): Likewise.
7207         (SVE_SIG_ZREGS_OFFSET): Likewise.
7208         (SVE_SIG_ZREG_OFFSET): Likewise.
7209         (SVE_SIG_ZREGS_SIZE): Likewise.
7210         (SVE_SIG_PREGS_OFFSET): Likewise.
7211         (SVE_SIG_PREG_OFFSET): Likewise.
7212         (SVE_SIG_PREGS_SIZE): Likewise.
7213         (SVE_SIG_FFR_OFFSET): Likewise.
7214         (SVE_SIG_REGS_SIZE): Likewise.
7215         (SVE_SIG_CONTEXT_SIZE): Likewise.
7216         (SVE_PT_REGS_MASK): Likewise.
7217         (SVE_PT_REGS_FPSIMD): Likewise.
7218         (SVE_PT_REGS_SVE): Likewise.
7219         (SVE_PT_VL_INHERIT): Likewise.
7220         (SVE_PT_VL_ONEXEC): Likewise.
7221         (SVE_PT_REGS_OFFSET): Likewise.
7222         (SVE_PT_FPSIMD_OFFSET): Likewise.
7223         (SVE_PT_FPSIMD_SIZE): Likewise.
7224         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7225         (SVE_PT_SVE_PREG_SIZE): Likewise.
7226         (SVE_PT_SVE_FFR_SIZE): Likewise.
7227         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7228         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7229         (__SVE_SIG_TO_PT): Likewise.
7230         (SVE_PT_SVE_OFFSET): Likewise.
7231         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7232         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7233         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7234         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7235         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7236         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7237         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7238         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7239         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7240         (SVE_PT_SVE_SIZE): Likewise.
7241         (SVE_PT_SIZE): Likewise.
7242         (HAS_SVE_STATE): New define.
7243
7244 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7245
7246         * nat/aarch64-sve-linux-sigcontext.h: New file.
7247         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7248         new files.
7249         (SVE_VQ_MIN): Likewise.
7250         (SVE_VQ_MAX): Likewise.
7251         (SVE_VL_MIN): Likewise.
7252         (SVE_VL_MAX): Likewise.
7253         (SVE_NUM_ZREGS): Likewise.
7254         (SVE_NUM_PREGS): Likewise.
7255         (sve_vl_valid): Likewise.
7256         (struct user_sve_header): Likewise.
7257
7258 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7259             Richard Bunt <Richard.Bunt@arm.com>
7260
7261         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7262         was requested by GDB.
7263
7264 2018-06-15  Tom de Vries  <tdevries@suse.de>
7265
7266         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7267
7268 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7269
7270         * gnulib/update-gnulib.sh: Print expected versions of
7271         autoconf/aclocal.
7272
7273 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7274
7275         * arch-utils.c (default_type_align): Use type_length_units.
7276         * gdbtypes.c (type_align): Use type_length_units.
7277
7278 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7279
7280         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7281         of 'define' command.
7282
7283 2018-06-14  Tom de Vries  <tdevries@suse.de>
7284
7285         PR cli/22573
7286         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7287         get_no_prettyformat_print_options.
7288
7289 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7290
7291         * sparc-nat.h: Include target.h.
7292         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7293         <fetch_registers>: Remove this argument in function call.
7294         <store_registers>: Remove this argument in function call, remove
7295         extra semicolon.
7296         <low_forget_process>: Call sparc64_forget_process instead of
7297         sparc_forget_process.
7298
7299 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7300
7301         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7302         (procfs_target::make_corefile_notes): Adjust to new
7303         target_read_alloc return type.
7304
7305 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7306             Stephen Roberts  <stephen.roberts@arm.com>
7307
7308         PR gdb/22882
7309         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7310         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7311         Move should_notify_stop local into more inner scope.
7312
7313 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7314             Stephen Roberts  <stephen.roberts@arm.com>
7315
7316         PR gdb/22882
7317         * infrun.c (resume_1): Add call to mark_async_event_handler.
7318
7319 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7320
7321         * infrun.c (do_target_wait): Change old version of $pc printed.
7322
7323 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7324
7325         * dwarf2read.c (read_index_from_section): Rename to...
7326         (read_gdb_index_from_section): ... this, update all callers.
7327         (dwarf2_read_index): Rename to...
7328         (dwarf2_read_gdb_index): ... this, update all callers.
7329
7330 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7331
7332         * gdb/hppa-linux-nat.c
7333         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7334         hppa_linux_nat_target::fetch_registers.
7335
7336 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7337
7338         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7339         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7340         (AARCH64_DWARF_SVE_FFR): Likewise.
7341         (AARCH64_DWARF_SVE_P0): Likewise.
7342         (AARCH64_DWARF_SVE_Z0): Likewise.
7343
7344 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7345
7346         * common/common-regcache.h (raw_compare): New function.
7347         * regcache.c (regcache::raw_compare): Likewise.
7348         * regcache.h (regcache::raw_compare): New declaration.
7349
7350 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7351
7352         * common/common-regcache.h (reg_buffer_common): New structure.
7353         * regcache.c (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         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7360         (reg_buffer::raw_supply): Likewise.
7361         (reg_buffer::raw_supply_integer): Likewise.
7362         (reg_buffer::raw_supply_zeroed): Likewise.
7363         (reg_buffer::raw_collect): Likewise.
7364         (reg_buffer::raw_collect_integer): Likewise.
7365
7366 2018-06-10  Tom Tromey  <tom@tromey.com>
7367
7368         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7369         (class remote_state) <stop_reply_queue>: Now std::vector.
7370         (remote_state::~remote_state)
7371         (remote_target::stop_reply_queue_length): Update.
7372         (struct queue_iter_param, remove_child_of_pending_fork)
7373         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7374         (check_pending_event_prevents_wildcard_vcont_callback)
7375         (remove_stop_reply_for_inferior)
7376         (remove_stop_reply_of_remote_state)
7377         (remote_notif_remove_once_on_match)
7378         (stop_reply_match_ptid_and_ws)
7379         (remote_kill_child_of_pending_fork): Remove.
7380         (remote_target::remove_new_fork_children)
7381         (remote_target::check_pending_events_prevent_wildcard_vcont)
7382         (remote_target::discard_pending_stop_replies)
7383         (remote_target::discard_pending_stop_replies_in_queue)
7384         (remote_target::remote_notif_remove_queued_reply)
7385         (remote_target::queued_stop_reply)
7386         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7387         (remote_target::wait, remote_target::kill_new_fork_children)
7388         (remote_target::async): Update.
7389
7390 2018-06-10  Tom Tromey  <tom@tromey.com>
7391
7392         * record-full.c (record_full_arch_list_cleanups): Remove.
7393         (record_full_message): Use try/catch.
7394         (record_full_wait_cleanups): Remove.
7395         (record_full_wait_1): Use try/catch.
7396         (record_full_restore): Likewise.
7397
7398 2018-06-10  Tom Tromey  <tom@tromey.com>
7399
7400         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7401         declare VEC.  Add constructor.
7402         <in_target_beneath>: Now bool.
7403         (record_full_breakpoints): Now a std::vector, static.
7404         (record_full_sync_record_breakpoints)
7405         (record_full_init_record_breakpoints)
7406         (record_full_target::insert_breakpoint)
7407         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7408
7409 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7410
7411         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7412         * serial.c (serial_interface_lookup): Remove struct keyword.
7413
7414 2018-06-10  Tom Tromey  <tom@tromey.com>
7415
7416         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7417         method.
7418         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7419         a method.
7420         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7421         method.
7422         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7423         "beneath" as a method.
7424         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7425         Use "beneath" as a method.
7426
7427 2018-06-10  Tom Tromey  <tom@tromey.com>
7428
7429         * tracefile.c (struct trace_file_writer_deleter): New.
7430         <operator()>: Rename from trace_file_writer_xfree.
7431         (trace_file_writer_up): New typedef.
7432         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7433
7434 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7435
7436         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7437         <m_registers, m_register_status>: Change type to
7438         std::unique_ptr.
7439         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7440         XCNEWVEC.
7441
7442 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7443
7444         * common/common-regcache.h (enum register_status): Add
7445         underlying type "signed char".
7446         * regcache.h (reg_buffer) <m_register_status>: Change type to
7447         register_status *.
7448         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7449         register_status instead of signed char.
7450         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7451         (reg_buffer::get_register_status): Remove cast.
7452         (readable_regcache::raw_read): Remove cast.
7453         (readable_regcache::cooked_read): Remove cast.
7454
7455 2018-06-09  Tom Tromey  <tom@tromey.com>
7456
7457         * source.c (reverse_search_command, forward_search_command): Use
7458         scoped_fd.
7459
7460 2018-06-09  Tom Tromey  <tom@tromey.com>
7461
7462         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7463         (serial_ops_list): Now static, std::vector.
7464         (serial_interface_lookup, serial_add_interface): Update.
7465
7466 2018-06-09  Tom Tromey  <tom@tromey.com>
7467
7468         * dwarf2read.c (process_cu_includes): Update.
7469         (process_full_comp_unit): Update.
7470         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7471         std::vector.
7472
7473 2018-06-08  Paul Koning  <paul_koning@dell.com>
7474
7475         PR gdb/23252
7476
7477         * python/python.c (do_start_initialization):
7478         Avoid call to internal Python API.
7479         (init__gdb_module): New function.
7480
7481 2018-06-08  Gary Benson <gbenson@redhat.com>
7482
7483         * linux-thread-db.c (valprint.h): New include.
7484         (struct check_thread_db_info): New structure.
7485         (check_thread_db_on_load, tdb_testinfo): New static globals.
7486         (check_thread_db, check_thread_db_callback): New functions.
7487         (try_thread_db_load_1): Run integrity checks if requested.
7488         (maintenance_check_libthread_db): New function.
7489         (_initialize_thread_db): Register "maint check libthread-db"
7490         and "maint set/show check-libthread-db".
7491         * NEWS: Mention the above new commands.
7492
7493 2018-06-08  Tom Tromey  <tom@tromey.com>
7494
7495         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7496         now a method.
7497
7498 2018-06-08  Tom Tromey  <tom@tromey.com>
7499
7500         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7501
7502 2018-06-08  Tom Tromey  <tom@tromey.com>
7503
7504         * common/btrace-common.h (struct btrace_data): Add constructor,
7505         destructor, move assignment operator.
7506         <empty, clear, fini>: New methods.
7507         <format>: Initialize.
7508         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7509         (btrace_data_empty): Don't declare.
7510         * common/btrace-common.c (btrace_data_init): Remove.
7511         (btrace_data::fini): Rename from btrace_data_fini.
7512         (btrace_data::empty): Rename from btrace_data_empty.
7513         (btrace_data::clear): Rename from btrace_data_clear.  Return
7514         bool.
7515         * btrace.h (make_cleanup_btrace_data): Don't declare.
7516         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7517         (parse_xml_btrace): Update.
7518         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7519         (maint_btrace_clear_packet_history_cmd): Update.
7520
7521 2018-06-07  Pedro Alves  <palves@redhat.com>
7522
7523         * target.h (target_ops) <beneath>: Now a method.  All references
7524         updated.
7525         (class target_stack): New.
7526         * target.c (g_target_stack): New.
7527         (g_current_top_target): Delete.
7528         (current_top_target): Get the top target out of g_target_stack.
7529         (target_stack::push, target_stack::unpush): New.
7530         (push_target, unpush_target): Reimplement.
7531         (target_is_pushed): Reimplement in terms of g_target_stack.
7532         (target_ops::beneath, target_stack::find_beneath): New.
7533
7534 2018-06-07  Pedro Alves  <palves@redhat.com>
7535
7536         * target.h (find_target_beneath): Delete declaration.
7537         * target.c (find_target_beneath): Delete definition.
7538         * aix-thread.c: All callers of find_target_beneath adjusted to
7539         call target_ops::beneath instead.
7540         * bsd-uthread.c: Likewise.
7541         * linux-thread-db.c: Likewise.
7542         * ravenscar-thread.c: Likewise.
7543         * sol-thread.c: Likewise.
7544         * spu-multiarch.c: Likewise.
7545
7546 2018-06-07  Pedro Alves  <palves@redhat.com>
7547
7548         * target.h (target_ops) <beneath>: Now a method.  All references
7549         updated.
7550         (target_ops) <m_beneath>: New.
7551         * target.c (target_ops::beneath): New.
7552         * corelow.c: Adjust all references to target_ops::beneath.
7553         * linux-thread-db.c: Likewise.
7554         * make-target-delegates: Likewise.
7555         * record-btrace.c: Likewise.
7556         * record-full.c: Likewise.
7557         * remote.c: Likewise.
7558         * target.c: Likewise.
7559         * target-delegates.c: Regenerate.
7560
7561 2018-06-07  Pedro Alves  <palves@redhat.com>
7562
7563         * target.h (target_stack): Delete.
7564         (current_top_target): Declare function.
7565         * target.c (target_stack): Delete.
7566         (g_current_top_target): New.
7567         (current_top_target): New function.
7568         * auxv.c: Use current_top_target instead of target_stack
7569         throughout.
7570         * avr-tdep.c: Likewise.
7571         * breakpoint.c: Likewise.
7572         * corefile.c: Likewise.
7573         * elfread.c: Likewise.
7574         * eval.c: Likewise.
7575         * exceptions.c: Likewise.
7576         * frame.c: Likewise.
7577         * gdbarch-selftests.c: Likewise.
7578         * gnu-v3-abi.c: Likewise.
7579         * ia64-tdep.c: Likewise.
7580         * ia64-vms-tdep.c: Likewise.
7581         * infcall.c: Likewise.
7582         * infcmd.c: Likewise.
7583         * infrun.c: Likewise.
7584         * linespec.c: Likewise.
7585         * linux-tdep.c: Likewise.
7586         * minsyms.c: Likewise.
7587         * ppc-linux-nat.c: Likewise.
7588         * ppc-linux-tdep.c: Likewise.
7589         * procfs.c: Likewise.
7590         * regcache.c: Likewise.
7591         * remote.c: Likewise.
7592         * rs6000-tdep.c: Likewise.
7593         * s390-linux-nat.c: Likewise.
7594         * s390-tdep.c: Likewise.
7595         * solib-aix.c: Likewise.
7596         * solib-darwin.c: Likewise.
7597         * solib-dsbt.c: Likewise.
7598         * solib-spu.c: Likewise.
7599         * solib-svr4.c: Likewise.
7600         * solib-target.c: Likewise.
7601         * sparc-tdep.c: Likewise.
7602         * sparc64-tdep.c: Likewise.
7603         * spu-tdep.c: Likewise.
7604         * symfile.c: Likewise.
7605         * symtab.c: Likewise.
7606         * target-descriptions.c: Likewise.
7607         * target-memory.c: Likewise.
7608         * target.c: Likewise.
7609         * target.h: Likewise.
7610         * tracefile-tfile.c: Likewise.
7611         * tracepoint.c: Likewise.
7612         * valops.c: Likewise.
7613         * valprint.c: Likewise.
7614         * value.c: Likewise.
7615         * windows-tdep.c: Likewise.
7616         * mi/mi-main.c: Likewise.
7617
7618 2018-06-07  Tom Tromey  <tom@tromey.com>
7619
7620         * valprint.h (build_address_symbolic): Declare.
7621         * printcmd.c (print_address_symbolic): Update.
7622         (build_address_symbolic): Change "name" and "filename" to
7623         std::string.
7624         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7625         Update.
7626         * defs.h (build_address_symbolic): Remove declaration.
7627
7628 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7629
7630         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7631         (aarch64_vnv_type): Add function.
7632         (aarch64_pseudo_register_name): Add V regs for SVE.
7633         (aarch64_pseudo_register_type): Likewise.
7634         (aarch64_pseudo_register_reggroup_p): Likewise.
7635         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7636         (aarch64_pseudo_read_value): Add V regs for SVE.
7637         (aarch64_pseudo_write_2): Use V0 offset for SVE
7638         (aarch64_pseudo_write): Add V regs for SVE.
7639         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7640
7641 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7642
7643         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7644         (sve_vl_from_vq): Likewise.
7645
7646 2018-06-05  Tom Tromey  <tom@tromey.com>
7647
7648         * cli/cli-cmds.c (show_version): Update.
7649         * top.c (print_gdb_version): Add "interactive" parameter.
7650         Update.
7651         * main.c (captured_main_1): Update.
7652         * top.h (print_gdb_version): Add "interactive" parameter and a
7653         comment.
7654
7655 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7656
7657         * common/enum-flags.h: Add trailing semicolon to example in
7658         comment.
7659
7660 2018-06-05  Tom Tromey  <tom@tromey.com>
7661
7662         PR cli/12326:
7663         * NEWS: Add entry about pager.
7664         * utils.c (pagination_disabled_for_command): New global.
7665         (prompt_for_continue): Allow "c" response to prompt.
7666         (reinitialize_more_filter): Clear
7667         pagination_disabled_for_command.
7668         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7669
7670 2018-06-04  Tom Tromey  <tom@tromey.com>
7671
7672         * ada-lang.h (ada_lookup_symbol_list): Update.
7673         * ada-lang.c (resolve_subexp): Update.
7674         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7675         parameter.
7676         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7677         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7678         results parameter to std::vector.
7679         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7680         Update.
7681         * ada-exp.y (block_lookup): Update.
7682         (select_possible_type_sym): Change type of syms.  Remove nsyms
7683         parameter.
7684         (write_var_or_type, write_name_assoc): Update.
7685
7686 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7687
7688         * windows-nat.c (windows_nat_target::xfer_partial): Return
7689         TARGET_XFER_E_IO if we need to delegate to the target beneath
7690         but BENEATH is NULL.
7691
7692 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7693
7694         * Makefile.in (config.status): Add configure.nat as a
7695         dependency.
7696
7697 2018-06-04  Tom Tromey  <tom@tromey.com>
7698
7699         * cp-name-parser.y (cpname_state): Add method declarations.
7700         (HANDLE_QUAL): Update.
7701         (cpname_state::d_grab, cpname_state::fill_comp)
7702         (cpname_state::make_operator, cpname_state::make_dtor)
7703         (cpname_state::make_builtin_type, cpname_state::make_name)
7704         (cpname_state::d_qualify, cpname_state::d_int_type)
7705         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7706         (%union): Move earlier.
7707
7708 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7709
7710         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7711
7712 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7713
7714         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7715         (aarch64_pseudo_write_1): Likewise.
7716         (aarch64_pseudo_read_value): Use helper.
7717         (aarch64_pseudo_write): Likewise.
7718
7719 2018-06-04  Pedro Alves  <palves@redhat.com>
7720
7721         * darwin-nat.c (darwin_ops): Delete.
7722         (darwin_attach_pid): Use get_native_target.
7723
7724 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7725
7726         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7727         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7728
7729 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7730
7731         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7732         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7733         (aarch64_gdbarch_init): Check for SVE.
7734         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7735
7736 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7737
7738         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7739         * aarch64-tdep.h (aarch64_read_description): Likewise.
7740         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7741         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7742         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7743         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7744         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7745
7746 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7747
7748         * value.c (value_fetch_lazy_bitfield): New.
7749         (value_fetch_lazy_memory): New.
7750         (value_fetch_lazy_register): New.
7751         (value_fetch_lazy): Factor out to smaller functions.
7752
7753 2018-06-01  Tom Tromey  <tom@tromey.com>
7754
7755         * cp-name-parser.y (backslashable, represented): Now const.
7756
7757 2018-06-01  Tom Tromey  <tom@tromey.com>
7758
7759         * cp-name-parser.y: Include parser-defs.h.
7760         (parser_fprintf): Remove declaration.
7761
7762 2018-06-01  Tom Tromey  <tom@tromey.com>
7763
7764         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7765         %parse-param.
7766         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7767         (global_result): Remove globals.
7768         (struct cpname_state): New.
7769         (yyparse): Don't declare.
7770         (yylex, yyerror): Move declarations after %union.
7771         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7772         (make_name): Add state parameter.
7773         Update all callers.
7774         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7775         parameter.
7776         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7777         Update.
7778         (yylex): Add lvalp, state parameters.
7779         (yyerror): Add state parameter.
7780         (cp_demangled_name_to_comp): Update.
7781
7782 2018-06-01  Tom Tromey  <tom@tromey.com>
7783
7784         * cp-name-parser.y (parser_fprintf): Declare.
7785         (GDB_YY_REMAP_PREFIX): Define.
7786         Include yy-remap.h.  Don't redefine yy* identifiers.
7787
7788 2018-06-01  Tom Tromey  <tom@tromey.com>
7789
7790         * python/py-type.c (typy_legacy_template_argument): Update.
7791         * cp-support.h (cp_demangled_name_to_comp): Update.
7792         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7793         parameter to be a "std::string *".
7794         (main): Update.
7795
7796 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7797
7798         * ada-lex.l: Include "diagnostics.h" instead of
7799         "common/diagnostics.h".
7800         * unittests/environ-selftests.c: Likewise.
7801         * common/diagnostics.h: Moved to ../include.
7802
7803 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7804
7805         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7806         to language_mode_manual while calling breakpoint_re_set_one.
7807
7808 2018-06-01  Tom Tromey  <tom@tromey.com>
7809
7810         * valops.c (value_cast_structs, destructor_name_p): Update.
7811         * symtab.c (gdb_mangle_name): Update.
7812         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7813         Update.
7814         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7815         (pascal_object_print_value_fields, pascal_object_print_value):
7816         Update.
7817         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7818         * linespec.c (find_methods): Update.
7819         * gdbtypes.h (type_name_no_tag): Remove.
7820         (type_name_or_error): Rename from type_name_no_tag_or_error.
7821         * gdbtypes.c (type_name_no_tag): Remove.
7822         (type_name_or_error): Rename from type_name_no_tag_or_error.
7823         (lookup_struct_elt_type, check_typedef): Update.
7824         * expprint.c (print_subexp_standard): Update.
7825         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7826         * d-namespace.c (d_lookup_nested_symbol): Update.
7827         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7828         (cp_print_class_member): Update.
7829         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7830         * completer.c (add_struct_fields): Update.
7831         * c-typeprint.c (cp_type_print_derivation_info)
7832         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7833         Update.
7834         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7835         (ada_prefer_type, ada_is_exception_sym): Update.
7836
7837 2018-06-01  Tom Tromey  <tom@tromey.com>
7838
7839         * valops.c (enum_constant_from_type, value_namespace_elt)
7840         (value_maybe_namespace_elt): Update.
7841         * valarith.c (find_size_for_pointer_math): Update.
7842         * target-descriptions.c (make_gdb_type): Update.
7843         * symmisc.c (print_symbol): Update.
7844         * stabsread.c (define_symbol, read_type)
7845         (complain_about_struct_wipeout, add_undefined_type)
7846         (cleanup_undefined_types_1): Update.
7847         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7848         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7849         (rust_internal_print_type, rust_composite_type)
7850         (rust_evaluate_funcall, rust_evaluate_subexp)
7851         (rust_inclusive_range_type_p): Update.
7852         * python/py-type.c (typy_get_tag): Update.
7853         * p-typeprint.c (pascal_type_print_base): Update.
7854         * mdebugread.c (parse_symbol, parse_type): Update.
7855         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7856         Update.
7857         * guile/scm-type.c (gdbscm_type_tag): Update.
7858         * go-lang.c (sixg_string_p): Update.
7859         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7860         Update.
7861         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7862         (TYPE_TAG_NAME): Remove.
7863         * gdbtypes.c (type_name_no_tag): Simplify.
7864         (check_typedef, check_types_equal, recursive_dump_type)
7865         (copy_type_recursive, arch_composite_type): Update.
7866         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7867         in summary mode when needed.
7868         * eval.c (evaluate_funcall): Update.
7869         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7870         (process_structure_scope, read_enumeration_type)
7871         (read_namespace_type, read_module_type, determine_prefix): Update.
7872         * cp-support.c (inspect_type): Update.
7873         * coffread.c (process_coff_symbol, decode_base_type): Update.
7874         * c-varobj.c (c_is_path_expr_parent): Update.
7875         * c-typeprint.c (c_type_print_base_struct_union): Update.
7876         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7877         summary when using C language.
7878         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7879         (gen_maybe_namespace_elt): Update.
7880         * ada-lang.c (ada_type_name): Simplify.
7881         (empty_record, ada_template_to_fixed_record_type_1)
7882         (template_to_static_fixed_type)
7883         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7884
7885 2018-06-01  Tom Tromey  <tom@tromey.com>
7886
7887         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7888         c_print_type.
7889         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7890         (c_print_type): Update.
7891         (c_print_type): New overload.
7892         (c_type_print_varspec_prefix, c_type_print_args)
7893         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7894         (c_type_print_base_struct_union, c_type_print_base_1)
7895         (cp_type_print_method_args): Add "language" parameter.
7896         (c_type_print_base): Update.
7897         * c-lang.h (c_print_type): Add new overload.
7898
7899 2018-06-01  Tom Tromey  <tom@tromey.com>
7900
7901         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7902         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7903
7904 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7905
7906         * aarch64-tdep.c (aarch64_sve_register_names): New const
7907         var.
7908         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7909         (AARCH64_SVE_Z_REGS_NUM): New define.
7910         (AARCH64_SVE_P_REGS_NUM): Likewise.
7911         (AARCH64_SVE_NUM_REGS): Likewise.
7912
7913 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7914
7915         * nat/linux-ptrace.h [__alpha__]
7916         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7917         definitions.
7918
7919 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7920
7921         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7922         the endianness selected.
7923         * NEWS: Document `set endian auto' mode operation update.
7924
7925 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7926
7927         * Makefile.in: Add new header.
7928         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7929         (sve_vl_from_vg): Likewise.
7930         (sve_vq_from_vl): Likewise.
7931         (sve_vl_from_vq): Likewise.
7932         (sve_vq_from_vg): Likewise.
7933         (sve_vg_from_vq): Likewise.
7934         * configure.nat: Add new c file.
7935         * nat/aarch64-sve-linux-ptrace.c: New file.
7936         * nat/aarch64-sve-linux-ptrace.h: New file.
7937
7938 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7939
7940         * aarch64-linux-nat.c (aarch64_linux_read_description):
7941         Add parmeter zero.
7942         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7943         Likewise.
7944         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7945         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7946         (aarch64_gdbarch_init): Add parmeter zero.
7947         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7948         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7949         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7950         parmeter.
7951         * doc/gdb.texinfo: Describe SVE feature
7952         * features/aarch64-sve.c: New file.
7953
7954 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7955
7956         PR gdb/23210
7957         * gdbarch.sh (significant_addr_bit): Default to zero when
7958         not set by target architecture.
7959         * gdbarch.c: Re-generated.
7960         * utils.c (address_significant): Update.
7961
7962 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7963
7964         * stack.c (func_command): Remove trailing newline in call to error.
7965
7966 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7967
7968         * regcache.h (regcache_raw_collect): Remove, update callers to
7969         use regcache::raw_collect.
7970         * regcache.c (regcache_raw_collect): Remove.
7971
7972 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7973
7974         * regcache.h (regcache_raw_supply): Remove, update callers to
7975         use detached_regcache::raw_supply.
7976         * regcache.c (regcache_raw_supply): Remove.
7977
7978 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7979
7980         * regcache.h (regcache_cooked_write_part): Remove, update
7981         callers to use regcache::cooked_write_part.
7982         * regcache.c (regcache_cooked_write_part): Remove.
7983
7984 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7985
7986         * regcache.h (regcache_cooked_read_part): Remove, update callers
7987         to use readable_regcache::cooked_read_part.
7988         * regcache.c (regcache_cooked_read_part): Remove.
7989
7990 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7991
7992         * regcache.h (regcache_cooked_read_value): Remove, update
7993         callers to use readable_regcache::cooked_read_value.
7994         * regcache.c (regcache_cooked_read_value): Remove.
7995
7996 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7997
7998         * regcache.h (regcache_cooked_write): Remove, update callers to
7999         use regcache::cooked_write.
8000         * regcache.c (regcache_cooked_write): Remove.
8001
8002 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8003
8004         * regcache.h (regcache_invalidate): Remove, update callers to
8005         use detached_regcache::invalidate instead.
8006         * regcache.c (regcache_invalidate): Remove.
8007
8008 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8009
8010         * regcache.h (regcache_raw_write_part): Remove, update callers
8011         to use regcache::raw_write_part instead.
8012         * regcache.c (regcache_raw_write_part): Remove.
8013
8014 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8015
8016         * regcache.h (regcache_raw_read_part): Remove, update callers to
8017         use readable_regcache::raw_read_part instead.
8018         * regcache.c (regcache_raw_read_part): Remove.
8019
8020 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8021
8022         * regcache.h (regcache_cooked_read): Remove, update callers to
8023         use readable_regcache::cooked_read instead.
8024         * regcache.c (regcache_cooked_read): Remove.
8025
8026 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8027
8028         * regcache.h (regcache_raw_write): Remove, update callers to use
8029         regcache::raw_write instead.
8030         * regcache.c (regcache_raw_write): Remove.
8031
8032 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8033
8034         * regcache.h (regcache_raw_read): Remove, update callers to use
8035         readable_regcache::raw_read instead.
8036         * regcache.c (regcache_raw_read): Remove.
8037
8038 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8039
8040         * regcache.h (regcache_raw_update): Remove, update callers to
8041         use readable_regcache::raw_update instead.
8042         * regcache.c (regcache_raw_update): Remove.
8043
8044 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8045
8046         * regcache.h (regcache_register_status): Remove, update callers
8047         to use reg_buffer::get_register_status directly instead.
8048         * regcache.c (regcache_register_status): Remove.
8049
8050 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8051
8052         * regcache.h (regcache_get_ptid): Remove, update all callers to
8053         call regcache::ptid instead.
8054         * regcache.c (regcache_get_ptid): Remove.
8055
8056 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8057
8058         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8059
8060 2018-05-30  Pedro Alves  <palves@redhat.com>
8061
8062         * common/common-exceptions.h (exception_rethrow): Use
8063         ATTRIBUTE_NORETURN.
8064
8065 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8066
8067         * breakpoint.c (print_solib_event, check_status_catch_solib):
8068         Remove struct keyword in range-based for loops.
8069         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8070         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8071         Likewise.
8072         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8073         Likewise.
8074         * symfile.c (addr_info_make_relative): Likewise.
8075         * thread.c (value_in_thread_stack_temporaries): Likewise.
8076
8077 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8078
8079         PR gdb/16841
8080         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8081         aggregate type to get its real type before accessing it.
8082
8083 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8084
8085         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8086         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8087         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8088         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8089         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8090         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8091         * printcmd.c (info_address_command): Likewise.
8092
8093 2018-05-29  Tom Tromey  <tom@tromey.com>
8094
8095         * windows-nat.c (handle_exception): Update fall-through comment.
8096
8097 2018-05-29  Tom Tromey  <tom@tromey.com>
8098
8099         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8100         (struct program_space) <added_solibs>: Now a std::vector.
8101         * breakpoint.c (print_solib_event): Update.
8102         (check_status_catch_solib): Update.
8103         * progspace.c (clear_program_space_solib_cache): Update.
8104         * solib.c (update_solib_list): Update.
8105
8106 2018-05-29  Tom Tromey  <tom@tromey.com>
8107
8108         * python/py-type.c (typy_richcompare): Update.
8109         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8110         * gdbtypes.h (types_deeply_equal): Return bool.
8111         (types_equal): Likewise.
8112         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8113         declare VEC.
8114         (check_types_equal): Change worklist to std::vector.  Return
8115         bool.
8116         (struct type_equality_entry): Add constructor.
8117         (compare_maybe_null_strings): Return bool.
8118         (check_types_worklist): Return bool.  Change worklist to
8119         std::vector.
8120         (types_deeply_equal): Use std::vector.
8121         (types_equal): Return bool.
8122         (compare_maybe_null_strings): Simplify.
8123
8124 2018-05-29  Tom Tromey  <tom@tromey.com>
8125
8126         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8127
8128 2018-05-29  Tom Tromey  <tom@tromey.com>
8129
8130         * objc-lang.h: Don't include cp-support.h.
8131         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8132         declare VEC.
8133
8134 2018-05-27  Tom Tromey  <tom@tromey.com>
8135
8136         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8137
8138 2018-05-25  Tom Tromey  <tom@tromey.com>
8139
8140         * value.c (value::location): Initialize.
8141
8142 2018-05-25  Tom Tromey  <tom@tromey.com>
8143
8144         * dbxread.c (init_bincl_list): Remove.
8145         (bincl_list): Now a std::vector.
8146         (bincls_allocated, next_bincl): Remove.
8147         (free_bincl_list, do_free_bincl_list_cleanup)
8148         (make_cleanup_free_bincl_list): Remove.
8149         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8150         unique_xmalloc_ptr.
8151         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8152         (struct header_file_location): Add constructor.
8153         (add_bincl_to_list): Remove.
8154
8155 2018-05-25  Tom Tromey  <tom@tromey.com>
8156
8157         * tui/tui.c (tui_enable): Update.
8158         * mi/mi-interp.c (mi_interp::init): Update.
8159         * interps.h (class interp) <name>: New method.
8160         <m_name>: Rename from name.
8161         (~scoped_restore_interp): Update.
8162         * interps.c (interp::interp): Update.
8163         (interp_add, interp_set, interp_lookup_existing)
8164         (current_interp_named_p): Update.
8165
8166 2018-05-25  Tom Tromey  <tom@tromey.com>
8167
8168         * interps.c (interp_name): Remove.
8169         * mi/mi-interp.c (mi_interp::init): Update.
8170         * interps.h (interp_name): Remove.
8171         (~scoped_restore_interp): Update.
8172         * tui/tui.c (tui_enable): Update.
8173
8174 2018-05-25  Tom Tromey  <tom@tromey.com>
8175
8176         * utils.c (fputs_maybe_filtered): Update.
8177         * linespec.c (decode_line_full): Update.
8178         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8179         (mi_print_breakpoint_for_event, mi_solib_loaded)
8180         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8181         (mi_user_selected_context_changed): Update.
8182         * mi/mi-main.c (mi_execute_command): Update.
8183         * cli/cli-script.c (execute_control_command): Update.
8184         * python/python.c (execute_gdb_command): Update.
8185         * solib.c (info_sharedlibrary_command): Update.
8186         * interps.c (interp_ui_out): Remove.
8187         * interps.h (interp_ui_out): Remove.
8188
8189 2018-05-25  Tom Tromey  <tom@tromey.com>
8190
8191         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8192         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8193         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8194
8195 2018-05-25  Tom Tromey  <tom@tromey.com>
8196
8197         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8198         * interps.c (interp_exec): Use scoped_restore.
8199
8200 2018-05-25  Tom Tromey  <tom@tromey.com>
8201
8202         * remote.c (remote_target::remote_file_get): Use
8203         gdb::byte_vector.
8204         (remote_target::remote_file_put): Likewise.
8205
8206 2018-05-25  Tom Tromey  <tom@tromey.com>
8207
8208         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8209         a std::string.
8210         (get_pe_section_index, add_pe_exported_sym): Update.
8211         (read_pe_exported_syms): Use gdb::def_vector.
8212
8213 2018-05-25  Tom Tromey  <tom@tromey.com>
8214
8215         * frame.c (remove_prev_frame): Remove.
8216         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8217
8218 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8219
8220         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8221         Remove prototypes.
8222         * mips-linux-nat.c (supply_fpregset): Always call
8223         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8224         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8225         `mips_fill_fpregset'.
8226         * mips-linux-tdep.c (mips_supply_fpregset)
8227         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8228         (mips_fill_fpregset_wrapper): Remove functions.
8229         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8230         (mips_linux_fpregset): Remove variable.
8231         (mips_linux_iterate_over_regset_sections): Use
8232         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8233         (mips_linux_o32_sigframe_init): Remove comment.
8234
8235 2018-05-25  Pedro Alves  <palves@redhat.com>
8236
8237         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8238         (struct readahead_cache, struct packet_reg, struct
8239         remote_arch_state, class remote_state): Move higher up in the
8240         file.
8241         (remote_target::m_remote_state): Now an object instead of a pointer.
8242         (remote_target::get_remote_state): Adjust.
8243
8244 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8245
8246         * stack.c (select_and_print_frame): Delete.
8247         (struct function_bounds): Move struct within function.
8248         (func_command): Most content moved into new function
8249         find_frame_for_function, use new function, print result, add
8250         function comment.
8251         (find_frame_for_function): New function, now returns a result.
8252
8253 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8254
8255         * stack.c (iterate_over_block_arg_vars): Fix comment.
8256         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8257
8258 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8259
8260         PR gdb/23203
8261         * frame.c
8262         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8263         Define.
8264         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8265         Define.
8266         * frame.h (class scoped_restore_selected_frame): New class.
8267         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8268         of any exception, use scoped_restore_selected_frame to restore the
8269         frame instead.
8270
8271 2018-05-24  Pedro Alves  <palves@redhat.com>
8272
8273         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8274         override.
8275
8276 2018-05-23  Tom Tromey  <tom@tromey.com>
8277
8278         * complaints.c (struct complaints): Remove.
8279         (symfile_complaint_book): Remove.
8280         (series): New global.
8281         (complaint_internal): Update.
8282         (clear_complaints): Update.
8283
8284 2018-05-23  Tom Tromey  <tom@tromey.com>
8285
8286         * complaints.c (counters): New global.
8287         (struct complain): Remove.
8288         (struct complaints) <root>: Remove.
8289         (complaint_sentinel): Remove.
8290         (symfile_complaint_book): Update.
8291         (find_complaint) Remove.
8292         (complaint_internal, clear_complaints): Update.
8293
8294 2018-05-23  Tom Tromey  <tom@tromey.com>
8295
8296         * complaints.c (struct complain) <file, line>: Remove.
8297         (find_complaint): Remove file, line parameters.
8298         (complaint_internal): Update.
8299
8300 2018-05-23  Tom Tromey  <tom@tromey.com>
8301
8302         * complaints.c (vcomplaint): Remove.
8303         (complaint_internal) Merge in contents of vcomplaint.
8304
8305 2018-05-23  Tom Tromey  <tom@tromey.com>
8306
8307         * complaints.c (struct complaints) <explanation>: Remove.
8308         (symfile_explanations): Remove.
8309         (symfile_complaint_book): Update.
8310         (vcomplaint): Update.
8311         (struct explanation): Remove.
8312
8313 2018-05-23  Tom Tromey  <tom@tromey.com>
8314
8315         * complaints.c (symfile_complaints): Remove.
8316         (complaint_internal): Remove "complaints" parameter.
8317         (clear_complaints, vcomplaint): Remove "c" parameter.
8318         (get_complaints): Remove.
8319         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8320         (dwarf2_debug_line_missing_file_complaint)
8321         (dwarf2_debug_line_missing_end_sequence_complaint)
8322         (dwarf2_complex_location_expr_complaint)
8323         (dwarf2_const_value_length_mismatch_complaint)
8324         (dwarf2_section_buffer_overflow_complaint)
8325         (dwarf2_macro_malformed_definition_complaint)
8326         (dwarf2_invalid_attrib_class_complaint)
8327         (create_addrmap_from_index, dw2_symtab_iter_next)
8328         (dw2_expand_marked_cus)
8329         (dw2_debug_names_iterator::find_vec_in_debug_names)
8330         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8331         (create_debug_type_hash_table, init_cutu_and_read_dies)
8332         (partial_die_parent_scope, add_partial_enumeration)
8333         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8334         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8335         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8336         (create_cus_hash_table, create_dwp_hash_table)
8337         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8338         (dwarf2_rnglists_process, dwarf2_ranges_process)
8339         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8340         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8341         (handle_struct_member_die, process_structure_scope)
8342         (read_array_type, read_common_block, read_module_type)
8343         (read_tag_pointer_type, read_typedef, read_base_type)
8344         (read_subrange_type, load_partial_dies, partial_die_info::read)
8345         (partial_die_info::read, partial_die_info::read)
8346         (partial_die_info::read, read_checked_initial_length_and_offset)
8347         (dwarf2_string_attr, read_formatted_entries)
8348         (dwarf_decode_line_header)
8349         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8350         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8351         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8352         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8353         (get_signatured_type, get_DW_AT_signature_type)
8354         (decode_locdesc, file_file_name, consume_improper_spaces)
8355         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8356         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8357         (dwarf2_symbol_mark_computed, set_die_type)
8358         (read_attribute_value): Update.
8359         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8360         Update.
8361         * dbxread.c (unknown_symtype_complaint)
8362         (lbrac_mismatch_complaint, repeated_header_complaint)
8363         (set_namestring, function_outside_compilation_unit_complaint)
8364         (read_dbx_symtab, process_one_symbol): Update.
8365         * gdbtypes.c (stub_noname_complaint): Update.
8366         * windows-nat.c (handle_unload_dll): Update.
8367         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8368         (decode_base_type): Update.
8369         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8370         (eb_complaint, record_include_begin, record_include_end)
8371         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8372         (process_xcoff_symbol, read_symbol)
8373         (function_outside_compilation_unit_complaint)
8374         (scan_xcoff_symtab): Update.
8375         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8376         * buildsym.c (finish_block_internal, make_blockvector)
8377         (end_symtab_get_static_block, augment_type_symtab): Update.
8378         * dtrace-probe.c (dtrace_process_dof)
8379         (dtrace_static_probe_ops::get_probes): Update.
8380         * complaints.h (struct complaint): Don't declare.
8381         (symfile_complaints): Remove.
8382         (complaint_internal): Remove "complaints" parameter.
8383         (complaint): Likewise.
8384         (clear_complaints): Likewise.
8385         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8386         (reread_symbols): Update.
8387         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8388         (dwarf2_frame_cache, decode_frame_entry): Update.
8389         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8390         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8391         (info_selectors_command): Update.
8392         * macrotab.c (macro_include, check_for_redefinition)
8393         (macro_undef): Update.
8394         * objfiles.c (filter_overlapping_sections): Update.
8395         * stabsread.c (invalid_cpp_abbrev_complaint)
8396         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8397         (define_symbol, error_type, read_type, rs6000_builtin_type)
8398         (stabs_method_name_from_physname, read_member_functions)
8399         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8400         (attach_fields_to_type, complain_about_struct_wipeout)
8401         (read_range_type, read_args, common_block_start)
8402         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8403         Update.
8404         * mdebugread.c (index_complaint, unknown_ext_complaint)
8405         (basic_type_complaint, bad_tag_guess_complaint)
8406         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8407         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8408         (parse_procedure, parse_lines)
8409         (function_outside_compilation_unit_complaint)
8410         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8411         (bad_tag_guess_complaint, reg_value_complaint): Update.
8412         * cp-support.c (demangled_name_complaint): Update.
8413         * macroscope.c (sal_macro_scope): Update.
8414         * dwarf-index-write.c (class debug_names): Update.
8415
8416 2018-05-23  Tom Tromey  <tom@tromey.com>
8417
8418         * complaints.c (clear_complaints): Remove "noisy" parameter.
8419         * complaints.h (clear_complaints): Update.
8420         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8421         (reread_symbols): Update.
8422
8423 2018-05-23  Tom Tromey  <tom@tromey.com>
8424
8425         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8426         SUBSEQUENT_MESSAGE.
8427         (vcomplaint, clear_complaints): Update.
8428         (symfile_explanations): Remove some messages.
8429
8430 2018-05-23  Tom Tromey  <tom@tromey.com>
8431
8432         * complaints.c (internal_complaint): Remove.
8433         * complaints.h (internal_complaint): Remove.
8434
8435 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8436
8437         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8438
8439 2018-05-22  Pedro Alves  <palves@redhat.com>
8440
8441         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8442         (remote_fileio_badfd, remote_fileio_return_errno)
8443         (remote_fileio_return_success, remote_fileio_func_open)
8444         (remote_fileio_func_open, remote_fileio_func_close)
8445         (remote_fileio_func_read, remote_fileio_func_write)
8446         (remote_fileio_func_lseek, remote_fileio_func_rename)
8447         (remote_fileio_func_unlink, remote_fileio_func_stat)
8448         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8449         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8450         remote_target parameter.
8451         (remote_fio_func_map) <func>: Add remote_target parameter.
8452         (do_remote_fileio_request, remote_fileio_request):
8453         * remote-fileio.h (remote_fileio_request):
8454         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8455         remote_target parameter.
8456         (remote_notif_process, handle_notification): Adjust to pass down
8457         the remote.
8458         (remote_notif_state_allocate): Add remote_target parameter.  Save
8459         it.
8460         * remote-notif.h (struct remote_target): Forward declare.
8461         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8462         remote_target parameter.
8463         (struct remote_notif_state) <remote>: New field.
8464         (remote_notif_ack, remote_notif_parse): Add remote_target
8465         parameter.
8466         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8467         remote_target parameter.
8468         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8469         (threads_listing_context, rmt_thread_action, protocol_feature)
8470         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8471         (packet_result, struct threads_listing_context, remote_state):
8472         Move definitions and declarations higher up.
8473         (remote_target) <~remote_target>: Declare.
8474         (remote_download_command_source, remote_file_put, remote_file_get)
8475         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8476         (remote_hostio_pread_vFile, remote_hostio_send_command)
8477         (remote_hostio_set_filesystem, remote_hostio_open)
8478         (remote_hostio_close, remote_hostio_unlink, remote_state)
8479         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8480         (get_memory_write_packet_size, get_memory_read_packet_size)
8481         (append_pending_thread_resumptions, remote_detach_1)
8482         (append_resumption, remote_resume_with_vcont)
8483         (add_current_inferior_and_thread, wait_ns, wait_as)
8484         (process_stop_reply, remote_notice_new_inferior)
8485         (process_initial_stop_replies, remote_add_thread)
8486         (btrace_sync_conf, remote_btrace_maybe_reopen)
8487         (remove_new_fork_children, kill_new_fork_children)
8488         (discard_pending_stop_replies, stop_reply_queue_length)
8489         (check_pending_events_prevent_wildcard_vcont)
8490         (discard_pending_stop_replies_in_queue, stop_reply)
8491         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8492         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8493         (remote_interrupt_as, remote_interrupt_ns)
8494         (remote_get_noisy_reply, remote_query_attached)
8495         (remote_add_inferior, remote_current_thread, get_current_thread)
8496         (set_thread, set_general_thread, set_continue_thread)
8497         (set_general_process, write_ptid)
8498         (remote_unpack_thread_info_response, remote_get_threadinfo)
8499         (parse_threadlist_response, remote_get_threadlist)
8500         (remote_threadlist_iterator, remote_get_threads_with_ql)
8501         (remote_get_threads_with_qxfer)
8502         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8503         (get_offsets, remote_check_symbols, remote_supported_packet)
8504         (remote_query_supported, remote_packet_size)
8505         (remote_serial_quit_handler, remote_detach_pid)
8506         (remote_vcont_probe, remote_resume_with_hc)
8507         (send_interrupt_sequence, interrupt_query)
8508         (remote_notif_get_pending_events, fetch_register_using_p)
8509         (send_g_packet, process_g_packet, fetch_registers_using_g)
8510         (store_register_using_P, store_registers_using_G)
8511         (set_remote_traceframe, check_binary_download)
8512         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8513         (remote_xfer_live_readonly_partial, remote_read_bytes)
8514         (remote_send_printf, remote_flash_write, readchar)
8515         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8516         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8517         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8518         (extended_remote_disable_randomization, extended_remote_run)
8519         (send_environment_packet, extended_remote_environment_support)
8520         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8521         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8522         (packet_command): Now methods of ...
8523         (remote_target): ... this class.
8524         (m_remote_state) <remote_target>: New field.
8525         (struct remote_state) <stop_reply_queue,
8526         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8527         fields.
8528         (remote_state::remote_state): Allocate stop_reply_queue.
8529         (remote_state): Delete global.
8530         (get_remote_state_raw): Delete.
8531         (remote_target::get_remote_state): Allocate m_remote_state on
8532         demand.
8533         (get_current_remote_target): New.
8534         (remote_ops, extended_remote_ops): Delete.
8535         (wait_forever_enabled_p, remote_async_inferior_event_token):
8536         Delete, moved to struct remote_state.
8537         (remote_target::close): Delete self.  Destruction bits split to
8538         ...
8539         (remote_target::~remote_target): ... this.
8540         (show_memory_packet_size): Adjust to use
8541         get_current_remote_target.
8542         (struct protocol_feature) <func>: Add remote_target parameter.
8543         All callers adjusted.
8544         (curr_quit_handler_target): New.
8545         (remote_serial_quit_handler): Reimplement.
8546         (remote_target::open_1): Adjust to use get_current_remote_target.
8547         Heap-allocate remote_target/extended_remote_target instances.
8548         (vcont_builder::vcont_builder): Add remote_target parameter, and
8549         save it in m_remote.  All callers adjusted.
8550         (vcont_builder::m_remote): New field.
8551         (vcont_builder::restart, vcont_builder::flush)
8552         (vcont_builder::push_action): Use it.
8553         (remote_target::commit_resume): Use it.
8554         (struct queue_iter_param) <remote>: New field.
8555         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8556         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8557         (check_pending_event_prevents_wildcard_vcont_callback)
8558         (remote_target::check_pending_events_prevent_wildcard_vcont)
8559         (remote_target::discard_pending_stop_replies)
8560         (remote_target::discard_pending_stop_replies_in_queue)
8561         (remote_target::remote_notif_remove_queued_reply): Fill in
8562         'remote' field.
8563         (remote_notif_get_pending_events): New.
8564         (remote_target::readchar, remote_target::remote_serial_write):
8565         Save/restore curr_quit_handler_target.
8566         (putpkt): New.
8567         (kill_new_fork_children): Fill in 'remote' field.
8568         (packet_command): Use get_current_remote_target, defer to
8569         remote_target method of same name.
8570         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8571         parameter, and save it in m_remote.  All callers adjusted.
8572         (scoped_remote_fd::release): Use m_remote.
8573         (scoped_remote_fd::m_remote): New field.
8574         (remote_file_put, remote_file_get, remote_file_delete): Use
8575         get_current_remote_target, defer to remote_target method of same
8576         name.
8577         (remote_btrace_reset): Add remote_state paremeter.  Update all
8578         callers.
8579         (remote_async_inferior_event_handler). Pass down 'data'.
8580         (remote_new_objfile): Use get_current_remote_target.
8581         (remote_target::vcont_r_supported): New.
8582         (set_range_stepping): Use get_current_remote_target and
8583         remote_target::vcont_r_supported.
8584         (_initialize_remote): Don't allocate 'remote_state' and
8585         'stop_reply_queue' globals.
8586         * remote.h (struct remote_target): Forward declare.
8587         (getpkt, putpkt, remote_notif_get_pending_events): Add
8588         'remote_target' parameter.
8589
8590 2018-05-22  Pedro Alves  <palves@redhat.com>
8591
8592         * remote.c (vcont_builder): Now a class.  Make all data members
8593         private.
8594         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8595         Declare methods.
8596         (vcont_builder_restart): Rename to ...
8597         (vcont_builder::restart): ... this.
8598         (vcont_builder_flush): Rename to ...
8599         (vcont_builder::flush): ... this.
8600         (vcont_builder_push_action): Rename to ...
8601         (vcont_builder::push_action): ... this.
8602         (remote_target::commit_resume): Adjust.
8603
8604 2018-05-22  Pedro Alves  <palves@redhat.com>
8605
8606         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8607         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8608         (get_fixed_memory_packet_size): New.
8609         (get_memory_packet_size): Use it.
8610         (set_memory_packet_size): Don't override the config size with
8611         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8612         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8613         Don't refer to get_memory_packet_size if not connected to a remote
8614         target.  Show "(default)" if configured size is 0.
8615
8616 2018-05-22  Pedro Alves  <palves@redhat.com>
8617
8618         * remote.c (remote_target::mourn_inferior): Move
8619         discard_pending_stop_replies call here from ...
8620         (_initialize_remote): ... here.
8621
8622 2018-05-22  Pedro Alves  <palves@redhat.com>
8623
8624         * remote.c (compare_section_command): Remove set_general_process
8625         call.
8626
8627 2018-05-22  Pedro Alves  <palves@redhat.com>
8628
8629         * remote.c (struct packet_reg, struct remote_arch_state):
8630         Move higher up in the file.
8631         (remote_state) <m_arch_states>: Store remote_arch_state values
8632         instead of remote_arch_state pointers.
8633         (remote_state::get_remote_arch_state): Adjust.
8634
8635 2018-05-22  Pedro Alves  <palves@redhat.com>
8636
8637         * remote.c: Include <unordered_map>.
8638         (remote_state): Now a class.
8639         (remote_state) <get_remote_arch_state>: Declare method.
8640         <get_remote_arch_state>: New field.
8641         (remote_arch_state) <remote_arch_state>: Declare ctor.
8642         <regs>: Now a unique_ptr.
8643         (remote_gdbarch_data_handle): Delete.
8644         (get_remote_arch_state): Delete.
8645         (remote_state::get_remote_arch_state): New.
8646         (get_remote_state): Adjust to call remote_state's
8647         get_remote_arch_state method.
8648         (init_remote_state): Delete, bits factored out to ...
8649         (remote_arch_state::remote_arch_state): ... this new method.
8650         (get_remote_packet_size, get_memory_packet_size)
8651         (process_g_packet, remote_target::fetch_registers)
8652         (remote_target::prepare_to_store, store_registers_using_G)
8653         (remote_target::store_registers, remote_target::get_trace_status):
8654         Adjust to call remote_state's method.
8655         (_initialize_remote): Remove reference to
8656         remote_gdbarch_data_handle.
8657
8658 2018-05-22  Pedro Alves  <palves@redhat.com>
8659
8660         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8661         pread>: New method declarations.
8662         (remote_target::open_1): Adjust.
8663         (readahead_cache_invalidate): Rename to ...
8664         (readahead_cache::invalidate): ... this, and adjust to be a class
8665         method.
8666         (readahead_cache_invalidate_fd): Rename to ...
8667         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8668         class method.
8669         (remote_hostio_pwrite): Adjust.
8670         (remote_hostio_pread_from_cache): Rename to ...
8671         (readahead_cache::pread): ... this, and adjust to be a class
8672         method.
8673         (remote_hostio_close): Adjust.
8674
8675 2018-05-22  Pedro Alves  <palves@redhat.com>
8676
8677         * remote.c (remote_hostio_close_cleanup): Delete.
8678         (class scoped_remote_fd): New.
8679         (remote_file_put, remote_file_get): Use it.
8680
8681 2018-05-22  Pedro Alves  <palves@redhat.com>
8682
8683         (struct vCont_action_support): Use bool and initialize all fields.
8684         (struct readahead_cache): Initialize all fields.
8685         (remote_state): Use bool and initialize all fields.
8686         (remote_state::remote_state, remote_state::~remote_state): New.
8687         (new_remote_state): Delete.
8688         (_initialize_remote): Use new to allocate remote_state.
8689
8690 2018-05-22  Pedro Alves  <palves@redhat.com>
8691             張俊芝  <zjz@zjz.name>
8692
8693         PR gdb/22973
8694         * c-exp.y: Include "c-support.h".
8695         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8696         of tolower.  Use c_ident_is_alpha to scan names.
8697         * c-lang.c: Include "c-support.h".
8698         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8699         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8700         * c-support.h: New file, with bits factored out from ...
8701         * cp-name-parser.y: ... this file.
8702         Include "c-support.h".
8703         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8704         c-support.h and renamed.
8705         (symbol_end, yylex): Adjust.
8706
8707 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8708
8709         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8710         parameter type to CORE_ADDR.
8711         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8712         parameter type in declaration to CORE_ADDR.
8713         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8714         target_auxv_search to get AT_HWCAP and use the result to get the
8715         target description.
8716         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8717         to CORE_ADDR. Remove the cast of the return value to unsigned
8718         long. Fix error predicate of target_auxv_search.
8719         (ppc_linux_nat_target::read_description): Change the type of the
8720         hwcap variable to CORE_ADDR.
8721
8722 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8723
8724         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8725         if the size of fpscr is larger than 32 bits.
8726
8727 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8728
8729         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8730         (ppc32_linux_vsxregmap): New global.
8731         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8732         regcache_supply_regset, and regcache_collect_regset.
8733         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8734         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8735         (fetch_vsx_register, store_vsx_register): Remove.
8736         (fetch_vsx_registers): Add regno parameter. Get regset using
8737         ppc_linux_vsxregset. Use regset to supply registers.
8738         (store_vsx_registers): Add regno parameter. Get regset using
8739         ppc_linux_vsxregset. Use regset to collect registers.
8740         (fetch_register): Call fetch_vsx_registers instead of
8741         fetch_vsx_register.
8742         (store_register): Call store_vsx_registers instead of
8743         store_vsx_register.
8744         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8745         new regno parameter.
8746         (store_ppc_registers): Call store_vsx_registers with -1 for the
8747         new regno parameter.
8748         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8749         (ppc_collect_vsxregset): Remove.
8750
8751 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8752
8753         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8754         offset fields.
8755         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8756         for vector register offset fields.
8757         (ppc64_fbsd_reg_offsets): Likewise.
8758         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8759         to vector register offset fields.
8760         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8761         to vector register offset fields.
8762         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8763         vector register offset fields.
8764         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8765         initializers for vector register offset fields.
8766         (rs6000_aix64_reg_offsets): Likewise.
8767         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8768         (ppc_supply_vrregset): Remove.
8769         (ppc_collect_vrregset): Remove.
8770         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8771         (ppc_linux_vrregset) : New function.
8772         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8773         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8774         (ppc32_linux_vrregset): Remove.
8775         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8776         and use result instead of ppc32_linux_vrregset.
8777         (ppc32_linux_reg_offsets): Remove initializers for vector register
8778         offset fields.
8779         (ppc64_linux_reg_offsets): Likewise.
8780         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8781         * ppc-linux-nat.c: Include regset.h.
8782         (gdb_vrregset_t): Adjust comment to account for little-endian
8783         mode.
8784         (supply_vrregset, fill_vrregset): Remove.
8785         (fetch_altivec_register, store_altivec_register): Remove.
8786         (fetch_altivec_registers): Add regno parameter. Get regset using
8787         ppc_linux_vrregset. Use regset to supply registers.
8788         (store_altivec_registers): Add regno parameter. Get regset using
8789         ppc_linux_vrregset. Use regset to collect registers.
8790         (fetch_register): Call fetch_altivec_registers instead of
8791         fetch_altivec_register.
8792         (store_register): Call store_altivec_registers instead of
8793         store_altivec_register.
8794         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8795         the new regno parameter.
8796         (store_ppc_registers): Call store_altivec_registers with -1 for
8797         the new regno parameter.
8798
8799 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8800
8801         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8802         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8803         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8804         (gdb_vrregset_t): Change array type size to
8805         PPC_LINUX_SIZEOF_VRREGSET.
8806         (gdb_vsxregset_t): Change array type size to
8807         PPC_LINUX_SIZEOF_VSXREGSET.
8808         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8809         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8810         PPC_LINUX_SIZEOF_VSXREGSET.
8811
8812 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8813
8814         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8815         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8816         nat/ppc-linux.c.
8817         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8818         ppc_linux_target_wordsize with tid.
8819         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8820         wordsize with tid.
8821         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8822         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8823         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8824         tid parameter. Remove static specifier.
8825         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8826         (ppc_linux_target_wordsize): New declaration.
8827
8828 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8829
8830         * arch/ppc-linux-common.c: New file.
8831         * arch/ppc-linux-common.h: New file.
8832         * arch/ppc-linux-tdesc.h: New file.
8833         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8834         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8835         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8836         arch/ppc-linux-tdesc.h.
8837         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8838         arch/ppc-linux-tdesc.h.
8839         (ppc_linux_nat_target::read_description): Remove target
8840         description matching code. Fill a ppc_linux_features struct and
8841         call ppc_linux_match_description with it. Move comment about ISA
8842         2.05 to ppc-linux-common.c.
8843         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8844         arch/ppc-linux-tdesc.h.
8845         (ppc_linux_core_read_description): Remove target description
8846         matching code. Fill a ppc_linux_features struct and call
8847         ppc_linux_match_description with it.
8848         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8849         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8850         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8851         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8852         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8853         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8854         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8855         (tdesc_powerpc_e500l): Remove.
8856
8857 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8858
8859         * ada-lang.c (catch_assert_command): Pass empty string instead
8860         of NULL for excep_string argument.
8861
8862 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8863
8864         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8865         the width of the requested register exceeds the width of the
8866         `ptrace' data type.
8867
8868 2018-05-21  Tom Tromey  <tom@tromey.com>
8869
8870         * printcmd.c (output_command): Remove.
8871         (output_command_const): Rename to output_command.
8872         * valprint.h (output_command): Rename from output_command_const.
8873         * tracepoint.c (trace_dump_actions): Call output_command.
8874
8875 2018-05-21  Tom Tromey  <tom@tromey.com>
8876
8877         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8878         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8879         * ada-lang.h (create_ada_exception_catchpoint): Update.
8880         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8881         std::string.
8882         (create_excep_cond_exprs, ~ada_catchpoint)
8883         (should_stop_exception, print_one_exception)
8884         (print_mention_exception, print_recreate_exception): Update.
8885         (ada_get_next_arg): Remove.
8886         (catch_ada_exception_command_split): Use std::string.  Change type
8887         of "excep_string", "cond_string".
8888         (catch_ada_exception_command): Update.
8889         (create_ada_exception_catchpoint): Change type of excep_string.
8890         (ada_exception_sal): Remove excep_string parameter.
8891         (~ada_catchpoint): Remove.
8892
8893 2018-05-21  Tom Tromey  <tom@tromey.com>
8894
8895         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8896         cleanup.
8897
8898 2018-05-21  Tom Tromey  <tom@tromey.com>
8899
8900         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8901         Return unique_xmalloc_ptr.
8902         (print_it_exception): Update.
8903
8904 2018-05-21  Tom Tromey  <tom@tromey.com>
8905
8906         * tracepoint.c (trace_dump_actions): Use std::string.
8907
8908 2018-05-21  Tom Tromey  <tom@tromey.com>
8909
8910         * symfile.c (reread_symbols): Use std::string for original_name.
8911
8912 2018-05-21  Tom Tromey  <tom@tromey.com>
8913
8914         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8915         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8916         constructor.
8917
8918 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8919
8920         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8921         instance to...
8922         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8923         * objfiles.c (get_objfile_bfd_data): Allocate
8924         objfile_per_bfd_storage with obstack_new when allocating on
8925         obstack.
8926
8927 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8928
8929         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8930         OBSTACK_ZALLOC.
8931         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8932         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8933         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8934         (add_pending): Likewise.
8935         (parse_symbol): Likewise.
8936         (parse_partial_symbols): Likewise.
8937         (psymtab_to_symtab_1): Likewise.
8938         (new_psymtab): Likewise.
8939         (elfmdebug_build_psymtabs): Likewise.
8940         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8941         * objfiles.c (get_objfile_bfd_data): Likewise.
8942         (objfile_register_static_link): Likewise.
8943         * psymtab.c (allocate_psymtab): Likewise.
8944         * stabsread.c (read_member_functions): Likewise.
8945         * xcoffread.c (xcoff_end_psymtab): Likewise.
8946
8947 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8948
8949         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8950         compiler supports std::is_trivially_constructible.
8951         * common/poison.h: Include obstack.h.
8952         (IsMallocable): Define to is_trivially_constructible if the
8953         compiler supports it, define to true_type otherwise.
8954         (xobnew): New.
8955         (XOBNEW): Redefine.
8956         (xobnewvec): New.
8957         (XOBNEWVEC): Redefine.
8958         * gdb_obstack.h (obstack_zalloc): New.
8959         (OBSTACK_ZALLOC): Redefine.
8960         (obstack_calloc): New.
8961         (OBSTACK_CALLOC): Redefine.
8962         (obstack_new): New.
8963         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8964         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8965         gdbarch.c.
8966         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8967         obstack_calloc/obstack_zalloc.
8968         (gdbarch_obstack_zalloc): Remove.
8969         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8970
8971 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8972
8973         * stack.c (backtrace_command_1): Remove useless variable int i.
8974
8975 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8976
8977         * stack.c (print_frame_info): Fix comment.
8978
8979 2018-05-18  Tom Tromey  <tom@tromey.com>
8980
8981         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8982         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8983         (~dwarf2_per_objfile): Update
8984         (dwarf2_get_dwz_file): Use new.
8985         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8986         unique_ptr.
8987
8988 2018-05-18  Tom Tromey  <tom@tromey.com>
8989
8990         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8991         unique_ptr.
8992         * dwarf2read.c (struct dwp_file): Add constructor and
8993         initializers.
8994         (open_and_init_dwp_file): Return a unique_ptr.
8995         (dwarf2_per_objfile, create_dwp_hash_table)
8996         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8997         (lookup_dwo_unit_in_dwp): Update.
8998         (open_and_init_dwp_file, get_dwp_file): Update.
8999
9000 2018-05-18  Tom Tromey  <tom@tromey.com>
9001
9002         * dwarf2read.c (dwarf2_per_objfile): Update.
9003         (struct mapped_index): Add initializers.
9004         (dwarf2_read_index): Use new.
9005         (dw2_symtab_iter_init): Update.
9006         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9007         unique_ptr.
9008
9009 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9010
9011         * dwarf2read.c (mapped_index) <total_size>: Remove.
9012
9013 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9014
9015         * unittests/format_pieces-selftests.c (test_format_specifier):
9016         Add ARI comments.
9017
9018 2018-05-18  Tom Tromey  <tom@tromey.com>
9019
9020         * c-typeprint.c (maybe_print_hole): New function.
9021         (c_print_type_struct_field_offset): Update.
9022         (c_type_print_base_struct_union): Call maybe_print_hole.
9023
9024 2018-05-17  Keith Seitz  <keiths@redhat.com>
9025
9026         * breakpoint.c (build_bpstat_chain): New function, moved from
9027         bpstat_stop_status.
9028         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9029         If no stop chain is passed, call build_bpstat_chain to build it.
9030         * breakpoint.h (build_bpstat_chain): Declare.
9031         (bpstat_stop_status): Move documentation here from breakpoint.c.
9032         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9033         build the stop chain and pass it to skip_inline_frames.
9034         Pass this stop chain to bpstat_stop_status.
9035         * inline-frame.c: Include breakpoint.h.
9036         (stopped_by_user_bp_inline_frame): New function.
9037         (skip_inline_frames): Add parameter `stop_chain'.
9038         Move documention to inline-frame.h.
9039         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9040         whether the frame should be elided.
9041         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9042         Add moved documentation and update for new parameter.
9043
9044 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9045
9046         PR cli/14975
9047         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9048         unittests/format_pieces-selftests.c.
9049         * common/format.h (format_piece) <operator==>: New.
9050         (format_pieces) <operator[]>: Remove.
9051         * common/format.c (format_pieces::format_pieces): Handle \e.
9052         * unittests/format_pieces-selftests.c: New.
9053
9054 2018-05-17  Tom Tromey  <tom@tromey.com>
9055
9056         PR symtab/23010:
9057         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9058         (dw2_instantiate_symtab): Add skip_partial parameter.
9059         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9060         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9061         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9062         (dw2_expand_symtabs_matching_one)
9063         (dw2_find_pc_sect_compunit_symtab)
9064         (dw2_debug_names_lookup_symbol)
9065         (dw2_debug_names_expand_symtabs_for_function): Update.
9066         (init_cutu_and_read_dies): Add skip_partial parameter.
9067         (process_psymtab_comp_unit, build_type_psymtabs_1)
9068         (process_skeletonless_type_unit, load_partial_comp_unit)
9069         (psymtab_to_symtab_1): Update.
9070         (load_full_comp_unit): Add skip_partial parameter.
9071         (process_imported_unit_die, dwarf2_read_addr_index)
9072         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9073         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9074         (read_signatured_type): Update.
9075
9076 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9077
9078         * value.c (release_value): Remove unused variable.
9079         (record_latest_value): Likewise.
9080         (access_value_history): Likewise.
9081         (preserve_values): Likewise.
9082
9083 2018-05-17  Tom Tromey  <tom@tromey.com>
9084
9085         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9086         Initialize.
9087
9088 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9089
9090         PR gdb/22286
9091         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9092         Also handle registers whose width is not a multiple of
9093         PTRACE_TYPE_RET.
9094         (linux_nat_trad_target::store_register): Likewise.
9095
9096 2018-05-16  Tom Tromey  <tom@tromey.com>
9097
9098         * gdbcore.h (core_bfd): Redefine.
9099         * corelow.c (core_target::close): Update.
9100         (core_target_open): Update.
9101         * progspace.h (struct program_space) <cbfd>: Now a
9102         gdb_bfd_ref_ptr.
9103
9104 2018-05-16  Tom Tromey  <tom@tromey.com>
9105
9106         PR cli/19551:
9107         * symfile-add-flags.h (enum symfile_add_flags)
9108         <SYMFILE_NOT_FILENAME>: New constant.
9109         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9110         objfile name from BFD.
9111         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9112         * minidebug.c (find_separate_debug_file_in_section): Put
9113         ".gnu_debugdata" into BFD's file name.
9114
9115 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9116
9117         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9118         Remove.
9119
9120 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9121
9122         PR binutils/21446
9123         * aarch64-tdep.c (aarch64_analyze_prologue,
9124         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9125         Indicate not interested in errors.
9126
9127 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9128
9129         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9130         Supply the MIPS_ZERO_REGNUM register.
9131
9132 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9133
9134         * mips-tdep.c (mask_address_var): Make variable static.
9135
9136 2018-05-14  Tom Tromey  <tom@tromey.com>
9137
9138         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9139
9140 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9141
9142         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9143         FXSAVE_ADDR for the mxcsr register.
9144
9145 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9146
9147         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9148
9149 2018-05-11  Pedro Alves  <palves@redhat.com>
9150
9151         * corelow.c (core_target) <core_target>: No longer inline.
9152         Initialize m_core_gdbarch, m_core_vec and build the section table
9153         here.
9154         <~core_target>: New.
9155         <core_gdbarch, get_core_register_section>: New methods.
9156         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9157         factored out from ...
9158         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9159         (core_ops): Delete.
9160         (sniff_core_bfd): Add gdbarch parameter.
9161         (core_close): Delete, merged into ...
9162         (core_target::close): ... here.  Delete self.
9163         (core_close_cleanup): Delete.
9164         (core_target_open): Allocate a core_target on the heap.  Use a
9165         unique_ptr instead of a cleanup.  Bits moved into the core_target
9166         ctor.  Adjust to use core_target methods instead of globals.
9167         (get_core_register_section): Rename to ...
9168         (core_target::get_core_register_section): ... this and adjust.
9169         (struct get_core_registers_cb_data): New.
9170         (get_core_registers_cb): Use it.  Use bool.
9171         (core_target::fetch_registers, core_target::files_info)
9172         (core_target::xfer_partial, core_target::read_description)
9173         (core_target::pid_to, core_target::thread_name): Adjust to
9174         reference class fields instead of globals.
9175         * target.h (struct target_ops_deleter, target_ops_up): New.
9176
9177 2018-05-11  Pedro Alves  <palves@redhat.com>
9178
9179         * corefile.c (core_file_command): Move to corelow.c.
9180         * corelow.c (the_core_target): Delete.
9181         (core_file_command): Moved from corefile.c.  Check exec_bfd
9182         instead of the_core_target.  Use target_detach instead of calling
9183         into the_core_target directly.
9184         (maybe_say_no_core_file_now): New.
9185         (core_target::detach): Use it.
9186         (_initialize_corelow): Remove references to the_core_target.
9187         * gdbcore.h (the_core_target): Delete.
9188
9189 2018-05-11  Tom Tromey  <tromey@redhat.com>
9190             Pedro Alves  <palves@redhat.com>
9191
9192         * corefile.c (core_bfd): Remove.
9193         * gdbcore.h (core_bfd): Now a macro.
9194         * progspace.h (struct program_space) <cbfd>: New field.
9195
9196 2018-05-11  Tom Tromey  <tom@tromey.com>
9197
9198         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9199         gdb::def_vector.
9200
9201 2018-05-10  Tom Tromey  <tom@tromey.com>
9202
9203         * configure: Rebuild.
9204         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9205
9206 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9207
9208         PR server/23158:
9209         * regformats/regdat.sh: Adjust script, following the addition
9210         of the new expedite_regs parameter to init_target_desc.
9211
9212 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9213     
9214         PR gdb/23127
9215         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9216         set_gdbarch_significant_addr_bit.
9217         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9218         set_gdbarch_significant_addr_bit.
9219         * utils.c (address_significant): Update to sign extend addr.
9220
9221 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9222
9223         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9224         (xtensa_linux_init_abi): Limit tdep->num_regs by
9225         tdep->num_nopriv_regs.
9226         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9227         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9228         not initialized.
9229
9230 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9231
9232         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9233
9234 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9235
9236         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9237         (I387_MXCSR_INIT_VAL): New constant.
9238         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9239         buffer if it was supplied by the inferior.
9240         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9241         (i387_xsave_get_clear_bv): New function.
9242         (i387_supply_xsave): Only read x87 control registers from the
9243         xsave buffer if the feature is enabled, and the state will have
9244         been written, otherwise, provide a suitable default.
9245         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9246         including x87 control registers.  Update control registers if they
9247         have changed from the default value, and mark features as enabled
9248         as required.
9249         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9250
9251 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9252
9253         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9254
9255 2018-05-07  Tom Tromey  <tom@tromey.com>
9256
9257         * configure: Rebuild.
9258         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9259
9260 2018-05-07  Tom Tromey  <tom@tromey.com>
9261
9262         PR tdep/20362:
9263         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9264         bit.  Use correct value for VDIV.
9265
9266 2018-05-04  Tom Tromey  <tom@tromey.com>
9267
9268         * configure: Rebuild.
9269         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9270
9271 2018-05-04  Tom Tromey  <tom@tromey.com>
9272
9273         * linux-record.c (record_linux_system_call) <case
9274         RECORD_SYS_RECVFROM>: Add "break".
9275
9276 2018-05-04  Tom Tromey  <tom@tromey.com>
9277
9278         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9279         Add missing "break".
9280         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9281         Add missing "break".
9282
9283 2018-05-04  Tom Tromey  <tom@tromey.com>
9284
9285         * rs6000-tdep.c (ppc_process_record_op4)
9286         (ppc_process_record_op63): Add fall-through comment.
9287
9288 2018-05-04  Tom Tromey  <tom@tromey.com>
9289
9290         * i386-tdep.c (i386_process_record): Add fall-through comment.
9291
9292 2018-05-04  Tom Tromey  <tom@tromey.com>
9293
9294         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9295         comment.
9296
9297 2018-05-04  Tom Tromey  <tom@tromey.com>
9298
9299         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9300         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9301         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9302         comment.
9303         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9304         comment.
9305         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9306         comment.
9307
9308 2018-05-04  Tom Tromey  <tom@tromey.com>
9309
9310         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9311
9312 2018-05-04  Tom Tromey  <tom@tromey.com>
9313
9314         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9315         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9316         * symfile.c (section_is_mapped): Fix fall-through comment.
9317         * stabsread.c (define_symbol, read_member_functions): Fix
9318         fall-through comment.
9319         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9320         comment.
9321         * remote.c (remote_wait_as): Fix fall-through comment.
9322         * p-exp.y (yylex): Fix fall-through comment.
9323         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9324         comment.
9325         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9326         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9327         * jv-exp.y (yylex): Fix fall-through comment.
9328         * go-exp.y (lex_one_token): Fix fall-through comment.
9329         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9330         fall-through comment.
9331         * f-exp.y (yylex): Fix fall-through comment.
9332         * dwarf2read.c (process_die): Fix fall-through comments.
9333         * dbxread.c (process_one_symbol): Fix fall-through comment.
9334         * d-exp.y (lex_one_token): Fix fall-through comment.
9335         * cp-name-parser.y (yylex): Fix fall-through comment.
9336         * coffread.c (coff_symtab_read): Fix fall-through comment.
9337         * c-exp.y (lex_one_token): Fix fall-through comment.
9338         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9339         comment.
9340         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9341         comment.
9342
9343 2018-05-04  Tom Tromey  <tom@tromey.com>
9344
9345         PR python/22730:
9346         * NEWS: Mention gdb.execute change.
9347         * gdbcmd.h (execute_control_command): Don't declare.
9348         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9349         execute_control_commands, execute_control_commands_to_string.
9350         * cli/cli-script.h (execute_control_commands)
9351         (execute_control_commands_to_string): Declare.
9352         (execute_control_command): Add from_tty parameter.
9353         * cli/cli-script.c (execute_control_commands)
9354         (execute_control_commands_to_string): New functions.
9355         (execute_user_command): Use execute_control_commands.
9356         (execute_control_command_1): Add "from_tty" parameter.  Update.
9357         (execute_control_command): Likewise.
9358
9359 2018-05-04  Tom Tromey  <tom@tromey.com>
9360
9361         PR python/22731:
9362         * NEWS: Mention that breakpoint commands are writable.
9363         * python/py-breakpoint.c (bppy_set_commands): New function.
9364         (breakpoint_object_getset) <"commands">: Use it.
9365
9366 2018-05-04  Tom Tromey  <tom@tromey.com>
9367
9368         * tracepoint.c (actions_command): Update.
9369         * mi/mi-cmd-break.c (mi_command_line_array)
9370         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9371         (mi_read_next_line): Remove.
9372         (mi_cmd_break_commands): Update.
9373         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9374         function_view.
9375         * cli/cli-script.c (get_command_line): Update.
9376         (process_next_line): Use function_view.  Constify.
9377         (recurse_read_control_structure, read_command_lines)
9378         (read_command_lines_1): Change argument types to function_view.
9379         (do_define_command, document_command): Update.
9380         * breakpoint.h (check_tracepoint_command): Don't declare.
9381         * breakpoint.c (check_tracepoint_command): Remove.
9382         (commands_command_1, create_tracepoint_from_upload): Update.
9383
9384 2018-05-04  Tom Tromey  <tom@tromey.com>
9385
9386         PR gdb/11750:
9387         * cli/cli-script.h (enum command_control_type) <define_control>:
9388         New constant.
9389         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9390         (build_command_line, execute_control_command_1)
9391         (process_next_line): Likewise.
9392         (do_define_command): New function, extracted from define_command.
9393         (define_command): Use it.
9394
9395 2018-05-04  Tom Tromey  <tom@tromey.com>
9396
9397         * tracepoint.c (actions_command): Update.
9398         * cli/cli-script.h (read_command_lines): Update.
9399         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9400         (MAX_TMPBUF): Remove define.
9401         (define_command): Use string_printf.
9402         (document_command): Likewise.
9403         * breakpoint.c (commands_command_1): Update.
9404
9405 2018-05-04  Tom Tromey  <tom@tromey.com>
9406
9407         * top.c (execute_command): Update.
9408         * cli/cli-script.h (print_command_lines): Now varargs.
9409         * cli/cli-script.c (print_command_lines): Now varargs.
9410         (execute_control_command_1) <case while_control, case if_control>:
9411         Update.
9412
9413 2018-05-04  Tom Tromey  <tom@tromey.com>
9414
9415         * tracepoint.c (all_tracepoint_actions): Rename from
9416         all_tracepoint_actions_and_cleanup.  Change return type.
9417         (actions_command, encode_actions_1, encode_actions)
9418         (trace_dump_actions, tdump_command): Update.
9419         * remote.c (remote_download_command_source): Update.
9420         * python/python.c (gdbpy_eval_from_control_command)
9421         (python_command, python_interactive_command): Update.
9422         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9423         * guile/guile.c (guile_command)
9424         (gdbscm_eval_from_control_command, guile_command): Update.
9425         * compile/compile.c (compile_code_command)
9426         (compile_print_command, compile_to_object): Update.
9427         * cli/cli-script.h (struct command_lines_deleter): New.
9428         (counted_command_line): New typedef.
9429         (struct command_line): Add constructor, destructor.
9430         <body_list>: Remove.
9431         <body_list_0, body_list_1>: New members.
9432         (command_line_up): Remove typedef.
9433         (read_command_lines, read_command_lines_1, get_command_line):
9434         Update.
9435         (copy_command_lines): Don't declare.
9436         * cli/cli-script.c (build_command_line): Use "new".
9437         (get_command_line): Return counted_command_line.
9438         (print_command_lines, execute_user_command)
9439         (execute_control_command_1, while_command, if_command): Update.
9440         (realloc_body_list): Remove.
9441         (process_next_line, recurse_read_control_structure): Update.
9442         (read_command_lines, read_command_lines_1): Return counted_command_line.
9443         (free_command_lines): Use "delete".
9444         (copy_command_lines): Remove.
9445         (define_command, document_command, show_user_1): Update.
9446         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9447         a counted_command_line.
9448         * breakpoint.h (counted_command_line): Remove typedef.
9449         (breakpoint_set_commands): Update.
9450         * breakpoint.c (check_no_tracepoint_commands)
9451         (validate_commands_for_breakpoint): Update.
9452         (breakpoint_set_commands): Change commands to be a
9453         counted_command_line.
9454         (commands_command_1, update_dprintf_command_list)
9455         (create_tracepoint_from_upload): Update.
9456
9457 2018-05-04  Tom Tromey  <tom@tromey.com>
9458
9459         * cli/cli-decode.h (cmd_list_element): New constructor.
9460         (~cmd_list_element): New destructor.
9461         (struct cmd_list_element): Add initializers.
9462         * cli/cli-decode.c (do_add_cmd): Use "new".
9463         (delete_cmd): Use "delete".
9464
9465 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9466             Pedro Alves <palves@redhat.com>
9467
9468         PR breakpoints/19806 and support for PR external/20207.
9469         * NEWS: Mention Aarch64 watchpoint improvements.
9470         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9471         watchpoints and PR external/20207 watchpoints.
9472         * nat/aarch64-linux-hw-point.c
9473         (kernel_supports_any_contiguous_range): New.
9474         (aarch64_watchpoint_offset): New.
9475         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9476         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9477         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9478         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9479         next_addr_orig_p.  Support PR external/20207 watchpoints.
9480         (aarch64_downgrade_regs): New.
9481         (aarch64_dr_state_insert_one_point): New parameters offset and
9482         addr_orig.
9483         (aarch64_dr_state_remove_one_point): Likewise.
9484         (aarch64_handle_breakpoint): Update caller.
9485         (aarch64_handle_aligned_watchpoint): Likewise.
9486         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9487         aligned_offset.
9488         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9489         aarch64_downgrade_regs.
9490         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9491         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9492         (DR_CONTROL_MASK): ... this.
9493         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9494         (unsigned int aarch64_watchpoint_offset): New prototype.
9495         (aarch64_linux_set_debug_regs): Remove const from state.
9496         * utils.c (align_up, align_down): Move to ...
9497         * common/common-utils.c (align_up, align_down): ... here.
9498         * utils.h (align_up, align_down): Move to ...
9499         * common/common-utils.h (align_up, align_down): ... here.
9500
9501 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9502
9503         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9504         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9505         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9506         Re-implement to match the ABI as summarized in GCC's
9507         gcc/config/sparc/sparc.c.  All callers updated.
9508         (sparc32_store_arguments): Remove assertion.
9509
9510 2018-05-04  Tom Tromey  <tom@tromey.com>
9511
9512         * printcmd.c: Don't include tui.h.
9513         (decode_format): Use skip_spaces.
9514
9515 2018-05-04  Tom Tromey  <tom@tromey.com>
9516
9517         PR gdb/22619:
9518         * printcmd.c (last_count): New global.
9519         (x_command): Use saved count when repeating.
9520
9521 2018-05-04  Tom Tromey  <tom@tromey.com>
9522
9523         * nto-procfs.c (do_closedir_cleanup): Remove.
9524         (procfs_pidlist): Use gdb_dir_up.
9525         * procfs.c (do_closedir_cleanup): Remove.
9526         (proc_update_threads): Use gdb_dir_up.
9527         * common/filestuff.h (struct gdb_dir_deleter): New.
9528         (gdb_dir_up): New typedef.
9529
9530 2018-05-04  Tom Tromey  <tom@tromey.com>
9531
9532         * ada-lang.c (print_mention_exception): Use std::string.
9533
9534 2018-05-04  Tom Tromey  <tom@tromey.com>
9535
9536         * ada-lang.c (create_excep_cond_exprs): Update.
9537         (ada_exception_catchpoint_cond_string): Use std::string.
9538
9539 2018-05-04  Tom Tromey  <tom@tromey.com>
9540
9541         * ada-lang.c (xget_renaming_scope): Return std::string.
9542         (old_renaming_is_invisible): Update.
9543
9544 2018-05-04  Tom Tromey  <tom@tromey.com>
9545
9546         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9547         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9548
9549 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9550
9551         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9552
9553 2018-05-04  Tom Tromey  <tom@tromey.com>
9554
9555         * remote.c (remote_query_supported_append): Change type.
9556         (remote_check_symbols): Update.
9557
9558 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9559
9560         PR gdb/11420
9561         * configure.ac: Prepend libpython.
9562         * python/python-config.py: Likewise.
9563         * configure: Regenerate.
9564
9565 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9566
9567         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9568
9569 2018-05-03  Pedro Alves  <palves@redhat.com>
9570
9571         * s390-linux-nat.c
9572         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9573         override.  Write 'true' instead of '1'.
9574         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9575         declaration.
9576
9577 2018-05-02  Pedro Alves  <palves@redhat.com>
9578
9579         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9580         add_inf_child_target.
9581         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9582         add_inf_child_target.
9583         * aix-thread.c (aix_thread_target_info): New.
9584         (aix_thread_target) <shortname, longname, doc>: Delete.
9585         <info>: New.
9586         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9587         add_inf_child_target.
9588         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9589         add_inf_child_target.
9590         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9591         add_inf_child_target.
9592         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9593         add_inf_child_target.
9594         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9595         add_inf_child_target.
9596         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9597         add_inf_child_target.
9598         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9599         add_inf_child_target.
9600         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9601         add_inf_child_target.
9602         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9603         add_inf_child_target.
9604         * bfd-target.c (target_bfd_target_info): New.
9605         (target_bfd) <shortname, longname, doc>: Delete.
9606         <info>: New.
9607         * bsd-kvm.c (bsd_kvm_target_info): New.
9608         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9609         <info>: New.
9610         (bsd_kvm_target::open): Rename to ...
9611         (bsd_kvm_target_open): ... this.  Adjust.
9612         * bsd-uthread.c (bsd_uthread_target_info): New.
9613         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9614         <info>: New.
9615         * corefile.c (core_file_command): Adjust.
9616         * corelow.c (core_target_info): New.
9617         (core_target) <shortname, longname, doc>: Delete.
9618         <info>: New.
9619         (core_target::open): Rename to ...
9620         (core_target_open): ... this.  Adjust.
9621         * ctf.c (ctf_target_info): New.
9622         (ctf_target) <shortname, longname, doc>: Delete.
9623         <info>: New.
9624         (ctf_target::open): Rename to ...
9625         (ctf_target_open): ... this.
9626         (_initialize_ctf): Adjust.
9627         * exec.c (exec_target_info): New.
9628         (exec_target) <shortname, longname, doc>: Delete.
9629         <info>: New.
9630         (exec_target::open): Rename to ...
9631         (exec_target_open): ... this.
9632         * gdbcore.h (core_target_open): Declare.
9633         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9634         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9635         add_inf_child_target.
9636         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9637         add_inf_child_target.
9638         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9639         add_inf_child_target.
9640         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9641         add_inf_child_target.
9642         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9643         add_inf_child_target.
9644         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9645         add_inf_child_target.
9646         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9647         add_inf_child_target.
9648         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9649         add_inf_child_target.
9650         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9651         add_inf_child_target.
9652         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9653         add_inf_child_target.
9654         * inf-child.c (inf_child_target_info): New.
9655         (inf_child_target::info): New.
9656         (inf_child_open_target): Remove 'target' parameter.  Use
9657         get_native_target instead.
9658         (inf_child_target::open): Delete.
9659         (add_inf_child_target): New.
9660         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9661         Delete.
9662         <info>: New.
9663         (add_inf_child_target): Declare.
9664         (inf_child_open_target): Declare.
9665         * linux-thread-db.c (thread_db_target_info): New.
9666         (thread_db_target) <shortname, longname, doc>: Delete.
9667         <info>: New.
9668         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9669         add_inf_child_target.
9670         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9671         add_inf_child_target.
9672         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9673         add_inf_child_target.
9674         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9675         add_inf_child_target.
9676         * make-target-delegates (print_class): Adjust.
9677         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9678         add_inf_child_target.
9679         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9680         add_inf_child_target.
9681         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9682         add_inf_child_target.
9683         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9684         add_inf_child_target.
9685         * nto-procfs.c (nto_native_target_info): New.
9686         (nto_procfs_target_native) <shortname, longname, doc>:
9687         Delete.
9688         <info>: New.
9689         (nto_procfs_target_info): New.
9690         (nto_procfs_target_procfs) <shortname, longname, doc>:
9691         Delete.
9692         <info>: New.
9693         (init_procfs_targets): Adjust.
9694         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9695         add_inf_child_target.
9696         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9697         add_inf_child_target.
9698         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9699         add_inf_child_target.
9700         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9701         add_inf_child_target.
9702         * ravenscar-thread.c (ravenscar_target_info): New.
9703         (ravenscar_thread_target) <shortname, longname, doc>:
9704         Delete.
9705         <info>: New.
9706         * record-btrace.c (record_btrace_target_info):
9707         (record_btrace_target) <shortname, longname, doc>: Delete.
9708         <info>: New.
9709         (record_btrace_target::open): Rename to ...
9710         (record_btrace_target_open): ... this.  Adjust.
9711         * record-full.c (record_longname, record_doc): New.
9712         (record_full_base_target) <shortname, longname, doc>: Delete.
9713         <info>: New.
9714         (record_full_target_info): New.
9715         (record_full_target): <shortname>: Delete.
9716         <info>: New.
9717         (record_full_core_open_1, record_full_open_1): Update comments.
9718         (record_full_base_target::open): Rename to ...
9719         (record_full_open): ... this.
9720         (cmd_record_full_restore): Update.
9721         (_initialize_record_full): Update.
9722         * remote-sim.c (remote_sim_target_info): New.
9723         (gdbsim_target) <shortname, longname, doc>: Delete.
9724         <info>: New.
9725         (gdbsim_target::open): Rename to ...
9726         (gdbsim_target_open): ... this.
9727         (_initialize_remote_sim): Adjust.
9728         * remote.c (remote_doc): New.
9729         (remote_target_info): New.
9730         (remote_target) <shortname, longname, doc>: Delete.
9731         <info>: New.
9732         (extended_remote_target_info): New.
9733         (extended_remote_target) <shortname, longname, doc>: Delete.
9734         <info>: New.
9735         (remote_target::open_1): Make static.  Adjust.
9736         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9737         * s390-linux-nat.c (_initialize_s390_nat): Use
9738         add_inf_child_target.
9739         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9740         add_inf_child_target.
9741         * sol-thread.c (thread_db_target_info): New.
9742         (sol_thread_target) <shortname, longname, doc>: Delete.
9743         <info>: New.
9744         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9745         add_inf_child_target.
9746         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9747         add_inf_child_target.
9748         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9749         add_inf_child_target.
9750         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9751         add_inf_child_target.
9752         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9753         add_inf_child_target.
9754         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9755         add_inf_child_target.
9756         * spu-linux-nat.c (_initialize_spu_nat): Use
9757         add_inf_child_target.
9758         * spu-multiarch.c (spu_multiarch_target_info): New.
9759         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9760         <info>: New.
9761         * target-delegates.c: Regenerate.
9762         * target.c: Include <unordered_map>.
9763         (target_ops_p): Delete.
9764         (DEF_VEC_P(target_ops_p)): Delete.
9765         (target_factories): New.
9766         (test_target_info): New.
9767         (test_target_ops::info): New.
9768         (open_target): Adjust to use target_factories.
9769         (add_target_with_completer): Rename to ...
9770         (add_target): ... this.  Change prototype.  Register target_info
9771         and open callback in target_factories.  Register target_info in
9772         command context instead of target_ops.
9773         (add_target): Delete old implementation.
9774         (add_deprecated_target_alias): Change prototype.  Adjust.
9775         (the_native_target): New.
9776         (set_native_target, get_native_target): New.
9777         (find_default_run_target): Use the_native_target.
9778         (find_attach_target, find_run_target): Simplify.
9779         (target_ops::open): Delete.
9780         (dummy_target_info): New.
9781         (dummy_target::shortname, dummy_target::longname)
9782         (dummy_target::doc): Delete.
9783         (dummy_target::info): New.
9784         (debug_target::shortname, debug_target::longname)
9785         (debug_target::doc): Delete.
9786         (debug_target::info): New.
9787         * target.h (struct target_info): New.
9788         (target_ops::~target_ops): Add comment.
9789         (target_ops::info): New.
9790         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9791         longer virtual.  Implement in terms of target_info.
9792         (set_native_target, get_native_target): Declare.
9793         (target_open_ftype): New.
9794         (add_target, add_target_with_completer)
9795         (add_deprecated_target_alias): Change prototype.
9796         (test_target) <shortname, longname, doc>: Delete.
9797         <info>: New.
9798         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9799         add_inf_child_target.
9800         * tracefile-tfile.c (tfile_target_info): New.
9801         (tfile_target) <shortname, longname, doc>: Delete.
9802         <info>: New.
9803         (tfile_target::open): Rename to ...
9804         (tfile_target_open): ... this.
9805         (_initialize_tracefile_tfile): Adjust.
9806         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9807         add_inf_child_target.
9808         * windows-nat.c (_initialize_windows_nat): Use
9809         add_inf_child_target.
9810         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9811         add_inf_child_target.
9812
9813 2018-05-02  Pedro Alves  <palves@redhat.com>
9814
9815         * linux-nat.h (linux_nat_target) <low_new_thread,
9816         low_delete_thread, low_new_fork, low_forget_process,
9817         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9818         New virtual methods.
9819         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9820         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9821         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9822         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9823         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9824         Delete.
9825         * linux-fork.c (delete_fork): Adjust to call low method.
9826         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9827         (linux_nat_new_fork, linux_nat_forget_process_hook)
9828         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9829         (linux_nat_status_is_event):
9830         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9831         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9832         to call low method.
9833         (sigtrap_is_event): Rename to ...
9834         (linux_nat_target::low_status_is_event): ... this.
9835         (linux_nat_set_status_is_event): Delete.
9836         (save_stop_reason, linux_nat_wait_1)
9837         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9838         low methods.
9839         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9840         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9841         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9842         (linux_nat_set_prepare_to_resume): Delete.
9843         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9844         low virtual methods.
9845         * amd64-linux-nat.c: Likewise.
9846         * arm-linux-nat.c: Likewise.
9847         * i386-linux-nat.c: Likewise.
9848         * ia64-linux-nat.c: Likewise.
9849         * mips-linux-nat.c: Likewise.
9850         * ppc-linux-nat.c: Likewise.
9851         * s390-linux-nat.c: Likewise.
9852         * sparc64-linux-nat.c: Likewise.
9853         * x86-linux-nat.c: Likewise.
9854         * x86-linux-nat.h: Include "nat/x86-linux.h".
9855         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9856         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9857         Override methods.
9858
9859 2018-05-02  Pedro Alves  <palves@redhat.com>
9860
9861         * target.h (target_ops)
9862         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9863         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9864         stopped_by_watchpoint, have_continuable_watchpoint,
9865         stopped_data_address, watchpoint_addr_within_range,
9866         can_accel_watchpoint_condition, can_run, thread_alive,
9867         has_all_memory, has_memory, has_stack, has_registers,
9868         has_execution, can_async_p, is_async_p, supports_non_stop,
9869         always_non_stop_p, can_execute_reverse, supports_multi_process,
9870         supports_enable_disable_tracepoint,
9871         supports_disable_randomization, supports_string_tracing,
9872         supports_evaluation_of_breakpoint_conditions,
9873         can_run_breakpoint_commands, filesystem_is_local,
9874         can_download_tracepoint, get_trace_state_variable_value,
9875         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9876         record_is_replaying, record_will_replay,
9877         augmented_libraries_svr4_read>: Adjust to return bool.
9878         * aarch64-linux-nat.c: All implementations adjusted.
9879         * aix-thread.c: All implementations adjusted.
9880         * arm-linux-nat.c: All implementations adjusted.
9881         * breakpoint.c: All implementations adjusted.
9882         * bsd-kvm.c: All implementations adjusted.
9883         * bsd-uthread.c: All implementations adjusted.
9884         * corelow.c: All implementations adjusted.
9885         * ctf.c: All implementations adjusted.
9886         * darwin-nat.c: All implementations adjusted.
9887         * darwin-nat.h: All implementations adjusted.
9888         * exec.c: All implementations adjusted.
9889         * fbsd-nat.c: All implementations adjusted.
9890         * fbsd-nat.h: All implementations adjusted.
9891         * gnu-nat.c: All implementations adjusted.
9892         * gnu-nat.h: All implementations adjusted.
9893         * go32-nat.c: All implementations adjusted.
9894         * ia64-linux-nat.c: All implementations adjusted.
9895         * inf-child.c: All implementations adjusted.
9896         * inf-child.h: All implementations adjusted.
9897         * inf-ptrace.c: All implementations adjusted.
9898         * inf-ptrace.h: All implementations adjusted.
9899         * linux-nat.c: All implementations adjusted.
9900         * linux-nat.h: All implementations adjusted.
9901         * mips-linux-nat.c: All implementations adjusted.
9902         * nto-procfs.c: All implementations adjusted.
9903         * ppc-linux-nat.c: All implementations adjusted.
9904         * procfs.c: All implementations adjusted.
9905         * ravenscar-thread.c: All implementations adjusted.
9906         * record-btrace.c: All implementations adjusted.
9907         * record-full.c: All implementations adjusted.
9908         * remote-sim.c: All implementations adjusted.
9909         * remote.c: All implementations adjusted.
9910         * s390-linux-nat.c: All implementations adjusted.
9911         * sol-thread.c: All implementations adjusted.
9912         * spu-multiarch.c: All implementations adjusted.
9913         * target-delegates.c: All implementations adjusted.
9914         * target.c: All implementations adjusted.
9915         * target.h: All implementations adjusted.
9916         * tracefile-tfile.c: All implementations adjusted.
9917         * tracefile.c: All implementations adjusted.
9918         * tracefile.h: All implementations adjusted.
9919         * windows-nat.c: All implementations adjusted.
9920         * x86-linux-nat.h: All implementations adjusted.
9921         * x86-nat.h: All implementations adjusted.
9922
9923 2018-05-02  Pedro Alves  <palves@redhat.com>
9924
9925         * make-target-delegates (scan_target_h): Don't trim lines here.
9926         Replace sequences of tabs and/or whitespace with a single
9927         whitespace.
9928         (top level, parsing methods): Trim each line before processing it
9929         here.
9930
9931 2018-05-02  Pedro Alves  <palves@redhat.com>
9932             John Baldwin  <jhb@freebsd.org>
9933
9934         * target.h (enum strata) <debug_stratum>: New.
9935         (struct target_ops) <all delegation methods>: Replace by C++
9936         virtual methods, and drop "to_" prefix.  All references updated
9937         throughout.
9938         <to_shortname, to_longname, to_doc, to_data,
9939         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9940         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9941         virtual methods.  All references updated throughout.
9942         <can_attach, supports_terminal_ours, can_create_inferior,
9943         get_thread_control_capabilities, attach_no_wait>: New
9944         virtual methods.
9945         <insert_breakpoint, remove_breakpoint>: Now
9946         TARGET_DEFAULT_NORETURN methods.
9947         <info_proc>: Now returns bool.
9948         <to_magic>: Delete.
9949         (OPS_MAGIC): Delete.
9950         (current_target): Delete.  All references replaced by references
9951         to ...
9952         (target_stack): ... this.  New.
9953         (target_shortname, target_longname): Adjust.
9954         (target_can_run): Now a function declaration.
9955         (default_child_has_all_memory, default_child_has_memory)
9956         (default_child_has_stack, default_child_has_registers)
9957         (default_child_has_execution): Remove target_ops parameter.
9958         (complete_target_initialization): Delete.
9959         (memory_breakpoint_target): New template class.
9960         (test_target_ops): Refactor as a C++ class with virtual methods.
9961         * make-target-delegates (NAME_PART): Tighten.
9962         (POINTER_PART, CP_SYMBOL): New.
9963         (SIMPLE_RETURN_PART): Reimplement.
9964         (VEC_RETURN_PART): Expect less.
9965         (RETURN_PART, VIRTUAL_PART): New.
9966         (METHOD): Adjust to C++ virtual methods.
9967         (scan_target_h): Remove reference to C99.
9968         (dname): Output "target_ops::" prefix.
9969         (write_function_header): Adjust to output a C++ class method.
9970         (write_declaration): New.
9971         (write_delegator): Adjust to output a C++ class method.
9972         (tdname): Output "dummy_target::" prefix.
9973         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9974         method.
9975         (tdefault_names, debug_names): Delete.
9976         (return_types, tdefaults, styles, argtypes_array): New.
9977         (top level): All methods are delegators.
9978         (print_class): New.
9979         (top level): Print dummy_target and debug_target classes.
9980         * target-delegates.c: Regenerate.
9981         * target-debug.h (target_debug_print_enum_info_proc_what)
9982         (target_debug_print_thread_control_capabilities)
9983         (target_debug_print_thread_info_p): New.
9984         * target.c (dummy_target): Delete.
9985         (the_dummy_target, the_debug_target): New.
9986         (target_stack): Now extern.
9987         (set_targetdebug): Push/unpush debug target.
9988         (default_child_has_all_memory, default_child_has_memory)
9989         (default_child_has_stack, default_child_has_registers)
9990         (default_child_has_execution): Remove target_ops parameter.
9991         (complete_target_initialization): Delete.
9992         (add_target_with_completer): No longer call
9993         complete_target_initialization.
9994         (target_supports_terminal_ours): Use regular delegation.
9995         (update_current_target): Delete.
9996         (push_target): No longer check magic number.  Don't call
9997         update_current_target.
9998         (unpush_target): Don't call update_current_target.
9999         (target_is_pushed): No longer check magic number.
10000         (target_require_runnable): Skip for all stratums over
10001         process_stratum.
10002         (target_ops::info_proc): New.
10003         (target_info_proc): Use find_target_at and
10004         find_default_run_target.
10005         (target_supports_disable_randomization): Use regular delegation.
10006         (target_get_osdata): Use find_target_at.
10007         (target_ops::open, target_ops::close, target_ops::can_attach)
10008         (target_ops::attach, target_ops::can_create_inferior)
10009         (target_ops::create_inferior, target_ops::can_run)
10010         (target_can_run): New.
10011         (default_fileio_target): Use regular delegation.
10012         (target_ops::fileio_open, target_ops::fileio_pwrite)
10013         (target_ops::fileio_pread, target_ops::fileio_fstat)
10014         (target_ops::fileio_close, target_ops::fileio_unlink)
10015         (target_ops::fileio_readlink): New.
10016         (target_fileio_open_1, target_fileio_unlink)
10017         (target_fileio_readlink): Always call the target method.  Handle
10018         FILEIO_ENOSYS.
10019         (return_zero, return_zero_has_execution): Delete.
10020         (init_dummy_target): Delete.
10021         (dummy_target::dummy_target, dummy_target::shortname)
10022         (dummy_target::longname, dummy_target::doc)
10023         (debug_target::debug_target, debug_target::shortname)
10024         (debug_target::longname, debug_target::doc): New.
10025         (target_supports_delete_record): Use regular delegation.
10026         (setup_target_debug): Delete.
10027         (maintenance_print_target_stack): Skip debug_stratum.
10028         (initialize_targets): Instantiate the_dummy_target and
10029         the_debug_target.
10030         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10031         use target_stack.
10032         (target_auxv_search, fprint_target_auxv): Adjust.
10033         (info_auxv_command): Adjust to use target_stack.
10034         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10035         * exceptions.c (print_flush): Handle a NULL target_stack.
10036         * regcache.c (target_ops_no_register): Refactor as class with
10037         virtual methods.
10038
10039         * exec.c (exec_target): New class.
10040         (exec_ops): Now an exec_target.
10041         (exec_open, exec_close_1, exec_get_section_table)
10042         (exec_xfer_partial, exec_files_info, exec_has_memory)
10043         (exec_make_note_section): Refactor as exec_target methods.
10044         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10045         Delete.
10046         (exec_target::find_memory_regions): New.
10047         (_initialize_exec): Don't call init_exec_ops.
10048         * gdbcore.h (exec_file_clear): Delete.
10049
10050         * corefile.c (core_target): Delete.
10051         (core_file_command): Adjust.
10052         * corelow.c (core_target): New class.
10053         (the_core_target): New.
10054         (core_close): Remove target_ops parameter.
10055         (core_close_cleanup): Adjust.
10056         (core_target::close): New.
10057         (core_open, core_detach, get_core_registers, core_files_info)
10058         (core_xfer_partial, core_thread_alive, core_read_description)
10059         (core_pid_to_str, core_thread_name, core_has_memory)
10060         (core_has_stack, core_has_registers, core_info_proc): Rework as
10061         core_target methods.
10062         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10063         (_initialize_corelow): Initialize the_core_target.
10064         * gdbcore.h (core_target): Delete.
10065         (the_core_target): New.
10066
10067         * ctf.c: (ctf_target): New class.
10068         (ctf_ops): Now a ctf_target.
10069         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10070         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10071         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10072         methods.
10073         (init_ctf_ops): Delete.
10074         (_initialize_ctf): Don't call it.
10075         * tracefile-tfile.c (tfile_target): New class.
10076         (tfile_ops): Now a tfile_target.
10077         (tfile_open, tfile_close, tfile_files_info)
10078         (tfile_get_tracepoint_status, tfile_trace_find)
10079         (tfile_fetch_registers, tfile_xfer_partial)
10080         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10081         Refactor as tfile_target methods.
10082         (tfile_xfer_partial_features): Remove target_ops parameter.
10083         (init_tfile_ops): Delete.
10084         (_initialize_tracefile_tfile): Don't call it.
10085         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10086         (tracefile_has_stack, tracefile_has_registers)
10087         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10088         tracefile_target methods.
10089         (init_tracefile_ops): Delete.
10090         (tracefile_target::tracefile_target): New.
10091         * tracefile.h: Include "target.h".
10092         (tracefile_target): New class.
10093         (init_tracefile_ops): Delete.
10094
10095         * spu-multiarch.c (spu_multiarch_target): New class.
10096         (spu_ops): Now a spu_multiarch_target.
10097         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10098         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10099         (spu_search_memory, spu_mourn_inferior): Refactor as
10100         spu_multiarch_target methods.
10101         (init_spu_ops): Delete.
10102         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10103         complete_target_initialization.
10104
10105         * ravenscar-thread.c (ravenscar_thread_target): New class.
10106         (ravenscar_ops): Now a ravenscar_thread_target.
10107         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10108         (ravenscar_thread_alive, ravenscar_pid_to_str)
10109         (ravenscar_fetch_registers, ravenscar_store_registers)
10110         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10111         (ravenscar_stopped_by_hw_breakpoint)
10112         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10113         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10114         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10115         methods.
10116         (init_ravenscar_thread_ops): Delete.
10117         (_initialize_ravenscar): Remove references to
10118         init_ravenscar_thread_ops and complete_target_initialization.
10119
10120         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10121         (bsd_uthread_target): New class.
10122         (bsd_uthread_ops): Now a bsd_uthread_target.
10123         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10124         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10125         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10126         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10127         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10128         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10129         (bsd_uthread_target): Delete function.
10130         (_initialize_bsd_uthread): Remove reference to
10131         complete_target_initialization.
10132
10133         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10134         (target_bfd): ... this new class.
10135         (target_bfd_xfer_partial, target_bfd_get_section_table)
10136         (target_bfd_close): Refactor as target_bfd methods.
10137         (target_bfd::~target_bfd): New.
10138         (target_bfd_reopen): Adjust.
10139         (target_bfd::close): New.
10140
10141         * record-btrace.c (record_btrace_target): New class.
10142         (record_btrace_ops): Now a record_btrace_target.
10143         (record_btrace_open, record_btrace_stop_recording)
10144         (record_btrace_disconnect, record_btrace_close)
10145         (record_btrace_async, record_btrace_info)
10146         (record_btrace_insn_history, record_btrace_insn_history_range)
10147         (record_btrace_insn_history_from, record_btrace_call_history)
10148         (record_btrace_call_history_range)
10149         (record_btrace_call_history_from, record_btrace_record_method)
10150         (record_btrace_is_replaying, record_btrace_will_replay)
10151         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10152         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10153         (record_btrace_store_registers, record_btrace_prepare_to_store)
10154         (record_btrace_to_get_unwinder)
10155         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10156         (record_btrace_commit_resume, record_btrace_wait)
10157         (record_btrace_stop, record_btrace_can_execute_reverse)
10158         (record_btrace_stopped_by_sw_breakpoint)
10159         (record_btrace_supports_stopped_by_sw_breakpoint)
10160         (record_btrace_stopped_by_hw_breakpoint)
10161         (record_btrace_supports_stopped_by_hw_breakpoint)
10162         (record_btrace_update_thread_list, record_btrace_thread_alive)
10163         (record_btrace_goto_begin, record_btrace_goto_end)
10164         (record_btrace_goto, record_btrace_stop_replaying_all)
10165         (record_btrace_execution_direction)
10166         (record_btrace_prepare_to_generate_core)
10167         (record_btrace_done_generating_core): Refactor as
10168         record_btrace_target methods.
10169         (init_record_btrace_ops): Delete.
10170         (_initialize_record_btrace): Remove reference to
10171         init_record_btrace_ops.
10172         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10173         the execution_direction global.
10174         (record_full_base_target, record_full_target)
10175         (record_full_core_target): New classes.
10176         (record_full_ops): Now a record_full_target.
10177         (record_full_core_ops): Now a record_full_core_target.
10178         (record_full_target::detach, record_full_target::disconnect)
10179         (record_full_core_target::disconnect)
10180         (record_full_target::mourn_inferior, record_full_target::kill):
10181         New.
10182         (record_full_open, record_full_close, record_full_async): Refactor
10183         as methods of the record_full_base_target class.
10184         (record_full_resume, record_full_commit_resume): Refactor
10185         as methods of the record_full_target class.
10186         (record_full_wait, record_full_stopped_by_watchpoint)
10187         (record_full_stopped_data_address)
10188         (record_full_stopped_by_sw_breakpoint)
10189         (record_full_supports_stopped_by_sw_breakpoint)
10190         (record_full_stopped_by_hw_breakpoint)
10191         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10192         methods of the record_full_base_target class.
10193         (record_full_store_registers, record_full_xfer_partial)
10194         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10195         Refactor as methods of the record_full_target class.
10196         (record_full_can_execute_reverse, record_full_get_bookmark)
10197         (record_full_goto_bookmark, record_full_execution_direction)
10198         (record_full_record_method, record_full_info, record_full_delete)
10199         (record_full_is_replaying, record_full_will_replay)
10200         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10201         (record_full_stop_replaying): Refactor as methods of the
10202         record_full_base_target class.
10203         (record_full_core_resume, record_full_core_kill)
10204         (record_full_core_fetch_registers)
10205         (record_full_core_prepare_to_store)
10206         (record_full_core_store_registers, record_full_core_xfer_partial)
10207         (record_full_core_insert_breakpoint)
10208         (record_full_core_remove_breakpoint)
10209         (record_full_core_has_execution): Refactor
10210         as methods of the record_full_core_target class.
10211         (record_full_base_target::supports_delete_record): New.
10212         (init_record_full_ops): Delete.
10213         (init_record_full_core_ops): Delete.
10214         (record_full_save): Refactor as method of the
10215         record_full_base_target class.
10216         (_initialize_record_full): Remove references to
10217         init_record_full_ops and init_record_full_core_ops.
10218
10219         * remote.c (remote_target, extended_remote_target): New classes.
10220         (remote_ops): Now a remote_target.
10221         (extended_remote_ops): Now an extended_remote_target.
10222         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10223         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10224         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10225         (remote_pass_signals, remote_set_syscall_catchpoint)
10226         (remote_program_signals, )
10227         (remote_thread_always_alive): Remove target_ops parameter.
10228         (remote_thread_alive, remote_thread_name)
10229         (remote_update_thread_list, remote_threads_extra_info)
10230         (remote_static_tracepoint_marker_at)
10231         (remote_static_tracepoint_markers_by_strid)
10232         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10233         (remote_open): Refactor as methods of remote_target.
10234         (extended_remote_open, extended_remote_detach)
10235         (extended_remote_attach, extended_remote_post_attach):
10236         (extended_remote_supports_disable_randomization)
10237         (extended_remote_create_inferior): : Refactor as method of
10238         extended_remote_target.
10239         (remote_set_permissions, remote_open_1, remote_detach)
10240         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10241         (remote_resume, remote_commit_resume, remote_stop)
10242         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10243         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10244         (remote_prepare_to_store, remote_store_registers)
10245         (remote_flash_erase, remote_flash_done, remote_files_info)
10246         (remote_kill, remote_mourn, remote_insert_breakpoint)
10247         (remote_remove_breakpoint, remote_insert_watchpoint)
10248         (remote_watchpoint_addr_within_range)
10249         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10250         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10251         (remote_supports_stopped_by_sw_breakpoint)
10252         (remote_stopped_by_hw_breakpoint)
10253         (remote_supports_stopped_by_hw_breakpoint)
10254         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10255         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10256         (remote_verify_memory): Refactor as methods of remote_target.
10257         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10258         parameter.
10259         (remote_xfer_partial, remote_get_memory_xfer_limit)
10260         (remote_search_memory, remote_rcmd, remote_memory_map)
10261         (remote_pid_to_str, remote_get_thread_local_address)
10262         (remote_get_tib_address, remote_read_description): Refactor as
10263         methods of remote_target.
10264         (remote_target::fileio_open, remote_target::fileio_pwrite)
10265         (remote_target::fileio_pread, remote_target::fileio_close): New.
10266         (remote_hostio_readlink, remote_hostio_fstat)
10267         (remote_filesystem_is_local, remote_can_execute_reverse)
10268         (remote_supports_non_stop, remote_supports_disable_randomization)
10269         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10270         (remote_supports_enable_disable_tracepoint)
10271         (remote_supports_string_tracing)
10272         (remote_can_run_breakpoint_commands, remote_trace_init)
10273         (remote_download_tracepoint, remote_can_download_tracepoint)
10274         (remote_download_trace_state_variable, remote_enable_tracepoint)
10275         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10276         (remote_trace_start, remote_get_trace_status)
10277         (remote_get_tracepoint_status, remote_trace_stop)
10278         (remote_trace_find, remote_get_trace_state_variable_value)
10279         (remote_save_trace_data, remote_get_raw_trace_data)
10280         (remote_set_disconnected_tracing, remote_core_of_thread)
10281         (remote_set_circular_trace_buffer, remote_traceframe_info)
10282         (remote_get_min_fast_tracepoint_insn_len)
10283         (remote_set_trace_buffer_size, remote_set_trace_notes)
10284         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10285         (remote_disable_btrace, remote_teardown_btrace)
10286         (remote_read_btrace, remote_btrace_conf)
10287         (remote_augmented_libraries_svr4_read, remote_load)
10288         (remote_pid_to_exec_file, remote_can_do_single_step)
10289         (remote_execution_direction, remote_thread_handle_to_thread_info):
10290         Refactor as methods of remote_target.
10291         (init_remote_ops, init_extended_remote_ops): Delete.
10292         (remote_can_async_p, remote_is_async_p, remote_async)
10293         (remote_thread_events, remote_upload_tracepoints)
10294         (remote_upload_trace_state_variables): Refactor as methods of
10295         remote_target.
10296         (_initialize_remote): Remove references to init_remote_ops and
10297         init_extended_remote_ops.
10298
10299         * remote-sim.c (gdbsim_target): New class.
10300         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10301         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10302         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10303         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10304         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10305         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10306         Refactor as methods of gdbsim_target.
10307         (gdbsim_ops): Now a gdbsim_target.
10308         (init_gdbsim_ops): Delete.
10309         (gdbsim_cntrl_c): Adjust.
10310         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10311
10312         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10313         (the_amd64_linux_nat_target): New.
10314         (amd64_linux_fetch_inferior_registers)
10315         (amd64_linux_store_inferior_registers): Refactor as methods of
10316         amd64_linux_nat_target.
10317         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10318         * i386-linux-nat.c: Don't include "linux-nat.h".
10319         (i386_linux_nat_target): New class.
10320         (the_i386_linux_nat_target): New.
10321         (i386_linux_fetch_inferior_registers)
10322         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10323         as methods of i386_linux_nat_target.
10324         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10325         * inf-child.c (inf_child_ops): Delete.
10326         (inf_child_fetch_inferior_registers)
10327         (inf_child_store_inferior_registers): Delete.
10328         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10329         methods of inf_child_target.
10330         (inf_child_target::supports_terminal_ours)
10331         (inf_child_target::terminal_init)
10332         (inf_child_target::terminal_inferior)
10333         (inf_child_target::terminal_ours_for_output)
10334         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10335         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10336         New.
10337         (inf_child_open, inf_child_disconnect, inf_child_close)
10338         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10339         (inf_child_post_startup_inferior, inf_child_can_run)
10340         (inf_child_pid_to_exec_file): Refactor as methods of
10341         inf_child_target.
10342         (inf_child_follow_fork): Delete.
10343         (inf_child_target::can_create_inferior)
10344         (inf_child_target::can_attach): New.
10345         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10346         (inf_child_target::has_stack, inf_child_target::has_registers)
10347         (inf_child_target::has_execution): New.
10348         (inf_child_fileio_open, inf_child_fileio_pwrite)
10349         (inf_child_fileio_pread, inf_child_fileio_fstat)
10350         (inf_child_fileio_close, inf_child_fileio_unlink)
10351         (inf_child_fileio_readlink, inf_child_use_agent)
10352         (inf_child_can_use_agent): Refactor as methods of
10353         inf_child_target.
10354         (return_zero, inf_child_target): Delete.
10355         (inf_child_target::inf_child_target): New.
10356         * inf-child.h: Include "target.h".
10357         (inf_child_target): Delete function prototype.
10358         (inf_child_target): New class.
10359         (inf_child_open_target, inf_child_mourn_inferior)
10360         (inf_child_maybe_unpush_target): Delete.
10361         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10362         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10363         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10364         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10365         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10366         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10367         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10368         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10369         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10370         methods of inf_ptrace_target.
10371         (inf_ptrace_target): Delete function.
10372         * inf-ptrace.h: Include "inf-child.h".
10373         (inf_ptrace_target): Delete function declaration.
10374         (inf_ptrace_target): New class.
10375         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10376         * linux-nat.c (linux_target): New.
10377         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10378         (linux_nat_target::~linux_nat_target): New.
10379         (linux_child_post_attach, linux_child_post_startup_inferior)
10380         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10381         (linux_child_remove_fork_catchpoint)
10382         (linux_child_insert_vfork_catchpoint)
10383         (linux_child_remove_vfork_catchpoint)
10384         (linux_child_insert_exec_catchpoint)
10385         (linux_child_remove_exec_catchpoint)
10386         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10387         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10388         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10389         (linux_nat_stopped_data_address)
10390         (linux_nat_stopped_by_sw_breakpoint)
10391         (linux_nat_supports_stopped_by_sw_breakpoint)
10392         (linux_nat_stopped_by_hw_breakpoint)
10393         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10394         (linux_nat_kill, linux_nat_mourn_inferior)
10395         (linux_nat_xfer_partial, linux_nat_thread_alive)
10396         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10397         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10398         (linux_child_static_tracepoint_markers_by_strid)
10399         (linux_nat_is_async_p, linux_nat_can_async_p)
10400         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10401         (linux_nat_supports_multi_process)
10402         (linux_nat_supports_disable_randomization, linux_nat_async)
10403         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10404         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10405         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10406         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10407         methods of linux_nat_target.
10408         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10409         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10410         parameter.
10411         (check_stopped_by_watchpoint): Adjust.
10412         (linux_xfer_partial): Delete.
10413         (linux_target_install_ops, linux_target, linux_nat_add_target):
10414         Delete.
10415         (linux_nat_target::linux_nat_target): New.
10416         * linux-nat.h: Include "inf-ptrace.h".
10417         (linux_nat_target): New.
10418         (linux_target, linux_target_install_ops, linux_nat_add_target):
10419         Delete function declarations.
10420         (linux_target): Declare global.
10421         * linux-thread-db.c (thread_db_target): New.
10422         (thread_db_target::thread_db_target): New.
10423         (thread_db_ops): Delete.
10424         (the_thread_db_target): New.
10425         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10426         (thread_db_update_thread_list, thread_db_pid_to_str)
10427         (thread_db_extra_thread_info)
10428         (thread_db_thread_handle_to_thread_info)
10429         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10430         (thread_db_resume): Refactor as methods of thread_db_target.
10431         (init_thread_db_ops): Delete.
10432         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10433         * x86-linux-nat.c: Don't include "linux-nat.h".
10434         (super_post_startup_inferior): Delete.
10435         (x86_linux_nat_target::~x86_linux_nat_target): New.
10436         (x86_linux_child_post_startup_inferior)
10437         (x86_linux_read_description, x86_linux_enable_btrace)
10438         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10439         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10440         methods of x86_linux_nat_target.
10441         (x86_linux_create_target): Delete.  Bits folded ...
10442         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10443         pointer.
10444         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10445         (x86_linux_nat_target): New class.
10446         (x86_linux_create_target): Delete.
10447         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10448         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10449         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10450         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10451         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10452         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10453         make extern.
10454         (x86_use_watchpoints): Delete.
10455         * x86-nat.h: Include "breakpoint.h" and "target.h".
10456         (x86_use_watchpoints): Delete.
10457         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10458         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10459         (x86_insert_watchpoint, x86_remove_watchpoint)
10460         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10461         (x86_stopped_by_hw_breakpoint): New declarations.
10462         (x86_nat_target): New template class.
10463
10464         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10465         (the_ppc_linux_nat_target): New.
10466         (ppc_linux_fetch_inferior_registers)
10467         (ppc_linux_can_use_hw_breakpoint)
10468         (ppc_linux_region_ok_for_hw_watchpoint)
10469         (ppc_linux_ranged_break_num_registers)
10470         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10471         (ppc_linux_insert_mask_watchpoint)
10472         (ppc_linux_remove_mask_watchpoint)
10473         (ppc_linux_can_accel_watchpoint_condition)
10474         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10475         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10476         (ppc_linux_watchpoint_addr_within_range)
10477         (ppc_linux_masked_watch_num_registers)
10478         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10479         (ppc_linux_read_description): Refactor as methods of
10480         ppc_linux_nat_target.
10481         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10482
10483         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10484         (procfs_target): New class.
10485         (the_procfs_target): New.
10486         (procfs_target): Delete function.
10487         (procfs_auxv_parse, procfs_attach, procfs_detach)
10488         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10489         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10490         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10491         (procfs_create_inferior, procfs_update_thread_list)
10492         (procfs_thread_alive, procfs_pid_to_str)
10493         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10494         (procfs_stopped_data_address, procfs_insert_watchpoint)
10495         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10496         (proc_find_memory_regions, procfs_info_proc)
10497         (procfs_make_note_section): Refactor as methods of procfs_target.
10498         (_initialize_procfs): Adjust.
10499         * sol-thread.c (sol_thread_target): New class.
10500         (sol_thread_ops): Now a sol_thread_target.
10501         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10502         (sol_thread_fetch_registers, sol_thread_store_registers)
10503         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10504         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10505         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10506         (init_sol_thread_ops): Delete.
10507         (_initialize_sol_thread): Adjust.  Remove references to
10508         init_sol_thread_ops and complete_target_initialization.
10509
10510         * windows-nat.c (windows_nat_target): New class.
10511         (windows_fetch_inferior_registers)
10512         (windows_store_inferior_registers, windows_resume, windows_wait)
10513         (windows_attach, windows_detach, windows_pid_to_exec_file)
10514         (windows_files_info, windows_create_inferior)
10515         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10516         (windows_close, windows_pid_to_str, windows_xfer_partial)
10517         (windows_get_tib_address, windows_get_ada_task_ptid)
10518         (windows_thread_name, windows_thread_alive): Refactor as
10519         windows_nat_target methods.
10520         (do_initial_windows_stuff): Adjust.
10521         (windows_target): Delete function.
10522         (_initialize_windows_nat): Adjust.
10523
10524         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10525         (darwin_mourn_inferior, darwin_kill_inferior)
10526         (darwin_create_inferior, darwin_attach, darwin_detach)
10527         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10528         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10529         (darwin_supports_multi_process): Refactor as darwin_nat_target
10530         methods.
10531         (darwin_resume_to, darwin_files_info): Delete.
10532         (_initialize_darwin_inferior): Rename to ...
10533         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10534         * darwin-nat.h: Include "inf-child.h".
10535         (darwin_nat_target): New class.
10536         (darwin_complete_target): Delete.
10537         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10538         (darwin_target): New.
10539         (i386_darwin_fetch_inferior_registers)
10540         (i386_darwin_store_inferior_registers): Refactor as methods of
10541         darwin_nat_target.
10542         (darwin_complete_target): Delete, with ...
10543         (_initialize_i386_darwin_nat): ... bits factored out here.
10544
10545         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10546         (the_alpha_linux_nat_target): New.
10547         (alpha_linux_register_u_offset): Refactor as
10548         alpha_linux_nat_target method.
10549         (_initialize_alpha_linux_nat): Adjust.
10550         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10551         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10552         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10553         methods of linux_nat_trad_target.
10554         (linux_trad_target): Delete.
10555         * linux-nat-trad.h (linux_trad_target): Delete function.
10556         (linux_nat_trad_target): New class.
10557         * mips-linux-nat.c (mips_linux_nat_target): New class.
10558         (super_fetch_registers, super_store_registers, super_close):
10559         Delete.
10560         (the_mips_linux_nat_target): New.
10561         (mips64_linux_regsets_fetch_registers)
10562         (mips64_linux_regsets_store_registers)
10563         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10564         (mips_linux_register_u_offset, mips_linux_read_description)
10565         (mips_linux_can_use_hw_breakpoint)
10566         (mips_linux_stopped_by_watchpoint)
10567         (mips_linux_stopped_data_address)
10568         (mips_linux_region_ok_for_hw_watchpoint)
10569         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10570         (mips_linux_close): Refactor as methods of mips_linux_nat.
10571         (_initialize_mips_linux_nat): Adjust to C++ification.
10572
10573         * aix-thread.c (aix_thread_target): New class.
10574         (aix_thread_ops): Now an aix_thread_target.
10575         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10576         (aix_thread_fetch_registers, aix_thread_store_registers)
10577         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10578         (aix_thread_thread_alive, aix_thread_pid_to_str)
10579         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10580         Refactor as methods of aix_thread_target.
10581         (init_aix_thread_ops): Delete.
10582         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10583         and complete_target_initialization.
10584         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10585         (rs6000_nat_target): New class.
10586         (the_rs6000_nat_target): New.
10587         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10588         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10589         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10590         (super_create_inferior): Delete.
10591         (_initialize_rs6000_nat): Adjust to C++ification.
10592
10593         * arm-linux-nat.c (arm_linux_nat_target): New class.
10594         (the_arm_linux_nat_target): New.
10595         (arm_linux_fetch_inferior_registers)
10596         (arm_linux_store_inferior_registers, arm_linux_read_description)
10597         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10598         (arm_linux_remove_hw_breakpoint)
10599         (arm_linux_region_ok_for_hw_watchpoint)
10600         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10601         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10602         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10603         arm_linux_nat_target.
10604         (_initialize_arm_linux_nat): Adjust to C++ification.
10605
10606         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10607         (the_aarch64_linux_nat_target): New.
10608         (aarch64_linux_fetch_inferior_registers)
10609         (aarch64_linux_store_inferior_registers)
10610         (aarch64_linux_child_post_startup_inferior)
10611         (aarch64_linux_read_description)
10612         (aarch64_linux_can_use_hw_breakpoint)
10613         (aarch64_linux_insert_hw_breakpoint)
10614         (aarch64_linux_remove_hw_breakpoint)
10615         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10616         (aarch64_linux_region_ok_for_hw_watchpoint)
10617         (aarch64_linux_stopped_data_address)
10618         (aarch64_linux_stopped_by_watchpoint)
10619         (aarch64_linux_watchpoint_addr_within_range)
10620         (aarch64_linux_can_do_single_step): Refactor as methods of
10621         aarch64_linux_nat_target.
10622         (super_post_startup_inferior): Delete.
10623         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10624
10625         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10626         (the_hppa_linux_nat_target): New.
10627         (hppa_linux_fetch_inferior_registers)
10628         (hppa_linux_store_inferior_registers): Refactor as methods of
10629         hppa_linux_nat_target.
10630         (_initialize_hppa_linux_nat): Adjust to C++ification.
10631
10632         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10633         (the_ia64_linux_nat_target): New.
10634         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10635         (ia64_linux_stopped_data_address)
10636         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10637         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10638         ia64_linux_nat_target methods.
10639         (super_xfer_partial): Delete.
10640         (_initialize_ia64_linux_nat): Adjust to C++ification.
10641
10642         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10643         (the_m32r_linux_nat_target): New.
10644         (m32r_linux_fetch_inferior_registers)
10645         (m32r_linux_store_inferior_registers): Refactor as
10646         m32r_linux_nat_target methods.
10647         (_initialize_m32r_linux_nat): Adjust to C++ification.
10648
10649         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10650         (the_m68k_linux_nat_target): New.
10651         (m68k_linux_fetch_inferior_registers)
10652         (m68k_linux_store_inferior_registers): Refactor as
10653         m68k_linux_nat_target methods.
10654         (_initialize_m68k_linux_nat): Adjust to C++ification.
10655
10656         * s390-linux-nat.c (s390_linux_nat_target): New class.
10657         (the_s390_linux_nat_target): New.
10658         (s390_linux_fetch_inferior_registers)
10659         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10660         (s390_insert_watchpoint, s390_remove_watchpoint)
10661         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10662         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10663         (s390_auxv_parse, s390_read_description): Refactor as methods of
10664         s390_linux_nat_target.
10665         (_initialize_s390_nat): Adjust to C++ification.
10666
10667         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10668         (the_sparc_linux_nat_target): New.
10669         (_initialize_sparc_linux_nat): Adjust to C++ification.
10670         * sparc-nat.c (sparc_fetch_inferior_registers)
10671         (sparc_store_inferior_registers): Remove target_ops parameter.
10672         * sparc-nat.h (sparc_fetch_inferior_registers)
10673         (sparc_store_inferior_registers): Remove target_ops parameter.
10674         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10675         (the_sparc64_linux_nat_target): New.
10676         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10677
10678         * spu-linux-nat.c (spu_linux_nat_target): New class.
10679         (the_spu_linux_nat_target): New.
10680         (spu_child_post_startup_inferior, spu_child_post_attach)
10681         (spu_child_wait, spu_fetch_inferior_registers)
10682         (spu_store_inferior_registers, spu_xfer_partial)
10683         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10684         methods.
10685         (_initialize_spu_nat): Adjust to C++ification.
10686
10687         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10688         (the_tilegx_linux_nat_target): New.
10689         (fetch_inferior_registers, store_inferior_registers):
10690         Refactor as methods.
10691         (_initialize_tile_linux_nat): Adjust to C++ification.
10692
10693         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10694         (the_xtensa_linux_nat_target): New.
10695         (xtensa_linux_fetch_inferior_registers)
10696         (xtensa_linux_store_inferior_registers): Refactor as
10697         xtensa_linux_nat_target methods.
10698         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10699
10700         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10701         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10702         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10703         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10704         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10705         (fbsd_stopped_by_sw_breakpoint)
10706         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10707         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10708         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10709         (fbsd_post_startup_inferior, fbsd_post_attach)
10710         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10711         (fbsd_set_syscall_catchpoint)
10712         (super_xfer_partial, super_resume, super_wait)
10713         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10714         (fbsd_handle_debug_trap): Remove target_ops parameter.
10715         (fbsd_nat_add_target): Delete.
10716         * fbsd-nat.h: Include "inf-ptrace.h".
10717         (fbsd_nat_add_target): Delete.
10718         (USE_SIGTRAP_SIGINFO): Define.
10719         (fbsd_nat_target): New class.
10720
10721         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10722         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10723         (amd64bsd_target): Delete.
10724         * amd64-bsd-nat.h: New file.
10725         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10726         "x86-bsd-nat.h".
10727         (amd64_fbsd_nat_target): New class.
10728         (the_amd64_fbsd_nat_target): New.
10729         (amd64fbsd_read_description): Refactor as method of
10730         amd64_fbsd_nat_target.
10731         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10732         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10733         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10734         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10735         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10736         (i386bsd_target): Delete.
10737         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10738         (i386bsd_fetch_inferior_registers)
10739         (i386bsd_store_inferior_registers): Declare.
10740         (i386_bsd_nat_target): New class.
10741         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10742         (the_i386_fbsd_nat_target): New.
10743         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10744         i386_fbsd_nat_target methods.
10745         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10746         (_initialize_i386fbsd_nat): Adjust to C++ification.
10747         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10748         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10749         (_initialize_x86_bsd_nat): Adjust to C++ification.
10750         * x86-bsd-nat.h: Include "x86-nat.h".
10751         (x86bsd_target): Delete declaration.
10752         (x86bsd_nat_target): New class.
10753
10754         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10755         (the_aarch64_fbsd_nat_target): New.
10756         (aarch64_fbsd_fetch_inferior_registers)
10757         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10758         aarch64_fbsd_nat_target.
10759         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10760         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10761         (the_alpha_bsd_nat_target): New.
10762         (alphabsd_fetch_inferior_registers)
10763         (alphabsd_store_inferior_registers): Refactor as
10764         alpha_bsd_nat_target methods.
10765         (_initialize_alphabsd_nat): Refactor as methods of
10766         alpha_bsd_nat_target.
10767         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10768         (the_amd64_nbsd_nat_target): New.
10769         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10770         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10771         (the_amd64_obsd_nat_target): New.
10772         (_initialize_amd64obsd_nat): Adjust to C++ification.
10773         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10774         (the_arm_fbsd_nat_target): New.
10775         (arm_fbsd_fetch_inferior_registers)
10776         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10777         (_initialize_arm_fbsd_nat): Refactor as methods of
10778         arm_fbsd_nat_target.
10779         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10780         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10781         (the_arm_netbsd_nat_target): New.
10782         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10783         arm_netbsd_nat_target.
10784         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10785         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10786         (the_hppa_nbsd_nat_target): New.
10787         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10788         hppa_nbsd_nat_target methods.
10789         (_initialize_hppanbsd_nat): Adjust to C++ification.
10790         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10791         (the_hppa_obsd_nat_target): New.
10792         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10793         methods of hppa_obsd_nat_target.
10794         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10795         add_target.
10796         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10797         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10798         add_target.
10799         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10800         (_initialize_i386obsd_nat): Use add_target.
10801         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10802         (the_m68k_bsd_nat_target): New.
10803         (m68kbsd_fetch_inferior_registers)
10804         (m68kbsd_store_inferior_registers): Refactor as methods of
10805         m68k_bsd_nat_target.
10806         (_initialize_m68kbsd_nat): Adjust to C++ification.
10807         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10808         (the_mips_fbsd_nat_target): New.
10809         (mips_fbsd_fetch_inferior_registers)
10810         (mips_fbsd_store_inferior_registers): Refactor as methods of
10811         mips_fbsd_nat_target.
10812         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10813         add_target.
10814         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10815         (the_mips_nbsd_nat_target): New.
10816         (mipsnbsd_fetch_inferior_registers)
10817         (mipsnbsd_store_inferior_registers): Refactor as methods of
10818         mips_nbsd_nat_target.
10819         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10820         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10821         (the_mips64_obsd_nat_target): New.
10822         (mips64obsd_fetch_inferior_registers)
10823         (mips64obsd_store_inferior_registers): Refactor as methods of
10824         mips64_obsd_nat_target.
10825         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10826         add_target.
10827         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10828         nbsd_nat_target.
10829         * nbsd-nat.h: Include "inf-ptrace.h".
10830         (nbsd_nat_target): New class.
10831         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10832         (obsd_wait): Refactor as methods of obsd_nat_target.
10833         (obsd_add_target): Delete.
10834         * obsd-nat.h: Include "inf-ptrace.h".
10835         (obsd_nat_target): New class.
10836         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10837         (the_ppc_fbsd_nat_target): New.
10838         (ppcfbsd_fetch_inferior_registers)
10839         (ppcfbsd_store_inferior_registers): Refactor as methods of
10840         ppc_fbsd_nat_target.
10841         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10842         add_target.
10843         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10844         (the_ppc_nbsd_nat_target): New.
10845         (ppcnbsd_fetch_inferior_registers)
10846         (ppcnbsd_store_inferior_registers): Refactor as methods of
10847         ppc_nbsd_nat_target.
10848         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10849         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10850         (the_ppc_obsd_nat_target): New.
10851         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10852         methods of ppc_obsd_nat_target.
10853         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10854         add_target.
10855         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10856         (the_sh_nbsd_nat_target): New.
10857         (shnbsd_fetch_inferior_registers)
10858         (shnbsd_store_inferior_registers): Refactor as methods of
10859         sh_nbsd_nat_target.
10860         (_initialize_shnbsd_nat): Adjust to C++ification.
10861         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10862         (inf_ptrace_xfer_partial): Delete.
10863         (sparc_xfer_partial, sparc_target): Delete.
10864         * sparc-nat.h (sparc_fetch_inferior_registers)
10865         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10866         (sparc_target): Delete function declaration.
10867         (sparc_target): New template class.
10868         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10869         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10870         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10871         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10872         add_target.
10873         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10874         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10875         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10876         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10877         add_target.
10878         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10879         (the_vax_bsd_nat_target): New.
10880         (vaxbsd_fetch_inferior_registers)
10881         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10882         methods.
10883         (_initialize_vaxbsd_nat): Adjust to C++ification.
10884
10885         * bsd-kvm.c (bsd_kvm_target): New class.
10886         (bsd_kvm_ops): Now a bsd_kvm_target.
10887         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10888         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10889         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10890         bsd_kvm_target.
10891         (bsd_kvm_return_one): Delete.
10892         (bsd_kvm_add_target): Adjust to C++ification.
10893
10894         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10895         (nto_procfs_target_procfs): New classes.
10896         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10897         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10898         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10899         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10900         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10901         (procfs_remove_hw_breakpoint, procfs_resume)
10902         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10903         (procfs_kill_inferior, procfs_store_registers)
10904         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10905         as methods of nto_procfs_target.
10906         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10907         (nto_native_ops): Delete.
10908         (procfs_open, procfs_native_open): Delete.
10909         (nto_native_ops): Now an nto_procfs_target_native.
10910         (init_procfs_targets): Adjust to C++ification.
10911         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10912         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10913         Refactor as methods of nto_procfs_target.
10914
10915         * go32-nat.c (go32_nat_target): New class.
10916         (the_go32_nat_target): New.
10917         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10918         (go32_store_registers, go32_xfer_partial, go32_files_info)
10919         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10920         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10921         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10922         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10923         (go32_target): Delete.
10924         (_initialize_go32_nat): Adjust to C++ification.
10925
10926         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10927         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10928         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10929         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10930         gnu_nat_target.
10931         (gnu_target): Delete.
10932         * gnu-nat.h (gnu_target): Delete.
10933         (gnu_nat_target): New class.
10934         * i386-gnu-nat.c (gnu_base_target): New.
10935         (i386_gnu_nat_target): New class.
10936         (the_i386_gnu_nat_target): New.
10937         (_initialize_i386gnu_nat): Adjust to C++ification.
10938
10939 2018-05-02  Pedro Alves  <palves@redhat.com>
10940
10941         * bfd-target.c (target_bfd_xclose): Rename to ...
10942         (target_bfd_close): ... this.
10943         (target_bfd_reopen): Adjust.
10944         * target.c (target_close): Remove references to to_xclose.
10945         * target.h (target_ops::to_xclose): Delete.
10946         (target_ops::to_close): Update comments.
10947
10948 2018-05-02  Pedro Alves  <palves@redhat.com>
10949
10950         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10951         "linux-nat.h".
10952         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10953         * inf-ptrace.c (inf_ptrace_register_u_offset)
10954         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10955         (inf_ptrace_store_register, inf_ptrace_store_registers)
10956         (inf_ptrace_trad_target): Move to ...
10957         * linux-nat-trad.c: ... this new file.
10958         * linux-nat-trad.h: New file.
10959         * linux-nat.c (linux_target_install_ops): Make extern.
10960         (linux_trad_target): Delete.
10961         * linux-nat.h (linux_trad_target): Delete declaration.
10962         (linux_target_install_ops): Declare.
10963         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10964         "linux-nat.h".
10965
10966 2018-05-02  Pedro Alves  <palves@redhat.com>
10967
10968         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10969         procfs_target/add_target here.
10970         * procfs.c (procfs_target): Make static.
10971         (_initialize_procfs): Call add_target here.
10972         * procfs.h (struct target_ops): Remove forward declaration.
10973         (procfs_target): Remove declaration.
10974         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10975
10976 2018-05-02  Pedro Alves  <palves@redhat.com>
10977
10978         * procfs.c (procfs_stopped_by_watchpoint)
10979         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10980         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10981         Forward declare.
10982         (procfs_use_watchpoints): Delete, move contents...
10983         (procfs_target): ... here.
10984         * procfs.h (procfs_use_watchpoints): Delete declaration.
10985         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10986         procfs_use_watchpoints.
10987         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10988         procfs_use_watchpoints.
10989
10990 2018-05-02  Tom Tromey  <tom@tromey.com>
10991
10992         PR python/20084:
10993         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10994         and var_zuinteger_unlimited.
10995         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10996         and PARAM_ZUINTEGER_UNLIMITED.
10997         (set_parameter_value): Handle var_zuinteger and
10998         var_zuinteger_unlimited.
10999         (add_setshow_generic): Likewise.
11000         (parmpy_init): Likewise.
11001
11002 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11003
11004         PR rust/23124
11005         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11006         pointer is not null before dereferencing it.
11007
11008 2018-04-30  Tom Tromey  <tom@tromey.com>
11009
11010         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11011         is_mi_like_p.
11012
11013 2018-04-30  Tom Tromey  <tom@tromey.com>
11014
11015         * breakpoint.c (mention): Remove use of is_mi_like_p.
11016         (print_mention_ranged_breakpoint): Likewise.
11017         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11018         of is_mi_like_p.
11019
11020 2018-04-30  Tom Tromey  <tom@tromey.com>
11021
11022         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11023
11024 2018-04-30  Tom Tromey  <tom@tromey.com>
11025
11026         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11027         (info_spu_event_command): Remove some uses of is_mi_like_p.
11028
11029 2018-04-30  Tom Tromey  <tom@tromey.com>
11030
11031         * python/py-framefilter.c (py_print_single_arg)
11032         (enumerate_locals, py_print_args, py_print_frame): Remove some
11033         uses of is_mi_like_p.
11034
11035 2018-04-30  Tom Tromey  <tom@tromey.com>
11036
11037         * ui-out.c: Update.
11038         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11039         * ui-out.h (ui_out::is_mi_like_p): Now const.
11040         (ui_out::do_is_mi_like_p): Now const.
11041         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11042
11043 2018-04-30  Tom Tromey  <tom@tromey.com>
11044
11045         * varobj.c (varobj_set_visualizer): Use new_reference.
11046         * python/python.c (gdbpy_decode_line): Use new_reference.
11047         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11048         new_reference.
11049
11050 2018-04-30  Tom Tromey  <tom@tromey.com>
11051
11052         * varobj.c (install_new_value): Use new_reference.
11053         * value.h (value_incref): Return void.  Swap intro comment with
11054         value_decref.
11055         * value.c (set_value_parent): Use new_reference.
11056         (value_incref): Return void.  Update intro comment.
11057         (release_value): Use new_reference.
11058         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11059
11060 2018-04-30  Tom Tromey  <tom@tromey.com>
11061
11062         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11063         * gdb_bfd.h (new_bfd_ref): Remove.
11064         (gdb_bfd_open): Update comment.
11065         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11066         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11067         (gdb_bfd_fdopenr): Use new_reference.
11068         * exec.c (exec_file_attach): Use new_reference.
11069
11070 2018-04-30  Tom Tromey  <tom@tromey.com>
11071
11072         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11073         method.
11074
11075 2018-04-30  Tom Tromey  <tom@tromey.com>
11076
11077         * jit.c (jit_read_code_entry): Use type_align.
11078         * i386-tdep.c (i386_gdbarch_init): Don't call
11079         set_gdbarch_long_long_align_bit.
11080         * gdbarch.sh: Remove long_long_align_bit.
11081         * gdbarch.c, gdbarch.h: Rebuild.
11082         * arc-tdep.c (arc_type_align): New function.
11083         (arc_gdbarch_init): Use arc_type_align.  Don't call
11084         set_gdbarch_long_long_align_bit.
11085
11086 2018-04-30  Tom Tromey  <tom@tromey.com>
11087
11088         * rust-lang.c (rust_type_alignment): Remove.
11089         (rust_composite_type): Use type_align.
11090
11091 2018-04-30  Tom Tromey  <tom@tromey.com>
11092
11093         * NEWS: Mention Type.align.
11094         * python/py-type.c (typy_get_alignof): New function.
11095         (type_object_getset): Add "alignof".
11096
11097 2018-04-30  Tom Tromey  <tom@tromey.com>
11098
11099         PR exp/17095:
11100         * NEWS: Update.
11101         * std-operator.def (UNOP_ALIGNOF): New operator.
11102         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11103         New.
11104         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11105         * c-lang.c (c_op_print_tab): Add alignof.
11106         * c-exp.y (ALIGNOF): New token.
11107         (exp): Add "ALIGNOF" production.
11108         (ident_tokens): Add _Alignof and alignof.
11109
11110 2018-04-30  Tom Tromey  <tom@tromey.com>
11111
11112         * i386-tdep.c (i386_type_align): New function.
11113         (i386_gdbarch_init): Update.
11114         * gdbarch.sh (type_align): New method.
11115         * gdbarch.c, gdbarch.h: Rebuild.
11116         * arch-utils.h (default_type_align): Declare.
11117         * arch-utils.c (default_type_align): New function.
11118         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11119         (struct type) <align_log2>: New field.
11120         <instance_flags>: Now a bitfield.
11121         (TYPE_RAW_ALIGN): New macro.
11122         (type_align, type_raw_align, set_type_align): Declare.
11123         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11124         functions.
11125         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11126         (get_alignment, maybe_set_alignment): New functions.
11127         (read_structure_type, read_enumeration_type, read_array_type)
11128         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11129         (read_subrange_type, read_base_type): Set type alignment.
11130
11131 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11132
11133         * dwarf2read.c (read_index_from_section): Use bool.
11134
11135 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11136
11137         PR gdb/22950
11138         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11139         with #ifdef.
11140
11141 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11142
11143         PR build/22873
11144         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11145         last step, and do it atomically.
11146
11147 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11148
11149         * compile/compile-c-types.c (convert_int, convert_float):
11150         Update for C FE v1.
11151
11152 2018-04-27  Tom Tromey  <tom@tromey.com>
11153
11154         PR rust/22545:
11155         * rust-lang.c (rust_inclusive_range_type_p): New function.
11156         (rust_range): Handle inclusive ranges.
11157         (rust_compute_range): Likewise.
11158         * rust-exp.y (struct rust_op) <inclusive>: New field.
11159         (DOTDOTEQ): New constant.
11160         (range_expr): Add "..=" productions.
11161         (operator_tokens): Add "..=" token.
11162         (ast_range): Add "inclusive" parameter.
11163         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11164         ranges.
11165         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11166         bounds values.
11167         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11168         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11169         Update comments.
11170         * expprint.c (print_subexp_standard): Handle new bounds values.
11171         (dump_subexp_body_standard): Likewise.
11172
11173 2018-04-27  Tom Tromey  <tom@tromey.com>
11174
11175         * configure: Rebuild.
11176         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11177         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11178         "OVERRIDE".
11179         (class symbol_needs_eval_context): Likewise.
11180         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11181         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11182         "virtual".
11183         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11184         "override".
11185         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11186         * aarch64-tdep.c (instruction_reader::read): Use "override".
11187         (instruction_reader_test::read): Likewise.
11188         * arm-tdep.c (instruction_reader::read): Use "override".
11189         (instruction_reader_thumb::read): Likewise.
11190
11191 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11192
11193         PR remote/9665
11194         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11195         instead of remote_send.
11196         (remote_send): Remove.
11197
11198 2018-04-26  Pedro Alves  <palves@redhat.com>
11199
11200         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11201         find_function_start_sal instead of find_pc_line.
11202
11203 2018-04-26  Pedro Alves  <palves@redhat.com>
11204
11205         * breakpoint.c (set_breakpoint_location_function): Handle
11206         mst_data_gnu_ifunc.
11207         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11208         * elfread.c (elf_symtab_read): Give data symbols with
11209         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11210         (elf_rel_plt_read): Update comment.
11211         * linespec.c (convert_linespec_to_sals): Handle
11212         mst_data_gnu_ifunc.
11213         (minsym_found): Handle mst_data_gnu_ifunc.
11214         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11215         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11216         * parse.c (find_minsym_type_and_address): Handle
11217         mst_data_gnu_ifunc.
11218         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11219         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11220         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11221         comment.
11222         <mst_data_gnu_ifunc>: New enumerator.
11223
11224 2018-04-26  Pedro Alves  <palves@redhat.com>
11225
11226         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11227         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11228         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11229         Handle it.
11230         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11231         (lookup_minimal_symbol_by_pc): Adjust.
11232         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11233         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11234         * minsyms.h (lookup_msym_prefer): New enum.
11235         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11236         parameter by a lookup_msym_prefer parameter.
11237
11238 2018-04-26  Pedro Alves  <palves@redhat.com>
11239
11240         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11241         ends in "@plt" instead of looking at the symbol's section.
11242
11243 2018-04-26  Pedro Alves  <palves@redhat.com>
11244
11245         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11246         all references.
11247         (find_pc_partial_function_gnu_ifunc): Rename to ...
11248         (find_pc_partial_function): ... this, and remove references to
11249         'is_gnu_ifunc_p'.
11250         (find_pc_partial_function): Delete old implementation.
11251         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11252
11253 2018-04-26  Pedro Alves  <palves@redhat.com>
11254
11255         * linespec.c (struct bound_minimal_symbol_search_key): New.
11256         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11257         skip first line if we found a GNU ifunc minimal symbol by name.
11258         (compare_msymbols): Change parameters to work with a destructured
11259         lhs minsym.
11260         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11261         functions.
11262
11263 2018-04-26  Pedro Alves  <palves@redhat.com>
11264
11265         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11266         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11267         address/name.
11268         (add_location_to_breakpoint): Store the minsym and the objfile in
11269         the breakpoint location.
11270         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11271         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11272         Record the minsym in the sal.
11273         * symtab.h (symtab_and_line) <msymbol>: New field.
11274
11275 2018-04-26  Pedro Alves  <palves@redhat.com>
11276
11277         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11278         unless we actually resolved the ifunc.
11279
11280 2018-04-26  Pedro Alves  <palves@redhat.com>
11281
11282         * c-exp.y (variable production): Prefer ifunc minsyms over
11283         regular function symbols.
11284         * symtab.c (find_gnu_ifunc): New function.
11285         * minsyms.h (lookup_msym_prefer): New enum.
11286         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11287         parameter by a lookup_msym_prefer parameter.
11288         * symtab.h (find_gnu_ifunc): New declaration.
11289
11290 2018-04-26  Pedro Alves  <palves@redhat.com>
11291
11292         * blockframe.c (find_gnu_ifunc_target_type): New function.
11293         (find_function_type): New.
11294         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11295         return a value with a memory address.
11296         (eval_call): For calls to GNU ifunc functions, try to find the
11297         type of the target function from the type that the resolver
11298         returns.
11299         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11300         symbols.
11301         * infcall.c (find_function_return_type): Delete.
11302         (find_function_addr): Add 'function_type' parameter.  For calls to
11303         GNU ifunc functions, try to find the type of the target function
11304         from the type that the resolver returns, and return it via
11305         FUNCTION_TYPE.
11306         (call_function_by_hand_dummy): Adjust to use the function type
11307         returned by find_function_addr.
11308         (find_function_addr): Add 'function_type' parameter and move
11309         description here.
11310         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11311         declarations.
11312
11313 2018-04-26  Pedro Alves  <palves@redhat.com>
11314
11315         * c-exp.y (variable production): Skip finding an alias for ifunc
11316         symbols.
11317
11318 2018-04-26  Pedro Alves  <palves@redhat.com>
11319
11320         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11321
11322 2018-04-25  Pedro Alves  <palves@redhat.com>
11323
11324         * infcmd.c (kill_command): Print the pid as string, not the whole
11325         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11326         message.
11327         * remote.c (remote_detach_1): Print the pid as string, not the
11328         whole thread's ptid.
11329
11330 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11331             Sergio Durigan Junior  <sergiodj@redhat.com>
11332             Pedro Alves  <palves@redhat.com>
11333
11334         * infcmd.c (kill_command): Print message when inferior has
11335         been killed.
11336         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11337         '1'.
11338         (add_inferior): Improve message printed when
11339         'print_inferior_events' is on.
11340         (exit_inferior): Remove message printed when
11341         'print_inferior_events' is on.
11342         (detach_inferior): Improve message printed when
11343         'print_inferior_events' is on.
11344         (initialize_inferiors): Use 'add_inferior_silent' to set
11345         'current_inferior_'.
11346         * inferior.h (print_inferior_events): Declare here as
11347         'extern'.
11348         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11349         '[Detaching...]' messages when 'print_inferior_events' is on.
11350         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11351         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11352         'Detaching after fork from child...', replace it by '... from
11353         parent...'.
11354         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11355         prefix/suffix when printing 'Detaching...' messages.  Print
11356         them when 'print_inferior_events' is on.
11357         * remote.c (remote_detach_1): Print message when detaching
11358         from inferior and '!is_fork_parent'.
11359
11360 2018-04-24  Tom Tromey  <tom@tromey.com>
11361
11362         * cli-out.h: Reindent.
11363
11364 2018-04-24  Tom Tromey  <tom@tromey.com>
11365
11366         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11367         (cli_ui_out::do_field_string): Use fputs_filtered.
11368         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11369
11370 2018-04-23  Tom Tromey  <tom@tromey.com>
11371
11372         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11373         gdb::unique_xmalloc_ptr.
11374
11375 2018-04-23  Tom Tromey  <tom@tromey.com>
11376
11377         * configure: Rebuild.
11378
11379 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11380
11381         PR gdb/23095
11382         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11383         prepare_for_testing.  Set normal_bp to r_debug_state if target
11384         is bsd.
11385
11386 2018-04-21  Pedro Alves  <palves@redhat.com>
11387             Rajendra SY  <rajendra.sy@gmail.com>
11388
11389         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11390         * remote.c (extended_remote_attach): In all-stop mode, mark the
11391         thread as executing.
11392
11393 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11394
11395         * thread.c (thread_apply_all_command): Fix comment.
11396         (thread_command): Fix comment.
11397
11398 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11399
11400         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11401         parameter.
11402         * features/aarch64-core.c (create_feature_aarch64_core):
11403         Regenerate.
11404         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11405         Likewise.
11406         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11407         Likewise.
11408         * features/i386/32bit-avx512.c
11409         (create_feature_i386_32bit_avx512): Likewise.
11410         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11411         Likewise.
11412         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11413         Likewise.
11414         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11415         Likewise.
11416         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11417         Likewise.
11418         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11419         Likewise.
11420         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11421         Likewise.
11422         * features/i386/64bit-avx512.c
11423         (create_feature_i386_64bit_avx512): Likewise.
11424         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11425         Likewise.
11426         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11427         Likewise.
11428         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11429         Likewise.
11430         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11431         Likewise.
11432         * features/i386/64bit-segments.c
11433         (create_feature_i386_64bit_segments): Likewise.
11434         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11435         Likewise.
11436         * features/i386/x32-core.c
11437         (create_feature_i386_x32_core): Likewise.
11438         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11439         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11440         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11441         * target-descriptions.c: In generated code, don't pass xml
11442         filename.
11443
11444 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11445
11446         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11447         (print_xml_feature::visit_post): Likewise.
11448         (print_xml_feature::visit): Likewise.
11449         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11450         (print_xml_feature): Add new class.
11451         * regformats/regdat.sh: Null xmltarget on feature targets.
11452         * target-descriptions.c (struct target_desc): Add xmltarget.
11453         (maintenance_check_tdesc_xml_convert): Add unittest function.
11454         (tdesc_get_features_xml): Add function to get xml.
11455         (maintenance_check_xml_descriptions): Test xml generation.
11456         * xml-tdesc.c (string_read_description_xml): Add function.
11457         * xml-tdesc.h (string_read_description_xml): Add declaration.
11458
11459 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11460
11461         * features/Makefile: Add feature marker to targets with new style
11462         target descriptions.
11463         * regformats/aarch64.dat: Regenerate.
11464         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11465         * regformats/i386/amd64-avx-linux.dat: Likewise.
11466         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11467         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11468         * regformats/i386/amd64-linux.dat: Likewise.
11469         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11470         * regformats/i386/amd64.dat: Likewise.
11471         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11472         * regformats/i386/i386-avx-linux.dat: Likewise.
11473         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11474         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11475         * regformats/i386/i386-linux.dat: Likewise.
11476         * regformats/i386/i386-mmx-linux.dat: Likewise.
11477         * regformats/i386/i386-mpx-linux.dat: Likewise.
11478         * regformats/i386/i386.dat: Likewise.
11479         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11480         * regformats/i386/x32-avx-linux.dat: Likewise.
11481         * regformats/i386/x32-linux.dat: Likewise.
11482         * regformats/tic6x-c62x-linux.dat: Likewise.
11483         * regformats/tic6x-c64x-linux.dat: Likewise.
11484         * regformats/tic6x-c64xp-linux.dat: Likewise.
11485         * regformats/regdat.sh: Parse feature marker.
11486
11487 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11488
11489         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11490         (tdesc_osabi_name): Likewise.
11491         * target-descriptions.c (tdesc_architecture_name): Add new
11492         function.
11493         (tdesc_osabi_name): Likewise.
11494
11495 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11496
11497         * common/tdesc.c (tdesc_predefined_type): Move to here.
11498         (tdesc_named_type): Likewise.
11499         (tdesc_create_vector): Likewise.
11500         (tdesc_create_struct): Likewise.
11501         (tdesc_set_struct_size): Likewise.
11502         (tdesc_create_union): Likewise.
11503         (tdesc_create_flags): Likewise.
11504         (tdesc_create_enum): Likewise.
11505         (tdesc_add_field): Likewise.
11506         (tdesc_add_typed_bitfield): Likewise.
11507         (tdesc_add_bitfield): Likewise.
11508         (tdesc_add_flag): Likewise.
11509         (tdesc_add_enum_value): Likewise.
11510         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11511         (struct tdesc_type_vector): Likewise.
11512         (struct tdesc_type_field): Likewise.
11513         (struct tdesc_type_with_fields): Likewise.
11514         (tdesc_create_enum): Add declaration.
11515         (tdesc_add_typed_bitfield): Likewise.
11516         (tdesc_add_enum_value): Likewise.
11517         * target-descriptions.c (tdesc_type_field): Move from here.
11518         (tdesc_type_builtin): Likewise.
11519         (tdesc_type_vector): Likewise.
11520         (tdesc_type_with_fields): Likewise.
11521         (tdesc_predefined_types): Likewise.
11522         (tdesc_named_type): Likewise.
11523         (tdesc_create_vector): Likewise.
11524         (tdesc_create_struct): Likewise.
11525         (tdesc_set_struct_size): Likewise.
11526         (tdesc_create_union): Likewise.
11527         (tdesc_create_flags): Likewise.
11528         (tdesc_create_enum): Likewise.
11529         (tdesc_add_field): Likewise.
11530         (tdesc_add_typed_bitfield): Likewise.
11531         (tdesc_add_bitfield): Likewise.
11532         (tdesc_add_flag): Likewise.
11533         (tdesc_add_enum_value): Likewise.
11534         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11535         (tdesc_add_typed_bitfield): Likewise.
11536         (tdesc_add_enum_value): Likewise.
11537
11538 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11539
11540         * common/tdesc.c (tdesc_feature::accept): Move to here.
11541         (tdesc_feature::operator==): Likewise.
11542         (tdesc_create_reg): Likewise.
11543         * common/tdesc.h (tdesc_type_kind): Likewise.
11544         (struct tdesc_type): Likewise.
11545         (struct tdesc_feature): Likewise.
11546         * regformats/regdat.sh: Create a feature.
11547         * target-descriptions.c (tdesc_type_kind): Move from here.
11548         (tdesc_type): Likewise.
11549         (tdesc_type_up): Likewise.
11550         (tdesc_feature): Likewise.
11551         (tdesc_create_reg): Likewise.
11552
11553 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11554
11555         * Makefile.in: Add arch/tdesc.c
11556         * common/tdesc.c: New file.
11557         * common/tdesc.h (tdesc_element_visitor): Move to here.
11558         (tdesc_element): Likewise.
11559         (tdesc_reg): Likewise.
11560         (tdesc_reg_up): Likewise.
11561         * regformats/regdef.h (reg): Add offset to constructors.
11562         * target-descriptions.c (tdesc_element_visitor): Move from here.
11563         (tdesc_element): Likewise.
11564         (tdesc_reg): Likewise.
11565         (tdesc_reg_up): Likewise.
11566
11567 2018-04-17  Tom Tromey  <tom@tromey.com>
11568
11569         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11570         discriminant field.
11571
11572 2018-04-17  Tom Tromey  <tom@tromey.com>
11573
11574         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11575
11576 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11577
11578         * symtab.c (print_symbol_info): Skip printing filename and line
11579         number when `last' is NULL.
11580         (symtab_symbol_info): Use empty string instead of NULL for first
11581         invocation of print_symbol_info.
11582         (rbreak_command): Pass NULL to `last' parameter of
11583         print_symbol_info.
11584
11585 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11586
11587         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11588         instead of nullptr.
11589
11590 2018-04-16  Pedro Alves  <palves@redhat.com>
11591
11592         * MAINTAINERS (sh): Remove.
11593         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11594         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11595         (ALLDEPFILES): Remove sh64-tdep.c.
11596         * NEWS: Mentions that support for SH-5/SH64 is removed.
11597         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11598         (sh*-*-openbsd*): Ditto.
11599         (sh64-*-elf*): Remove.
11600         (sh*): Remove.
11601         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11602         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11603         * sh-tdep.c: No longer include "sh64-tdep.h".
11604         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11605         * sh64-tdep.c, sh64-tdep.h: Remove files.
11606
11607 2018-04-16  Pedro Alves  <palves@redhat.com>
11608
11609         * MAINTAINERS: Remove m88k.
11610         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11611         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11612         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11613         * NEWS: Mention that support for m88k was removed.
11614         * configure.host (m88*-*-*): Remove support.
11615         * configure.nat (m88k-*-*): Remove support.
11616         * configure.tgt (m88*-*-openbsd*): Remove.
11617         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11618
11619 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11620
11621         * configure.tgt (x86_tobjs): New variable.
11622         (amd64_tobjs, i386_tobjs): Use it.
11623
11624 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11625
11626         * symtab.c (print_symbol_info): Precede the symbol definition by
11627         the line number when available.
11628         * NEWS: Advertise this enhancement.
11629
11630 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11631
11632         * NEWS (New options): announce set/show record btrace cpu.
11633         * btrace.c: Include record-btrace.h.
11634         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11635         the vendor is unknown.
11636         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11637         Maybe overwrite the btrace configuration's cpu.
11638         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11639         (btrace_fetch): Add cpu parameter.  Update callers.
11640         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11641         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11642         errata workarounds if the vendor is unknown.
11643         * python/py-record-btrace.c: Include record-btrace.h.
11644         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11645         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11646         * record-btrace.c (record_btrace_cpu_state_kind): New.
11647         (record_btrace_cpu): New.
11648         (set_record_btrace_cpu_cmdlist): New.
11649         (record_btrace_get_cpu): New.
11650         (require_btrace_thread, record_btrace_info)
11651         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11652         (cmd_set_record_btrace_cpu_none): New.
11653         (cmd_set_record_btrace_cpu_auto): New.
11654         (cmd_set_record_btrace_cpu): New.
11655         (cmd_show_record_btrace_cpu): New.
11656         (_initialize_record_btrace): Initialize set/show record btrace cpu
11657         commands.
11658         * record-btrace.h (record_btrace_get_cpu): New.
11659
11660 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11661
11662         * record.c (set_record_command): Fix typo in message.
11663
11664 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11665
11666         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11667
11668 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11669
11670         * infrun.c (process_event_stop_test): Call
11671         gdbarch_in_indirect_branch_thunk.
11672         * gdbarch.sh (in_indirect_branch_thunk): New.
11673         * gdbarch.c: Regenerated.
11674         * gdbarch.h: Regenerated.
11675         * x86-tdep.h: New.
11676         * x86-tdep.c: New.
11677         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11678         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11679         (ALLDEPFILES): Add x86-tdep.c.
11680         * arch-utils.h (default_in_indirect_branch_thunk): New.
11681         * arch-utils.c (default_in_indirect_branch_thunk): New.
11682         * i386-tdep: Include x86-tdep.h.
11683         (i386_in_indirect_branch_thunk): New.
11684         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11685         function.
11686         * amd64-tdep: Include x86-tdep.h.
11687         (amd64_in_indirect_branch_thunk): New.
11688         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11689
11690 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11691
11692         PR gdb/23053
11693         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11694         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11695         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11696         regression.
11697
11698 2018-04-12  Tom Tromey  <tom@tromey.com>
11699
11700         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11701         (rust_evaluate_subexp): Likewise.
11702
11703 2018-04-12  Pedro Alves  <palves@redhat.com>
11704
11705         * procfs.c (procfs_detach): Make forward declaration's prototype
11706         match definition's protototype.
11707         (proc_get_LDT_entry): Remove stale do_cleanups call.
11708
11709 2018-04-12  Pedro Alves  <palves@redhat.com>
11710
11711         * target.h (target_ops::to_has_exited): Delete.
11712         (target_has_exited): Delete.
11713         * target-delegates.c: Regenerate.
11714
11715 2018-04-11  Pedro Alves  <palves@redhat.com>
11716
11717         * target.c (fileio_fh_t::t): Add comment.
11718         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11719         (target_fileio_close): Handle a NULL target.
11720         (invalidate_fileio_fh): New.
11721         (target_close): Call it.
11722         * remote.c (remote_hostio_send_command): No longer check whether
11723         remote_desc is open.
11724
11725 2018-04-11  Pedro Alves  <palves@redhat.com>
11726
11727         * target.c (fileio_fh_t): Make it a named struct instead of a
11728         typedef.
11729         (fileio_fh_t::is_closed): New method.
11730         (DEF_VEC_O (fileio_fh_t)): Remove.
11731         (fileio_fhandles): Now a std::vector.
11732         (is_closed_fileio_fh): Delete.
11733         (acquire_fileio_fd): Adjust.  Rename parameters.
11734         (release_fileio_fd): Adjust.
11735         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11736         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11737         (target_fileio_close): Adjust.
11738
11739 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11740
11741         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11742         index.
11743
11744 2018-04-10  Pedro Alves  <palves@redhat.com>
11745
11746         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11747         (scoped_finish_thread_state): New class.
11748         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11749         cleanup.
11750         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11751         (fetch_inferior_event, normal_stop): Likewise.
11752         * thread.c (finish_thread_state_cleanup): Delete.
11753
11754 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11755             Pedro Alves  <palves@redhat.com>
11756
11757         * value.c: Include "selftest.h" and "common/array-view.h".
11758         (struct range) <operator ==>: New.
11759         (test_ranges_contain): New.
11760         (check_ranges_vector): New.
11761         (test_insert_into_bit_range_vector): New.
11762         (_initialize_values): Register selftests.
11763         * common/array-view.h (operator==, operator!=): New.
11764
11765 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11766
11767         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11768         an iterator.
11769         * inline-frame.c: Include <algorithm>.
11770         (struct inline_state): Add constructor.
11771         (inline_state_s): Remove.
11772         (DEF_VEC_O(inline_state_s)): Remove.
11773         (inline_states): Change type to std::vector.
11774         (find_inline_frame_state): Adjust to std::vector.
11775         (allocate_inline_frame_state): Remove.
11776         (clear_inline_frame_state): Adjust to std::vector.
11777         (skip_inline_frames): Adjust to std::vector.
11778
11779 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11780
11781         * tracepoint.h (struct trace_state_variable): Add constructor.
11782         <name>: Change type to std::string.
11783         * tracepoint.c (tsv_s): Remove.
11784         (DEF_VEC_O(tsv_s)): Remove.
11785         (tvariables): Change to std::vector.
11786         (create_trace_state_variable): Adjust to std::vector.
11787         (find_trace_state_variable): Likewise.
11788         (find_trace_state_variable_by_number): Likewise.
11789         (delete_trace_state_variable): Likewise.
11790         (trace_variable_command): Adjust to std::string.
11791         (delete_trace_variable_command): Likewise.
11792         (tvariables_info_1): Adjust to std::vector.
11793         (save_trace_state_variables): Likewise.
11794         (start_tracing): Likewise.
11795         (merge_uploaded_trace_state_variables): Adjust to std::vector
11796         and std::string.
11797         * target.h (struct target_ops)
11798         <to_download_trace_state_variable>: Pass reference to
11799         trace_state_variable.
11800         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11801         * target-delegates.c: Re-generate.
11802         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11803         (mi_tsv_deleted): Likewise.
11804         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11805         * remote.c (remote_download_trace_state_variable): Change
11806         pointer to reference and adjust.
11807         * make-target-delegates (parse_argtypes): Handle references.
11808         (write_function_header): Likewise.
11809         (munge_type): Likewise.
11810
11811 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11812
11813         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11814         string_view-selftests.c.
11815         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11816         testsuite.
11817         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11818         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11819         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11820         * unittests/basic_string_view/element_access/char/1.cc:
11821         Likewise.
11822         * unittests/basic_string_view/element_access/char/empty.cc:
11823         Likewise.
11824         * unittests/basic_string_view/element_access/char/front_back.cc:
11825         Likewise.
11826         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11827         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11828         Likewise.
11829         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11830         Likewise.
11831         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11832         Likewise.
11833         * unittests/basic_string_view/operations/compare/char/1.cc:
11834         Likewise.
11835         * unittests/basic_string_view/operations/compare/char/13650.cc:
11836         Likewise.
11837         * unittests/basic_string_view/operations/copy/char/1.cc:
11838         Likewise.
11839         * unittests/basic_string_view/operations/data/char/1.cc:
11840         Likewise.
11841         * unittests/basic_string_view/operations/find/char/1.cc:
11842         Likewise.
11843         * unittests/basic_string_view/operations/find/char/2.cc:
11844         Likewise.
11845         * unittests/basic_string_view/operations/find/char/3.cc:
11846         Likewise.
11847         * unittests/basic_string_view/operations/find/char/4.cc:
11848         Likewise.
11849         * unittests/basic_string_view/operations/rfind/char/1.cc:
11850         Likewise.
11851         * unittests/basic_string_view/operations/rfind/char/2.cc:
11852         Likewise.
11853         * unittests/basic_string_view/operations/rfind/char/3.cc:
11854         Likewise.
11855         * unittests/basic_string_view/operations/substr/char/1.cc:
11856         Likewise.
11857         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11858         * unittests/string_view-selftests.c: New file.
11859
11860 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11861
11862         * unittests/basic_string_view/capacity/1.cc: New file.
11863         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11864         * unittests/basic_string_view/cons/char/1.cc: New file.
11865         * unittests/basic_string_view/cons/char/2.cc: New file.
11866         * unittests/basic_string_view/cons/char/3.cc: New file.
11867         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11868         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11869         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11870         * unittests/basic_string_view/element_access/char/1.cc: New file.
11871         * unittests/basic_string_view/element_access/char/2.cc: New file.
11872         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11873         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11874         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11875         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11876         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11877         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11878         * unittests/basic_string_view/include.cc: New file.
11879         * unittests/basic_string_view/inserters/char/1.cc: New file.
11880         * unittests/basic_string_view/inserters/char/2.cc: New file.
11881         * unittests/basic_string_view/inserters/char/3.cc: New file.
11882         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11883         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11884         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11885         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11886         * unittests/basic_string_view/literals/types.cc: New file.
11887         * unittests/basic_string_view/literals/values.cc: New file.
11888         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11889         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11890         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11891         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11893         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11894         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11895         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11896         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11897         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11898         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11899         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11900         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11901         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11902         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11903         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11904         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11905         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11906         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11907         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11908         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11909         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11910         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11911         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11912         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11913         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11914         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11915         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11916         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11917         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11918         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11919         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11920         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11921         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11922         * unittests/basic_string_view/operators/char/2.cc: New file.
11923         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11924         * unittests/basic_string_view/range_access/char/1.cc: New file.
11925         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11926         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11927         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11928         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11929         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11930         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11931         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11932         * unittests/basic_string_view/typedefs.cc: New file.
11933         * unittests/basic_string_view/types/1.cc: New file.
11934
11935 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11936
11937         * common/gdb_string_view.h: Remove libstdc++ implementation
11938         details, adjust to gdb reality.
11939         * common/gdb_string_view.tcc: Likewise.
11940         * cli/cli-script.c (struct string_view): Remove.
11941         (user_args) <m_args>: Change element type to gdb::string_view.
11942         (user_args::insert_args): Adjust.
11943
11944 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11945
11946         * common/gdb_string_view.h: New file.
11947         * common/gdb_string_view.tcc: New file.
11948
11949 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11950
11951         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11952         * configure: Re-generate.
11953
11954 2018-04-09  Pedro Alves  <palves@redhat.com>
11955
11956         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11957         (set_target_gdbarch): Call
11958         gdb::observers::architecture_changed.notify instead of
11959         observer_notify_architecture_changed.
11960
11961 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11962
11963         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11964         (do_restore_current_traceframe_cleanup): Remove.
11965         (restore_current_traceframe_cleanup_dtor): Remove.
11966         (make_cleanup_restore_current_traceframe): Remove.
11967         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11968         New.
11969         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11970         * infrun.c (fetch_inferior_event): Use
11971         scoped_restore_current_traceframe.
11972
11973 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11974
11975         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11976         Remove.
11977         <n_allocated_type_units>: Remove.
11978         <all_type_units>: Change to std::vector.
11979         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11980         to std::vector change.
11981         (dwarf2_per_objfile::get_cutu): Likewise.
11982         (dwarf2_per_objfile::get_tu): Likewise.
11983         (create_signatured_type_table_from_index): Likewise.
11984         (create_signatured_type_table_from_debug_names): Likewise.
11985         (dw2_symtab_iter_next): Likewise.
11986         (dw2_print_stats): Likewise.
11987         (dw2_expand_all_symtabs): Likewise.
11988         (dw2_expand_marked_cus): Likewise.
11989         (dw2_debug_names_iterator::next): Likewise.
11990         (dwarf2_initialize_objfile): Likewise.
11991         (add_signatured_type_cu_to_table): Likewise.
11992         (create_all_type_units): Likewise.
11993         (add_type_unit): Likewise.
11994         (struct tu_abbrev_offset): Add constructor.
11995         (build_type_psymtabs_1): Adjust to std::vector change.
11996         (print_tu_stats): Likewise.
11997         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11998         (write_debug_names): Likewise.
11999
12000 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12001
12002         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12003         Make an std::vector.
12004         <n_comp_units>: Remove.
12005         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12006         to std::vector change.
12007         (dwarf2_per_objfile::get_cutu): Likewise.
12008         (dwarf2_per_objfile::get_cu): Likewise.
12009         (create_cus_from_index): Likewise.
12010         (create_addrmap_from_index): Likewise.
12011         (create_addrmap_from_aranges): Likewise.
12012         (dwarf2_read_index): Likewise.
12013         (dw2_find_last_source_symtab): Likewise.
12014         (dw2_map_symtabs_matching_filename): Likewise.
12015         (dw2_symtab_iter_next): Likewise.
12016         (dw2_print_stats): Likewise.
12017         (dw2_expand_all_symtabs): Likewise.
12018         (dw2_expand_symtabs_with_fullname): Likewise.
12019         (dw2_expand_marked_cus): Likewise.
12020         (dw2_map_symbol_filenames): Likewise.
12021         (create_cus_from_debug_names): Likewise.
12022         (dwarf2_read_debug_names): Likewise.
12023         (dw2_debug_names_iterator::next): Likewise.
12024         (dwarf2_initialize_objfile): Likewise.
12025         (set_partial_user): Likewise.
12026         (dwarf2_build_psymtabs_hard): Likewise.
12027         (read_comp_units_from_section): Remove arguments, adjust to
12028         std::vector change.
12029         (create_all_comp_units): Adjust to std::vector and
12030         read_comp_units_from_section changes.
12031         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12032         change.
12033         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12034         (psyms_seen_size): Likewise.
12035         (write_gdbindex): Likewise.
12036         (write_debug_names): Likewise.
12037
12038 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12039
12040         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12041         with dwarf2_per_objfile.
12042         (create_cus_from_index): Likewise.
12043         (create_signatured_type_table_from_index): Likewise.
12044         (dwarf2_read_index): Likewise.
12045         (dwarf2_initialize_objfile): Likewise.
12046         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12047         per_cu rather than get_dwarf2_per_objfile.
12048
12049 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12050
12051         * dwarf2read.h (struct signatured_type): Forward declare.
12052         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12053         New methods.
12054         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12055         (dw2_get_cutu): ...this.
12056         (dwarf2_per_objfile::get_cu): Rename from...
12057         (dw2_get_cu): ...this.
12058         (dwarf2_per_objfile::get_tu): New.
12059         (create_addrmap_from_index): Adjust.
12060         (create_addrmap_from_aranges): Adjust.
12061         (dw2_find_last_source_symtab): Adjust.
12062         (dw2_map_symtabs_matching_filename): Adjust.
12063         (dw2_symtab_iter_next): Adjust.
12064         (dw2_print_stats): Adjust.
12065         (dw2_expand_all_symtabs): Adjust.
12066         (dw2_expand_symtabs_with_fullname): Adjust.
12067         (dw2_expand_marked_cus): Adjust.
12068         (dw_expand_symtabs_matching_file_matcher): Adjust.
12069         (dw2_map_symbol_filenames): Adjust.
12070         (dw2_debug_names_iterator::next): Adjust.
12071         (dwarf2_initialize_objfile): Adjust.
12072         (set_partial_user): Adjust.
12073         (dwarf2_build_psymtabs_hard): Adjust.
12074
12075 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12076
12077         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12078         Remove unused variables.
12079         (dw2_map_symtabs_matching_filename): Likewise.
12080         (dwarf2_record_block_ranges): Likewise.
12081         (dwarf2_read_addr_index): Likewise.
12082         (follow_die_offset): Likewise.
12083
12084 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12085
12086         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12087         to symbol_file_add_main.
12088
12089 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12090
12091         PR mi/22299
12092         * mi/mi-console.c (do_fputc_async_safe): New.
12093         (mi_console_file::write_async_safe): New.
12094         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12095         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12096         New.
12097         * ui-file.c (ui_file::putstrn): Adjust call to
12098         fputstrn_unfiltered.
12099         * utils.c (printchar): Replace do_fputs and do_fprintf
12100         parameters by do_fputc.
12101         (fputstr_filtered): Adjust call to printchar.
12102         (fputstr_unfiltered): Likewise.
12103         (fputstrn_filtered): Likewise.
12104         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12105         printchar.
12106         * utils.h (do_fputc_ftype): New typedef.
12107         (fputstrn_unfiltered): Add do_fputc parameter.
12108
12109 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12110
12111         * regformats/i386/i386-avx.dat: Remove.
12112
12113 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12114
12115         PR gdb/22979
12116         * amd64-tdep.c (amd64_none_init_abi): New function.
12117         (amd64_x32_none_init_abi): New function.
12118         (_initialize_amd64_tdep): Register handlers for x86-64 and
12119         x64_32 with GDB_OSABI_NONE.
12120         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12121         GDB_OSABI_NONE osabi.
12122
12123 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12124
12125         PR gdb/22980
12126         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12127         GDB_OSABI_NONE.
12128         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12129         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12130
12131 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12132
12133         * common/byte-vector.h (char_vector): New type.
12134         * target.h (target_read_alloc): Return
12135         gdb::optional<byte_vector>.
12136         (target_read_stralloc): Return gdb::optional<char_vector>.
12137         (target_get_osdata): Return gdb::optional<char_vector>.
12138         * target.c (target_read_alloc_1): Templatize.  Replacement
12139         manual memory management with vector.
12140         (target_read_alloc): Change return type, adjust.
12141         (target_read_stralloc): Change return type, adjust.
12142         (target_get_osdata): Change return type, adjust.
12143         * auxv.c (struct auxv_info) <length>: Remove.
12144         <data>: Change type to gdb::optional<byte_vector>.
12145         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12146         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12147         (target_auxv_search): Adjust.
12148         (fprint_target_auxv): Adjust.
12149         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12150         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12151         (linux_make_corefile_notes): Adjust.
12152         * osdata.c (get_osdata): Adjust.
12153         * remote.c (remote_get_threads_with_qxfer): Adjust.
12154         (remote_memory_map): Adjust.
12155         (remote_traceframe_info): Adjust.
12156         (btrace_read_config): Adjust.
12157         (remote_read_btrace): Adjust.
12158         (remote_pid_to_exec_file): Adjust.
12159         * solib-aix.c (solib_aix_get_library_list): Adjust.
12160         * solib-dsbt.c (decode_loadmap): Don't free buf.
12161         (dsbt_get_initial_loadmaps): Adjust.
12162         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12163         * solib-target.c (solib_target_current_sos): Adjust.
12164         * tracepoint.c (sdata_make_value): Adjust.
12165         * xml-support.c (xinclude_start_include): Adjust.
12166         (xml_fetch_content_from_file): Adjust.
12167         * xml-support.h (xml_fetch_another): Change return type.
12168         (xml_fetch_content_from_file): Change return type.
12169         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12170         * xml-tdesc.c (file_read_description_xml): Adjust.
12171         (fetch_available_features_from_target): Change return type.
12172         (target_fetch_description_xml): Adjust.
12173         (target_read_description_xml): Adjust.
12174
12175 2018-04-06  Tom Tromey  <tom@tromey.com>
12176
12177         * value.c (~value): Update.
12178         (struct value) <contents>: Now unique_xmalloc_ptr.
12179         (value_contents_bits_eq, allocate_value_contents)
12180         (value_contents_raw, value_contents_all_raw)
12181         (value_contents_for_printing, value_contents_for_printing_const)
12182         (set_value_enclosing_type): Update.
12183
12184 2018-04-06  Tom Tromey  <tom@tromey.com>
12185
12186         * value.c (range_s): Remove typedef, VEC.
12187         (struct range): Add operator<.
12188         (range_lessthan): Remove.
12189         (ranges_contain): Change type.
12190         (~value): Update.
12191         (struct value) <unavailable, optimized_out>: Now std::vector.
12192         (value_entirely_available)
12193         (value_entirely_covered_by_range_vector)
12194         (value_entirely_unavailable, value_entirely_optimized_out):
12195         Update.
12196         (insert_into_bit_range_vector): Change argument type.
12197         (find_first_range_overlap): Likewise.
12198         (struct ranges_and_idx, value_contents_bits_eq)
12199         (require_not_optimized_out, require_available): Update.
12200         (ranges_copy_adjusted): Change argument types.
12201         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12202
12203 2018-04-06  Tom Tromey  <tom@tromey.com>
12204
12205         * value.c (~value): Update.
12206         (struct value) <parent>: Now a value_ref_ptr.
12207         (value_parent, set_value_parent, value_address, value_copy):
12208         Update.
12209
12210 2018-04-06  Tom Tromey  <tom@tromey.com>
12211
12212         * value.c (struct value): Add constructor, destructor, and member
12213         initializers.
12214         (allocate_value_lazy, value_decref): Update.
12215
12216 2018-04-06  Tom Tromey  <tom@tromey.com>
12217
12218         * value.c (struct value) <released, next>: Remove.
12219         (all_values): Now a std::vector.
12220         (allocate_value_lazy): Update.
12221         (value_next): Remove.
12222         (value_mark, value_free_to_mark, release_value)
12223         (value_release_to_mark): Update.
12224
12225 2018-04-06  Tom Tromey  <tom@tromey.com>
12226
12227         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12228         (free_value_chain): Remove.
12229         * value.c (free_value_chain): Remove.
12230         (value_release_to_mark): Return a std::vector.
12231         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12232         std::vector.
12233         (check_condition): Update.
12234         * eval.c (fetch_subexp_value): Change "val_chain" to a
12235         std::vector.
12236         * breakpoint.c (update_watchpoint): Update.
12237         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12238
12239 2018-04-06  Tom Tromey  <tom@tromey.com>
12240
12241         * value.h (free_all_values): Remove.
12242         * value.c (free_all_values): Remove.
12243
12244 2018-04-06  Tom Tromey  <tom@tromey.com>
12245
12246         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12247         (value_history_chain, value_history_count): Remove.
12248         (value_history): New global.
12249         (record_latest_value, access_value_history, show_values)
12250         (preserve_values): Update.
12251
12252 2018-04-06  Tom Tromey  <tom@tromey.com>
12253
12254         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12255         * varobj.c (varobj_set_display_format, varobj_set_value)
12256         (install_default_visualizer, construct_visualizer)
12257         (install_new_value, ~varobj, varobj_get_value_type)
12258         (my_value_of_variable, varobj_editable_p): Update.
12259         * c-varobj.c (c_describe_child, c_value_of_variable)
12260         (cplus_number_of_children, cplus_describe_child): Update.
12261         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12262         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12263         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12264
12265 2018-04-06  Tom Tromey  <tom@tromey.com>
12266
12267         * printcmd.c (last_examine_address): Change type to
12268         value_ref_ptr.
12269         (do_examine, x_command): Update.
12270
12271 2018-04-06  Tom Tromey  <tom@tromey.com>
12272
12273         * value.c (release_value): Update.
12274         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12275         (struct bpstats) <val>: Now a value_ref_ptr.
12276         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12277         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12278         (~watchpoint, print_it_watchpoint, watch_command_1)
12279         (invalidate_bp_value_on_memory_change): Update.
12280
12281 2018-04-06  Tom Tromey  <tom@tromey.com>
12282
12283         * varobj.c (varobj_clear_saved_item)
12284         (update_dynamic_varobj_children, install_new_value, ~varobj):
12285         Update.
12286         * value.h (value_incref): Move declaration earlier.
12287         (value_decref): Rename from value_free.
12288         (struct value_ref_policy): New.
12289         (value_ref_ptr): New typedef.
12290         (struct value_deleter): Remove.
12291         (gdb_value_up): Remove typedef.
12292         (release_value): Change return type.
12293         (release_value_or_incref): Remove.
12294         * value.c (set_value_parent): Update.
12295         (value_incref): Change return type.
12296         (value_decref): Rename from value_free.
12297         (value_free_to_mark, free_all_values, free_value_chain): Update.
12298         (release_value): Return value_ref_ptr.
12299         (release_value_or_incref): Remove.
12300         (record_latest_value, set_internalvar, clear_internalvar):
12301         Update.
12302         * stack.c (info_frame_command): Don't call value_free.
12303         * python/py-value.c (valpy_dealloc, valpy_new)
12304         (value_to_value_object): Update.
12305         * printcmd.c (do_examine): Update.
12306         * opencl-lang.c (lval_func_free_closure): Update.
12307         * mi/mi-main.c (register_changed_p): Don't call value_free.
12308         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12309         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12310         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12311         value_free.
12312         * guile/scm-value.c (vlscm_free_value_smob)
12313         (vlscm_scm_from_value): Update.
12314         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12315         (frame_unwind_register_unsigned, get_frame_register_bytes)
12316         (put_frame_register_bytes): Don't call value_free.
12317         * findvar.c (address_from_register): Don't call value_free.
12318         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12319         * dwarf2loc.c (entry_data_value_free_closure)
12320         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12321         (dwarf2_evaluate_loc_desc_full): Update.
12322         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12323         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12324         (~watchpoint, watch_command_1)
12325         (invalidate_bp_value_on_memory_change): Update.
12326         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12327
12328 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12329
12330         PR gdb/23022
12331         * warning.m4: Add -Wno-error=deprecated-register.
12332         * configure: Re-generate.
12333
12334 2018-04-05  Tom Tromey  <tom@tromey.com>
12335
12336         * linespec.h: Remove include of "vec.h".
12337
12338 2018-04-05  Tom Tromey  <tom@tromey.com>
12339
12340         * linespec.c (typep): Remove typedef.
12341         (find_methods, find_superclass_methods): Take a std::vector.
12342         (find_method): Use std::vector.
12343
12344 2018-04-05  Tom Tromey  <tom@tromey.com>
12345
12346         * utils.c (compare_strings): Remove.
12347         * utils.h (compare_strings): Remove.
12348         * objc-lang.h (find_imps): Update.
12349         * objc-lang.c (find_methods): Take a std::vector.
12350         (uniquify_strings, find_imps): Likewise.
12351         * linespec.c (find_methods): Take a std::vector.
12352         (decode_objc): Use std::vector.
12353         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12354         a std::vector.
12355         (find_method, find_function_symbols): Use std::vector.
12356
12357 2018-04-05  Tom Tromey  <tom@tromey.com>
12358
12359         * completer.c (completion_tracker::completion_tracker): Remove
12360         cast.
12361         (completion_tracker::discard_completions): Likewise.
12362         * breakpoint.c (ambiguous_names_p): Remove cast.
12363         * ada-lang.c (_initialize_ada_language): Remove cast.
12364         * utils.h (streq): Update.
12365         (streq_hash): Add new declaration.
12366         * utils.c (streq): Return bool.
12367         (streq_hash): New function.
12368
12369 2018-04-05  Tom Tromey  <tom@tromey.com>
12370
12371         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12372         Remove a string copy.
12373
12374 2018-04-05  Tom Tromey  <tom@tromey.com>
12375
12376         * linespec.c (filter_results): Use std::vector.
12377         (decode_line_2, decode_line_full): Update.
12378
12379 2018-04-05  Tom Tromey  <tom@tromey.com>
12380
12381         * linespec.c (canonical_to_fullform): Return std::string.
12382         (filter_results): Update.
12383         (struct decode_line_2_item): Add constructor.
12384         <fullform, displayform>: Now std::string.
12385         (decode_line_2_compare_items): Now a std::sort comparator.
12386         (decode_line_2): Update.
12387
12388 2018-04-05  Tom Tromey  <tom@tromey.com>
12389
12390         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12391         (unexpected_linespec_error): Update.
12392         (linespec_parse_basic, parse_linespec): Update.
12393
12394 2018-04-05  Tom Tromey  <tom@tromey.com>
12395
12396         * linespec.c (linespec_parse_basic): Reindent.
12397
12398 2018-04-05  Tom Tromey  <tom@tromey.com>
12399
12400         * minsyms.h (iterate_over_minimal_symbols): Update.
12401         * minsyms.c (iterate_over_minimal_symbols): Take a
12402         gdb::function_view.
12403         * linespec.c (struct collect_minsyms): Remove.
12404         (compare_msyms): Now a std::sort comparator.
12405         (add_minsym): Add parameters.
12406         (search_minsyms_for_name): Update.  Use std::vector.
12407
12408 2018-04-03  Tom Tromey  <tom@tromey.com>
12409
12410         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12411         gdb::byte_vector.
12412
12413 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12414
12415         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12416
12417 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12418
12419         PR gdb/16959
12420         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12421         printing static type.
12422
12423 2018-04-01  Tom Tromey  <tom@tromey.com>
12424
12425         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12426         (rs6000_xfer_shared_libraries): Update.
12427
12428 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12429
12430         * common/gdb_vecs.h (char_ptr): Remove.
12431         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12432
12433 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12434
12435         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12436         with std::vector.
12437         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12438
12439 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12440
12441         * tracepoint.h (struct uploaded_tp): Initialize fields.
12442         <actions, step_actions, cmd_strings>: Change type to
12443         std::vector<char *>.
12444         * tracepoint.c (get_uploaded_tp): Allocate with new.
12445         (free_uploaded_tps): Free with delete.
12446         (parse_tracepoint_definition): Adjust to std::vector change.
12447         * breakpoint.c (read_uploaded_action): Likewise.
12448         (create_tracepoint_from_upload): Likewise.
12449         * ctf.c (ctf_write_uploaded_tp): Likewise.
12450         (SET_ARRAY_FIELD): Likewise.
12451         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12452
12453 2018-03-30  Tom Tromey  <tom@tromey.com>
12454
12455         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12456         std::unique_ptr.
12457         (svr4_keep_data_in_core): Update.
12458         (svr4_read_so_list): Update.
12459
12460 2018-03-30  Tom Tromey  <tom@tromey.com>
12461
12462         * windows-nat.c (handle_output_debug_string, handle_exception):
12463         Update.
12464         * target.h (target_read_string): Update.
12465         * target.c (target_read_string): Change "string" to
12466         unique_xmalloc_ptr.
12467         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12468         Update.
12469         * solib-frv.c (frv_current_sos): Update.
12470         * solib-dsbt.c (dsbt_current_sos): Update.
12471         * solib-darwin.c (darwin_current_sos): Update.
12472         * linux-thread-db.c (inferior_has_bug): Update.
12473         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12474         Update.  Remove alloca.
12475         * ada-lang.c (ada_main_name): Update.
12476
12477 2018-03-30  Tom Tromey  <tom@tromey.com>
12478
12479         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12480         (struct dwo_file_deleter): New.
12481         (dwo_file_up): New typedef.
12482         (open_and_init_dwo_file): Use dwo_file_up.
12483         (free_dwo_file_cleanup): Remove.
12484
12485 2018-03-30  Tom Tromey  <tom@tromey.com>
12486
12487         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12488         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12489
12490 2018-03-30  Tom Tromey  <tom@tromey.com>
12491
12492         * dwarf2read.c (class free_cached_comp_units): New class.
12493         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12494         (free_cached_comp_units): Remove function.
12495
12496 2018-03-30  Tom Tromey  <tom@tromey.com>
12497
12498         * utils.h (make_cleanup_unpush_target): Remove.
12499         * inf-ptrace.c (struct target_unpusher): New.
12500         (target_unpush_up) New typedef.
12501         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12502         target_unpush_up.
12503         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12504
12505 2018-03-27  Tom Tromey  <tom@tromey.com>
12506
12507         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12508
12509 2018-03-27  Pedro Alves  <palves@redhat.com>
12510             Tom Tromey  <tom@tromey.com>
12511
12512         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12513         destructor.  Now a class.
12514         (gdb_readline_wrapper_cleanup): Remove function.
12515         (gdb_readline_wrapper): Remove cleanups.
12516
12517 2018-03-27  Tom Tromey  <tom@tromey.com>
12518
12519         * typeprint.h (struct type_print_options) <local_typedefs,
12520         global_typedefs>: Remove "struct" keyword.
12521         (class typedef_hash_table): New class.
12522         (recursively_update_typedef_hash, add_template_parameters)
12523         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12524         (find_typedef_in_hash): Don't declare.
12525         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12526         (typedef_hash_table::recursively_update): Rename from
12527         recursively_update_typedef_hash.  Now a member.
12528         (typedef_hash_table::add_template_parameters): Rename from
12529         add_template_parameters.  Now a member.
12530         (typedef_hash_table::typedef_hash_table): Now a constructor;
12531         rename from create_typedef_hash.
12532         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12533         rename from free_typedef_hash.
12534         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12535         (do_free_global_table): Remove.
12536         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12537         from copy_type_recursive.
12538         (create_global_typedef_table): Remove.
12539         (typedef_hash_table::find_global_typedef): Now a member of
12540         typedef_hash_table.
12541         (typedef_hash_table::find_typedef): Rename from
12542         find_typedef_in_hash; now a member.
12543         (whatis_exp): Update.
12544         * extension.h (struct ext_lang_type_printers): Add constructor and
12545         destructor.
12546         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12547         declare.
12548         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12549         Now a constructor; rename from start_ext_lang_type_printers.
12550         (ext_lang_type_printers): Now a destructor; rename from
12551         free_ext_lang_type_printers.
12552         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12553         Update.
12554         (c_type_print_base_struct_union): Update.  Remove cleanups.
12555
12556 2018-03-27  Tom Tromey  <tom@tromey.com>
12557
12558         * dwarf-index-write.c: Include <cmath>.
12559
12560 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12561
12562         * NEWS: Add entry describing new "set|show varsize-limit" command.
12563         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12564         command.
12565         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12566         "set variable".
12567
12568 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12569
12570         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12571         dwarf-index-write.c
12572         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12573         * dwarf-index-common.c: New file.
12574         * dwarf-index-common.h: New file.
12575         * dwarf-index-write.c: New file.
12576         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12577         (struct dwarf2_section_info): Move from here.
12578         (dwarf2_section_info_def): Likewise.
12579         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12580         (offset_type): Likewise.
12581         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12582         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12583         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12584         (byte_swap): Likewise.
12585         (MAYBE_SWAP): Likewise.
12586         (dwarf2_per_cu_ptr): Likewise.
12587         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12588         (struct tu_stats): Likewise.
12589         (struct dwarf2_per_objfile): Likewise.
12590         (struct dwarf2_per_cu_data): Likewise.
12591         (struct signatured_type): Likewise.
12592         (sig_type_ptr): Likewise.
12593         (DEF_VEC_P (sig_type_ptr)): Likewise.
12594         (INDEX4_SUFFIX): Likewise.
12595         (INDEX5_SUFFIX): Likewise.
12596         (DEBUG_STR_SUFFIX): Likewise.
12597         (dwarf2_read_section): Make non-static.
12598         (mapped_index_string_hash): Move from here.
12599         (dwarf5_djb_hash): Likewise.
12600         (file_write): Likewise.
12601         (class data_buf): Likewise.
12602         (struct symtab_index_entry): Likewise.
12603         (struct mapped_symtab): Likewise.
12604         (find_slot): Likewise.
12605         (hash_expand): Likewise.
12606         (add_index_entry): Likewise.
12607         (uniquify_cu_indices): Likewise.
12608         (class c_str_view): Likewise.
12609         (class c_str_view_hasher): Likewise.
12610         (class vector_hasher): Likewise.
12611         (write_hash_table): Likewise.
12612         (psym_index_map): Likewise.
12613         (struct addrmap_index_data): Likewise.
12614         (add_address_entry): Likewise.
12615         (add_address_entry_worker): Likewise.
12616         (write_address_map): Likewise.
12617         (symbol_kind): Likewise.
12618         (write_psymbols): Likewise.
12619         (struct signatured_type_index_data): Likewise.
12620         (write_one_signatured_type): Likewise.
12621         (recursively_count_psymbols): Likewise.
12622         (recursively_write_psymbols): Likewise.
12623         (class debug_names): Likewise.
12624         (check_dwarf64_offsets): Likewise.
12625         (psyms_seen_size): Likewise.
12626         (write_gdbindex): Likewise.
12627         (write_debug_names): Likewise.
12628         (assert_file_size): Likewise.
12629         (write_psymtabs_to_index): Likewise.
12630         (save_gdb_index_command): Likewise.
12631         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12632         command.
12633         * dwarf2read.h: New file.
12634
12635 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12636
12637         PR gdb/22670
12638         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12639         symbol name if the CU's language stores symbol names in linkage
12640         format.
12641         * language.h (struct language_defn)
12642         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12643         all instances of this struct.
12644
12645 2018-03-26  Tom Tromey  <tom@tromey.com>
12646
12647         * stack.c (backtrace_command_1): Remove verbose code.
12648
12649 2018-03-26  Tom Tromey  <tom@tromey.com>
12650
12651         * python/py-framefilter.c (py_print_type): Don't catch
12652         exceptions.  Return void.
12653         (py_print_value): Likewise.
12654         (py_print_single_arg): Likewise.
12655         (enumerate_args): Don't catch exceptions.
12656         (py_print_args): Likewise.
12657         (py_print_frame): Likewise.
12658         (gdbpy_apply_frame_filter): Catch exceptions here.
12659
12660 2018-03-26  Tom Tromey  <tom@tromey.com>
12661
12662         * stack.c (_initialize_stack): Remove trailing newlines from help
12663         text.  Add "Usage" line to "backtrace" help.
12664
12665 2018-03-26  Tom Tromey  <tom@tromey.com>
12666
12667         PR python/16486:
12668         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12669
12670 2018-03-26  Tom Tromey  <tom@tromey.com>
12671
12672         * python/py-framefilter.c (py_print_single_arg): Return
12673         EXT_LANG_BT_ERROR from catch.
12674
12675 2018-03-26  Tom Tromey  <tom@tromey.com>
12676
12677         PR backtrace/15584:
12678         * stack.c (backtrace_command_1): Move some code into no-filters
12679         "if".
12680
12681 2018-03-26  Tom Tromey  <tom@tromey.com>
12682
12683         * python/py-framefilter.c (throw_quit_or_print_exception): New
12684         function.
12685         (gdbpy_apply_frame_filter): Use it.
12686
12687 2018-03-26  Tom Tromey  <tom@tromey.com>
12688
12689         PR cli/17716:
12690         * python/py-framefilter.c (py_print_type, py_print_value)
12691         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12692         RETURN_MASK_ERROR.
12693
12694 2018-03-26  Tom Tromey  <tom@tromey.com>
12695
12696         * python/py-framefilter.c (enumerate_args): Use
12697         gdb::unique_xmalloc_ptr.
12698
12699 2018-03-26  Tom Tromey  <tom@tromey.com>
12700
12701         * python/py-framefilter.c (py_print_frame): Return
12702         EXT_LANG_BT_OK.
12703         (gdbpy_apply_frame_filter): Update comment.
12704         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12705         Remove.
12706         <EXT_LANG_BT_NO_FILTERS>: Change value.
12707
12708 2018-03-26  Tom Tromey  <tom@tromey.com>
12709
12710         PR backtrace/15582:
12711         * stack.c (backtrace_command): Parse "hide" argument.
12712         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12713         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12714         constant.
12715
12716 2018-03-26  Tom Tromey  <tom@tromey.com>
12717
12718         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12719         add "flags".
12720         (backtrace_command): Remove "fulltrace", add "flags".
12721
12722 2018-03-26  Tom Tromey  <tom@tromey.com>
12723
12724         * stack.c (backtrace_command): Rewrite command line parsing.
12725
12726 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12727
12728         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12729
12730 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12731
12732         * filename-seen-cache.h: Add include guard.
12733
12734 2018-03-26  Keith Seitz  <keiths@redhat.com>
12735
12736         * symfile.c (place_section): Remove "struct" from section_addr_info
12737         in comment.
12738         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12739         "struct" keyword from section_addr_info.
12740
12741 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12742
12743         * regformats/regdef.h (reg): Add constructors.
12744
12745 2018-03-25  Pedro Alves  <palves@redhat.com>
12746
12747         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12748         if then/else bodies in var_func_name extraction.
12749
12750 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12751
12752         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12753         lookup_minimal_symbol() to find symbol entry.
12754         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12755
12756 2018-03-23  Keith Seitz  <keiths@redhat.com>
12757
12758         PR c++/22968
12759         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12760         nested type definitions for C++, too.
12761
12762 2018-03-23  Tom Tromey  <tom@tromey.com>
12763
12764         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12765         a typedef.
12766         (macho_register_oso): Remove.
12767         (macho_symtab_read): Take a std::vector.
12768         (oso_el_compare_name): Now a std::sort comparator.
12769         (macho_symfile_read_all_oso): Take a std::vector.
12770         (macho_symfile_read): Use std::vector.  Remove cleanups.
12771
12772 2018-03-22  Tom Tromey  <tom@tromey.com>
12773
12774         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12775         (record_full_goto_bookmark): Use std::string.
12776
12777 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12778
12779         PR tdep/18295
12780         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12781         a single mask.
12782
12783 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12784
12785         * rs6000-tdep.c (store_insn_p): New function.
12786         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12787         and cr_reg to their unshifted values. Use store_insn_p to
12788         match LR saves using either R1 or fdata->alloca_reg. Use
12789         store_insn_p to match CR saves. Set alloca_reg_offset
12790         when alloca_reg and framep are set. Remove lr_reg shift
12791         when assigning to fdata->lr_register.
12792
12793 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12794
12795         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12796         command line args instead of emitting a warning.
12797
12798 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12799
12800         * tracepoint.h (struct static_tracepoint_marker): Initialize
12801         fields, define default constructor, move constructor and move
12802         assignment, disable the rest.
12803         <str_id, extra>: Make std::string.
12804         (release_static_tracepoint_marker): Remove.
12805         (free_current_marker): Remove.
12806         * tracepoint.c (free_current_marker): Remove.
12807         (parse_static_tracepoint_marker_definition): Adjust to
12808         std::string, use new hex2str overload.
12809         (release_static_tracepoint_marker): Remove.
12810         (print_one_static_tracepoint_marker): Get marker by reference
12811         and adjust to std::string.
12812         (info_static_tracepoint_markers_command): Adjust to std::vector
12813         changes
12814         * target.h (static_tracepoint_marker_p): Remove typedef.
12815         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12816         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12817         bool.
12818         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12819         * target-debug.h
12820         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12821         (target_debug_print_std_vector_static_tracepoint_marker): New.
12822         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12823         to...
12824         (target_debug_print_static_tracepoint_marker_p): ... this.
12825         * target-delegates.c: Re-generate.
12826         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12827         Make std::string.
12828         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12829         (decode_static_tracepoint_spec): Adjust to std::vector.
12830         (tracepoint_print_one_detail): Adjust to std::string.
12831         (strace_marker_decode_location): Adjust to std::string.
12832         (update_static_tracepoint): Adjust to std::string, remove call
12833         to release_static_tracepoint_marker.
12834         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12835         Adjust to std::vector.
12836         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12837         (remote_static_tracepoint_markers_by_strid): Adjust to
12838         std::vector.
12839         * common/rsp-low.h (hex2str): New overload with explicit count
12840         of bytes.
12841         * common/rsp-low.c (hex2str): New overload with explicit count
12842         of bytes.
12843         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12844         (_initialize_rsp_low_selftests): Add test_hex2str test.
12845         * unittests/tracepoint-selftests.c
12846         (test_parse_static_tracepoint_marker_definition): Adjust to
12847         std::string.
12848
12849 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12850
12851         * tracepoint.c (parse_static_tracepoint_marker_definition):
12852         Consider case where the definition is followed by more
12853         definitions.
12854         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12855         tracepoint-selftests.c.
12856         * unittests/tracepoint-selftests.c: New.
12857
12858 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12859
12860         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12861         Carvalho.
12862
12863 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12864
12865         * symtab.c (find_pc_sect_line): fixed indentation.
12866
12867 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12868
12869         * symtab.c (find_pc_sect_line): now uses binary search.
12870
12871 2018-03-19  Tom Tromey  <tom@tromey.com>
12872
12873         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12874         "IDENT" production.
12875
12876 2018-03-19  Pedro Alves  <palves@redhat.com>
12877             Tom Tromey  <tom@tromey.com>
12878
12879         * unittests/observable-selftests.c: New file.
12880         * common/observable.h: New file.
12881         * observable.h: New file.
12882         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12883         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12884         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12885         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12886         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12887         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12888         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12889         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12890         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12891         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12892         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12893         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12894         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12895         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12896         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12897         tui/tui-interp.c, valops.c: Update all users.
12898         * tui/tui-hooks.c (tui_bp_created_observer)
12899         (tui_bp_deleted_observer, tui_bp_modified_observer)
12900         (tui_inferior_exit_observer, tui_before_prompt_observer)
12901         (tui_normal_stop_observer, tui_register_changed_observer):
12902         Remove.
12903         (tui_observers_token): New global.
12904         (attach_or_detach, tui_attach_detach_observers): New functions.
12905         (tui_install_hooks, tui_remove_hooks): Use
12906         tui_attach_detach_observers.
12907         * record-btrace.c (record_btrace_thread_observer): Remove.
12908         (record_btrace_thread_observer_token): New global.
12909         * observer.sh: Remove.
12910         * observer.c: Rename to observable.c.
12911         * observable.c (namespace gdb_observers): Define new objects.
12912         (observer_debug): Move into gdb_observers namespace.
12913         (struct observer, struct observer_list, xalloc_observer_list_node)
12914         (xfree_observer_list_node, generic_observer_attach)
12915         (generic_observer_detach, generic_observer_notify): Remove.
12916         (_initialize_observer): Update.
12917         Don't include observer.inc.
12918         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12919         (clean mostlyclean): Likewise.
12920         (observer.h, observer.inc): Remove targets.
12921         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12922         (COMMON_SFILES): Use observable.c, not observer.c.
12923         * .gitignore: Remove observer.h.
12924
12925 2018-03-18  Tom Tromey  <tom@tromey.com>
12926
12927         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12928         gdb::def_vector.
12929         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12930
12931 2018-03-17  Tom Tromey  <tom@tromey.com>
12932
12933         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12934
12935 2018-03-17  Tom Tromey  <tom@tromey.com>
12936
12937         * target.c (class scoped_target_fd): New.
12938         (target_fileio_close_cleanup): Remove.
12939         (target_fileio_read_alloc_1): Use scoped_target_fd.
12940
12941 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12942
12943         * silent-rules.mk: New.
12944         * Makefile.in: Include silent-rules.mk
12945         (srcdir, VPATH, top_srcdir): Move up.
12946         (COMPILE): Add ECHO_CXX.
12947         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12948         (init.c): Add ECHO_INIT_C.
12949         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12950         (version.c): Add ECHO_GEN.
12951         (printcmd.o): Add ECHO_CXX.
12952         (target-float.o): Add ECHO_CXX.
12953         (ada-exp.o): Add ECHO_CXX.
12954         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12955         (insight$(EXEEXT)): Add ECHO_CXXLD.
12956         * gnulib/configure.ac: Add AM_SILENT_RULES.
12957         * gnulib/aclocal.m4: Re-generate.
12958         * gnulib/configure: Re-generate.
12959         * gnulib/import/Makefile.in: Re-generate.
12960
12961 2018-03-16  Tom Tromey  <tom@tromey.com>
12962
12963         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12964         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12965         * utils.c (do_free_section_addr_info)
12966         (make_cleanup_free_section_addr_info): Remove.
12967         * symfile.h (struct other_sections): Add constructor.
12968         (struct section_addr_info): Remove.
12969         (section_addr_info): New typedef.
12970         (struct sym_fns) <sym_offsets>: Change type of parameter.
12971         (build_section_addr_info_from_objfile)
12972         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12973         (default_symfile_offsets, symbol_file_add)
12974         (symbol_file_add_from_bfd)
12975         (build_section_addr_info_from_section_table): Update.
12976         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12977         * symfile.c (alloc_section_addr_info): Remove.
12978         (build_section_addr_info_from_section_table): Change return type.
12979         Update.
12980         (build_section_addr_info_from_bfd)
12981         (build_section_addr_info_from_objfile): Likewise.
12982         (free_section_addr_info): Remove.
12983         (relative_addr_info_to_section_offsets): Change type of "addrs".
12984         (addrs_section_compar): Now a std::sort comparator.
12985         (addrs_section_sort): Change return type.
12986         (addr_info_make_relative): Change type of "addrs".  Update.
12987         (default_symfile_offsets, syms_from_objfile_1)
12988         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12989         (symbol_file_add_separate): Update.
12990         (symbol_file_add): Change type of "addrs".  Update.
12991         (add_symbol_file_command): Update.  Remove cleanups.
12992         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12993         cleanups.
12994         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12995         * solib.c (solib_read_symbols): Update.
12996         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12997         * machoread.c (macho_symfile_offsets): Update.
12998         * jit.c (jit_bfd_try_read_symtab): Update.
12999
13000 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13001
13002         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13003         unittests/utils-selftests.c.
13004         * unittests/utils-selftests.c: New file.
13005
13006 2018-03-14  Tom Tromey  <tom@tromey.com>
13007
13008         PR cli/14977:
13009         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13010         for NULL.
13011
13012 2018-03-14  Tom Tromey  <tom@tromey.com>
13013
13014         PR cli/19918:
13015         * printcmd.c (printf_pointer): Allow "-" in format.
13016
13017 2018-03-14  Tom Tromey  <tom@tromey.com>
13018
13019         * printcmd.c (_initialize_printcmd): Add usage to printf.
13020
13021 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13022
13023         * MAINTAINERS: Update my email address.
13024
13025 2018-03-13  Tom Tromey  <tom@tromey.com>
13026
13027         * machoread.c (macho_check_dsym): Change filenamep to a
13028         std::string*.
13029         (macho_symfile_read): Update.
13030         * symfile.c (load_command): Use std::string.
13031
13032 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13033
13034         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13035         to error message string.
13036         (riscv_register_name): Use xsnprintf instead of sprintf.
13037         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13038         internal_error.
13039         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13040         error.
13041         (riscv_push_dummy_call): Likewise.
13042
13043 2018-03-12  Tom Tromey  <tom@tromey.com>
13044
13045         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13046         Use gdb::byte_vector.
13047         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13048
13049 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13050
13051         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13052         parameter type to readable_regcache.
13053         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13054         the declaration.
13055
13056 2018-03-11  Tom Tromey  <tom@tromey.com>
13057
13058         * dwarf2read.c (struct nextfield): Add initializers.
13059         (struct nextfnfield): Remove.
13060         (struct fnfieldlist): Add initializers.  Remove "length" and
13061         "head", use std::vector.
13062         (struct decl_field_list): Remove.
13063         (struct field_info): Add initializers.
13064         <fields, baseclasses>: Now std::vector.
13065         <nbaseclasses, nfnfields, typedef_field_list_count,
13066         nested_types_list_count>: Remove.
13067         (dwarf2_add_field, dwarf2_add_type_defn)
13068         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13069         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13070         (process_structure_scope): Update.
13071
13072 2018-03-11  Tom Tromey  <tom@tromey.com>
13073
13074         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13075         for use by std::sort.
13076         (build_type_psymtabs_1): Use std::vector.
13077
13078 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13079
13080         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13081         and LIBMPFR in the printed configuration.
13082
13083 2018-03-08  Tom Tromey  <tom@tromey.com>
13084
13085         * source.c (get_filename_and_charpos): Use scoped_fd.
13086         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13087         (procfs_pidlist): Likewise.
13088         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13089         (iterate_over_mappings): Likewise.
13090
13091 2018-03-08  Tom Tromey  <tom@tromey.com>
13092
13093         * infcall.c (struct call_return_meta_info)
13094         <stack_temporaries_enabled>: Remove.
13095         (get_call_return_value, call_function_by_hand_dummy): Update.
13096         * thread.c (disable_thread_stack_temporaries): Remove.
13097         (enable_thread_stack_temporaries): Remove.
13098         (thread_stack_temporaries_enabled_p): Return bool.
13099         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13100         (get_last_thread_stack_temporary): Update.
13101         * eval.c (evaluate_subexp): Update.
13102         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13103         class, not a function.
13104         (value_ptr, value_vec): Remove typedefs.
13105         (class thread_info) <stack_temporaries_enabled>: Now bool.
13106         <stack_temporaries>: Now a std::vector.
13107         (thread_stack_temporaries_enabled_p)
13108         (value_in_thread_stack_temporaries): Return bool.
13109
13110 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13111
13112         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13113         (getpkt_or_notif_sane_1): Likewise.
13114
13115 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13116
13117         * build-id.c (build_id_to_debug_bfd): Use std::string.
13118
13119 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13120
13121         * build-id.c (find_separate_debug_file_by_buildid): Return
13122         std::string.
13123         * build-id.h (find_separate_debug_file_by_buildid): Return
13124         std::string.
13125         * coffread.c (coff_symfile_read): Adjust to std::string.
13126         * elfread.c (elf_symfile_read): Adjust to std::string.
13127         * symfile.c (separate_debug_file_exists): Change parameter to
13128         std::string.
13129         (find_separate_debug_file): Return std::string.
13130         (find_separate_debug_file_by_debuglink): Return std::string.
13131         * symfile.h (find_separate_debug_file_by_debuglink): Return
13132         std::string.
13133
13134 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13135
13136         * common/xml-utils.c (xml_escape_text): Move code to...
13137         (xml_escape_text_append): ... this new function.
13138         * common/xml-utils.h (xml_escape_text_append): New declaration.
13139         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13140         New function.
13141         (_initialize_xml_utils): register test_xml_escape_text_append as
13142         a selftest.
13143
13144 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13145
13146         * defs.h: Remove MAX_REGISTER_SIZE.
13147         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13148         asserts.
13149         * python/py-unwind.c (pyuw_sniffer): Likewise.
13150
13151 2018-03-07  Tom Tromey  <tom@tromey.com>
13152
13153         * linux-tdep.c (linux_info_proc): Update.
13154         * target.h (struct target_ops) <to_fileio_readlink>: Return
13155         optional<string>.
13156         (target_fileio_readlink): Return optional<string>.
13157         * remote.c (remote_hostio_readlink): Return optional<string>.
13158         * inf-child.c (inf_child_fileio_readlink): Return
13159         optional<string>.
13160         * target.c (target_fileio_readlink): Return optional<string>.
13161
13162 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13163
13164         * regcache.c (cooked_read_test): Add riscv to the list of
13165         architectures that have a save_reggroup.
13166
13167 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13168
13169         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13170         value is not a dynamic class object.
13171
13172 2018-03-06  Tom Tromey  <tom@tromey.com>
13173
13174         * rust-exp.y: Formatting fixes.
13175
13176 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13177
13178         * riscv-tdep.c (riscv_register_name): Remove target description
13179         support.
13180         (riscv_gdbarch_init): Remove target description check.
13181
13182 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13183
13184         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13185         comment.
13186         * riscv-tdep.h: Likewise.
13187
13188 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13189
13190         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13191         (riscv_pseudo_register_write): Delete.
13192         (riscv_gdbarch_init): Remove all use of pseudo registers.
13193
13194 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13195
13196         * record-btrace.c (btrace_print_lines): Replace cleanup
13197         parameter with RAII equivalents.
13198         (btrace_insn_history): Replace cleanup with RAII equivalents.
13199         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13200         make_cleanup_ui_out_tuple_begin_end): Remove.
13201         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13202         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13203         make_cleanup_ui_out_list_begin_end): Remove.
13204
13205 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13206
13207         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13208         parameter types to std::vector.  Use bool.
13209         (record_btrace_wait): Replace VEC(tp_t) with
13210         std::vector<thread_info *>.
13211         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13212
13213 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13214
13215         * record-btrace.c (record_btrace_disable_callback): Remove.
13216         (struct scoped_btrace_disable): New.
13217         (record_btrace_open): Use scoped_btrace_disable.
13218
13219 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13220
13221         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13222         reading values from registers.
13223
13224 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13225
13226         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13227         where appropriate.
13228
13229 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13230
13231         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13232         change parameter type.  Use GDB's print functions, and use
13233         core_addr_to_string where appropriate.
13234         (riscv_push_dummy_call): Use core_addr_to_string where
13235         appropriate, update call to riscv_print_arg_location, and reindent
13236         a few lines.
13237         (riscv_return_value): Update call to riscv_print_arg_location.
13238
13239 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13240             Tim Newsome <tim@sifive.com>
13241             Albert Ou <a0u@eecs.berkeley.edu>
13242             Darius Rad <darius@bluespec.com>
13243
13244         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13245         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13246         (ALLDEPFILES): Add riscv-tdep.c
13247         * configure.tgt: Add riscv support.
13248         * riscv-tdep.c: New file.
13249         * riscv-tdep.h: New file.
13250         * NEWS: Mention new target.
13251         * MAINTAINERS: Add entry for riscv.
13252
13253 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13254
13255         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13256         fields within aggregates.
13257
13258 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13259
13260         * record-btrace.c (btrace_print_lines): Change type of flags to
13261         gdb_disassembly_flags.
13262
13263 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13264
13265         * fbsd-nat.c: Include "inf-ptrace.h".
13266         (USE_SIGTRAP_SIGINFO): Conditionally define.
13267         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13268         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13269         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13270         function.
13271         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13272         Likewise.
13273         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13274         Likewise.
13275         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13276         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13277         "supports_stopped_by_hw_breakpoint" target methods.
13278
13279 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13280
13281         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13282         * fbsd-nat.c (debug_fbsd_nat): New variable.
13283         (show_fbsd_nat_debug): New function.
13284         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13285         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13286
13287 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13288
13289         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13290         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13291         prototype.
13292         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13293         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13294         method.
13295
13296 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13297
13298         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13299         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13300
13301 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13302
13303         * charset.c (struct charset_vector): New.
13304         (charsets): Change type to charset_vector.
13305         (find_charset_names): Adjust.
13306         (add_one): Adjust.
13307         (_initialize_charset): Adjust.
13308
13309 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13310
13311         * progspace.h (struct program_space) <deleted_solibs>: Change
13312         type to std::vector<std::string>.
13313         * progspace.c (clear_program_space_solib_cache): Adjust.
13314         * breakpoint.c (print_solib_event): Adjust.
13315         (check_status_catch_solib): Adjust.
13316         * solib.c (update_solib_list): Adjust.
13317         * ui-out.h (class ui_out) <field_string>: New overload.
13318         * ui-out.c (ui_out::field_string): New overload.
13319
13320 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13321
13322         * progspace.h (struct program_space): Add constructor and
13323         destructor, initialize fields.
13324         (add_program_space): Remove.
13325         * progspace.c (add_program_space): Rename to...
13326         (program_space::program_space): ... this.
13327         (release_program_space): Rename to...
13328         (program_space::~program_space): ... this.
13329         (delete_program_space): Use delete to delete program_space.
13330         (initialize_progspace): Use new to allocate program_space.
13331         * inferior.c (add_inferior_with_spaces): Likewise.
13332         (clone_inferior_command): Likewise.
13333         * infrun.c (follow_fork_inferior): Likewise.
13334         (handle_vfork_child_exec_or_exit): Likewise.
13335
13336 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13337
13338         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13339         (delim_string_to_char_ptr_vec): Return std::vector of
13340         gdb::unique_xmalloc_ptr.
13341         (dirnames_to_char_ptr_vec_append): Take std::vector of
13342         gdb::unique_xmalloc_ptr.
13343         (dirnames_to_char_ptr_vec): Return std::vector of
13344         gdb::unique_xmalloc_ptr.
13345         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13346         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13347         (delim_string_to_char_ptr_vec): Return an std::vector of
13348         gdb::unique_xmalloc_ptr, adjust the code.
13349         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13350         gdb::unique_xmalloc_ptr, adjust the code.
13351         (dirnames_to_char_ptr_vec): Return an std::vector of
13352         gdb::unique_xmalloc_ptr, adjust the code.
13353         * auto-load.c (auto_load_safe_path_vec): Change type to
13354         std::vector of gdb::unique_xmalloc_ptr.
13355         (auto_load_expand_dir_vars): Return an std::vector of
13356         gdb::unique_xmalloc_ptr, adjust the code.
13357         (auto_load_safe_path_vec_update): Adjust.
13358         (filename_is_in_auto_load_safe_path_vec): Adjust.
13359         (auto_load_objfile_script_1): Adjust.
13360         * build-id.c (build_id_to_debug_bfd): Adjust.
13361         * linux-thread-db.c (thread_db_load_search): Adjust.
13362         * source.c (add_path): Adjust.
13363         (openp): Adjust.
13364         * symfile.c (find_separate_debug_file): Adjust.
13365         * utils.c (do_free_char_ptr_vec): Remove.
13366         (make_cleanup_free_char_ptr_vec): Remove.
13367
13368 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13369
13370         PR gdb/22907
13371         * common/pathstuff.c: Conditionally include "<windows.h>".
13372
13373 2018-03-01  Georg Sauthoff  <mail@georg.so>
13374
13375         PR gdb/22888
13376         * gcore.in: Quote variables and switch interpreter to bash.
13377
13378 2018-03-01  Tom Tromey  <tom@tromey.com>
13379
13380         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13381         assertion.  Add assertion for discriminant_index.
13382         (quirk_rust_enum): Use correct base type name in univariant case.
13383
13384 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13385
13386         * record.c (get_call_history_modifiers): Return a
13387         record_print_flags.
13388         (cmd_record_call_history): Adjust.
13389         * record-btrace.c (record_btrace_call_history): Adjust.
13390         (record_btrace_call_history_range): Adjust.
13391         (record_btrace_call_history_from): Adjust.
13392         * target-debug.h (target_debug_print_record_print_flags): New.
13393         * target-delegates.c: Re-generate.
13394         * target.c (target_call_history): Change flags type.
13395         (target_call_history_from): Likewise.
13396         (target_call_history_range): Likewise.
13397         * target.h (struct target_ops) <target_call_history>: Likewise.
13398         (target_call_history_from): Likewise.
13399         (target_call_history_range): Likewise.
13400
13401 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13402             Simon Marchi  <simon.marchi@polymtl.ca>
13403
13404         * common/common-utils.c: Include "sys/stat.h".
13405         (is_regular_file): Move here from "source.c"; change return
13406         type to "bool".
13407         * common/common-utils.h (is_regular_file): New prototype.
13408         * common/pathstuff.c (contains_dir_separator): New function.
13409         * common/pathstuff.h (contains_dir_separator): New prototype.
13410         * source.c: Don't include "sys/stat.h".
13411         (is_regular_file): Move to "common/common-utils.c".
13412
13413 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13414
13415         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13416         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13417         * auto-load.c: Include "common/pathstuff.h".
13418         * common/common-def.h (current_directory): Move here.
13419         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13420         function.
13421         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13422         prototype.
13423         * common/pathstuff.c: New file.
13424         * common/pathstuff.h: New file.
13425         * compile/compile.c: Include "common/pathstuff.h".
13426         * defs.h (current_directory): Move to "common/common-defs.h".
13427         * dwarf2read.c: Include "common/pathstuff.h".
13428         * exec.c: Likewise.
13429         * guile/scm-safe-call.c: Likewise.
13430         * linux-thread-db.c: Likewise.
13431         * main.c: Likewise.
13432         * nto-tdep.c: Likewise.
13433         * objfiles.c: Likewise.
13434         * source.c: Likewise.
13435         * symtab.c: Likewise.
13436         * utils.c: Include "common/pathstuff.h".
13437         (gdb_realpath): Move to "common/pathstuff.c".
13438         (gdb_realpath_keepfile): Likewise.
13439         (gdb_abspath): Likewise.
13440         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13441         (gdb_realpath_keepfile): Likewise.
13442         (gdb_abspath): Likewise.
13443
13444 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13445
13446         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13447         wildcard process pid for super_resume for kernels with a
13448         specific bug.
13449
13450 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13451
13452         * compile/compile.c (get_args): Add additional comments
13453         explaining function.
13454
13455 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13456             Tom Tromey  <tom@tromey.com>
13457
13458         * target.h (memory_write_request_s): Remove typedef.  Don't define
13459         VEC.
13460         (target_write_memory_blocks): Change argument to std::vector.
13461         (struct memory_write_request): Add constructor.
13462         * target-memory.c (compare_block_starting_address): Return bool.
13463         Change argument types.
13464         (claim_memory): Change arguments to use std::vector.
13465         (split_regular_and_flash_blocks, blocks_to_erase)
13466         (compute_garbled_blocks): Likewise.
13467         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13468         (target_write_memory_blocks): Change argument to std::vector.
13469         * symfile.c (struct load_section_data): Add constructor and
13470         destructor.  Use std::vector for "requests".
13471         (struct load_progress_data): Add initializers.
13472         (load_section_callback): Update.  Use "new".
13473         (clear_memory_write_data): Remove.
13474         (generic_load): Update.
13475
13476 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13477
13478         * arch/aarch64.h: Use common/tdesc.h.
13479
13480 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13481
13482         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13483         architecture with a 64-bit ABI.
13484
13485 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13486
13487         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13488         ahead of target description loading.
13489
13490 2018-02-26  Tom Tromey  <tom@tromey.com>
13491
13492         * stack.c (backtrace_command_1): Update.
13493         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13494         of "flags".
13495         * python/py-framefilter.c (py_print_frame)
13496         (gdbpy_apply_frame_filter): Change type of "flags".
13497         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13498         of "flags".
13499         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13500         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13501         * extension.h (enum frame_filter_flag): Rename from
13502         frame_filter_flags.
13503         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13504         (apply_ext_lang_frame_filter): Change type of "flags".
13505         * extension.c (apply_ext_lang_frame_filter): Change type of
13506         "flags".
13507         * extension-priv.h (struct extension_language_ops)
13508         <apply_frame_filter>: Change type of "flags".
13509
13510 2018-02-26  Tom Tromey  <tom@tromey.com>
13511
13512         PR python/16497:
13513         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13514         off-by-one in py_end computation.
13515         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13516         PRINT_MORE_FRAMES.
13517         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13518         constant.
13519
13520 2018-02-26  Tom Tromey  <tom@tromey.com>
13521
13522         * dwarf2read.c (struct variant_field): New.
13523         (struct nextfield) <variant>: New field.
13524         (dwarf2_add_field): Handle DW_TAG_variant_part.
13525         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13526         discriminated union.
13527         (read_structure_type): Handle DW_TAG_variant_part.
13528         (handle_struct_member_die): New function, extracted from
13529         process_structure_scope.  Handle DW_TAG_variant.
13530         (process_structure_scope): Handle discriminated unions.  Call
13531         handle_struct_member_die.
13532
13533 2018-02-26  Tom Tromey  <tom@tromey.com>
13534
13535         * rust-lang.h (rust_last_path_segment): Declare.
13536         * rust-lang.c (rust_last_path_segment): Now public.  Change
13537         contract.
13538         (struct disr_info): Remove.
13539         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13540         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13541         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13542         (rust_enum_p, rust_enum_variant): New function.
13543         (rust_underscore_fields): Remove "offset" parameter.
13544         (rust_print_enum): New function.
13545         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13546         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13547         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13548         enums.
13549         (rust_internal_print_type): New function, from rust_print_type.
13550         Remove enum code.
13551         (rust_print_type): Call rust_internal_print_type.
13552         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13553         Update enum handling.
13554         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13555         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13556         (rust_union_quirks): New functions.
13557         (process_full_comp_unit, process_full_type_unit): Call
13558         rust_union_quirks.
13559         (process_structure_scope): Update rust_unions if necessary.
13560
13561 2018-02-26  Tom Tromey  <tom@tromey.com>
13562
13563         * value.h (value_union_variant): Declare.
13564         * valops.c (value_union_variant): New function.
13565         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13566         (struct discriminant_info): New.
13567         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13568         enumerator.
13569         (struct main_type) <flag_discriminated_union>: New field.
13570
13571 2018-02-26  Tom Tromey  <tom@tromey.com>
13572
13573         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13574         unittests/unpack-selftests.c.
13575         * unittests/unpack-selftests.c: New file.
13576         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13577
13578 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13579
13580         * dwarf2read.c (struct partial_die_info) <read>: New method.
13581         (read_partial_die): Remove the declaration.
13582         (load_partial_dies): Update.
13583         (partial_die_info::partial_die_info):
13584         (read_partial_die): Change it to partial_die_info::read.
13585
13586 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13587
13588         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13589         (fixup_partial_die): Remove declaration.
13590         (scan_partial_symbols): Update.
13591         (partial_die_parent_scope): Likewise.
13592         (partial_die_full_name): Likewise.
13593         (fixup_partial_die): Change it to partial_die_info::fixup.
13594
13595 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13596
13597         * dwarf2read.c (read_partial_die): Update the declaration.
13598         (load_partial_dies): Caller update.
13599         (read_partial_die): Remove one argument abbrev_len.
13600
13601 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13602
13603         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13604         assignment operator.
13605         (load_partial_dies): Use ctor and copy ctor.
13606         (read_partial_die): Update.
13607         (dwarf2_cu::find_partial_die): Use ctor.
13608
13609 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13610
13611         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13612         (find_partial_die_in_comp_unit): Change it to
13613         dwarf2_cu::find_partial_die.
13614         (find_partial_die): Update.
13615
13616 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13617
13618         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13619         is NULL.
13620
13621 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13622
13623         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13624
13625 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13626
13627         * arch/amd64.h: Use common/tdesc.h.
13628         * arch/i386.c: Likewise.
13629         * arch/i386.h: Likewise.
13630         * arch/tic6x.c: Likewise.
13631         * arch/tdesc.h: Move file from here...
13632         * common/tdesc.h: ...to here.
13633         * features/aarch64-core.c: Regenerate.
13634         * features/aarch64-fpu.c: Regenerate.
13635         * features/i386/32bit-avx.c: Regenerate.
13636         * features/i386/32bit-avx512.c: Regenerate.
13637         * features/i386/32bit-core.c: Regenerate.
13638         * features/i386/32bit-linux.c: Regenerate.
13639         * features/i386/32bit-mpx.c: Regenerate.
13640         * features/i386/32bit-pkeys.c: Regenerate.
13641         * features/i386/32bit-sse.c: Regenerate.
13642         * features/i386/64bit-avx.c: Regenerate.
13643         * features/i386/64bit-avx512.c: Regenerate.
13644         * features/i386/64bit-core.c: Regenerate.
13645         * features/i386/64bit-linux.c: Regenerate.
13646         * features/i386/64bit-mpx.c: Regenerate.
13647         * features/i386/64bit-pkeys.c: Regenerate.
13648         * features/i386/64bit-segments.c: Regenerate.
13649         * features/i386/64bit-sse.c: Regenerate.
13650         * features/i386/x32-core.c: Regenerate.
13651         * features/tic6x-c6xp.c: Regenerate.
13652         * features/tic6x-core.c: Regenerate.
13653         * features/tic6x-gp.c: Regenerate.
13654         * target-descriptions.c: Use common/tdesc.h.
13655         * target-descriptions.h: Likewise.
13656
13657 2018-02-24  Tom Tromey  <tom@tromey.com>
13658
13659         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13660         (try_thread_db_load_from_dir, thread_db_load_search): Use
13661         std::string.
13662         (info_auto_load_libthread_db_compare): Return bool.  Change
13663         argument types.
13664         (info_auto_load_libthread_db): Use std::vector, std::string.
13665         Remove cleanups.
13666
13667 2018-02-24  Tom Tromey  <tom@tromey.com>
13668
13669         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13670         std::string.
13671         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13672         std::string*.
13673         * gdbarch.c: Rebuild.
13674         * gdbarch.h: Rebuild.
13675         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13676         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13677         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13678         std::string*.
13679
13680 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13681
13682         * gdbtypes.h (sect_offset): Change type to uint64_t.
13683         (sect_offset_str): New function.
13684         * dwarf2read.c (create_addrmap_from_aranges): Use
13685         sect_offset_str.
13686         (error_check_comp_unit_head): Likewise.
13687         (create_debug_type_hash_table): Likewise.
13688         (read_cutu_die_from_dwo): Likewise.
13689         (init_cutu_and_read_dies): Likewise.
13690         (init_cutu_and_read_dies_no_follow): Likewise.
13691         (process_psymtab_comp_unit_reader): Likewise.
13692         (partial_die_parent_scope): Likewise.
13693         (peek_die_abbrev): Likewise.
13694         (process_queue): Likewise.
13695         (dwarf2_physname): Likewise.
13696         (read_namespace_alias): Likewise.
13697         (read_import_statement): Likewise.
13698         (create_dwo_cu_reader): Likewise.
13699         (create_cus_hash_table): Likewise.
13700         (lookup_dwo_cutu): Likewise.
13701         (inherit_abstract_dies): Likewise.
13702         (read_func_scope): Likewise.
13703         (read_call_site_scope): Likewise.
13704         (dwarf2_add_member_fn): Likewise.
13705         (read_common_block): Likewise.
13706         (read_module_type): Likewise.
13707         (read_typedef): Likewise.
13708         (read_subrange_type): Likewise.
13709         (load_partial_dies): Likewise.
13710         (read_partial_die): Likewise.
13711         (find_partial_die): Likewise.
13712         (read_str_index): Likewise.
13713         (dwarf2_string_attr): Likewise.
13714         (build_error_marker_type): Likewise.
13715         (lookup_die_type): Likewise.
13716         (dump_die_shallow): Likewise.
13717         (follow_die_ref): Likewise.
13718         (dwarf2_fetch_die_loc_sect_off): Likewise.
13719         (dwarf2_fetch_constant_bytes): Likewise.
13720         (follow_die_sig): Likewise.
13721         (get_signatured_type): Likewise.
13722         (get_DW_AT_signature_type): Likewise.
13723         (dwarf2_find_containing_comp_unit): Likewise.
13724         (set_die_type): Likewise.
13725
13726 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13727
13728         * arch/aarch64.c: Include "common-defs.h".
13729         * arch/amd64.c: Likewise.
13730         * arch/i386.c: Likewise.
13731
13732 2018-02-21  Tom Tromey  <tom@tromey.com>
13733
13734         * value.h: (extract_field_op): Update.
13735         * eval.c (extract_field_op): Return a const char *.
13736         * expression.h (parse_expression_for_completion): Update.
13737         * completer.c (complete_expression): Update.
13738         (add_struct_fields): Make fieldname const.
13739         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13740         (mark_completion_tag, parse_exp_in_context_1): Update.
13741         (parse_expression_for_completion): Change "name" to
13742         unique_xmalloc_ptr*.
13743
13744 2018-02-21  Tom Tromey  <tom@tromey.com>
13745
13746         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13747
13748 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13749
13750         * avr-tdep.c (avr_read_pc): Change parameter type to
13751         readable_regcache.
13752         * gdbarch.sh (read_pc): Likewise.
13753         * gdbarch.c: Re-generated.
13754         * gdbarch.h: Re-generated.
13755         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13756         readable_regcache.
13757         * ia64-tdep.c (ia64_read_pc): Likewise.
13758         * mips-tdep.c (mips_read_pc): Likewise.
13759         * spu-tdep.c (spu_read_pc): Likewise.
13760
13761 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13762
13763         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13764         * regcache-dump.c: New file.
13765         * regcache.c: Move register_dump to regcache-dump.c.
13766         (maintenance_print_registers): Likewise.
13767         (maintenance_print_raw_registers): Likewise.
13768         (maintenance_print_cooked_registers): Likewise.
13769         (maintenance_print_register_groups): Likewise.
13770         (maintenance_print_remote_registers): Likewise.
13771         (_initialize_regcache): Likewise.
13772         * regcache.h (register_dump): Moved from regcache.c.
13773
13774 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13775
13776         * regcache.c (regcache::regcache): Update.
13777         (regcache::invalidate): Move it to detached_regcache::invalidate.
13778         (get_thread_arch_aspace_regcache): Update.
13779         (regcache::raw_update): Update.
13780         (regcache::cooked_read): Remove some code.
13781         (regcache::cooked_read_value): Likewise.
13782         (regcache::raw_write): Remove assert on m_readonly_p.
13783         (regcache::raw_supply_integer): Move it to
13784         detached_regcache::raw_supply_integer.
13785         (regcache::raw_supply_zeroed): Likewise.
13786         * regcache.h (detached_regcache) <raw_supply_integer>: New
13787         declaration.
13788         <raw_supply_zeroed, invalidate>: Likewise.
13789         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13790         <invalidate>: Likewise.
13791         <m_readonly_p>: Removed.
13792
13793 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13794
13795         * infcmd.c (get_return_value): Let stop_regs point to
13796         get_current_regcache.
13797         * regcache.c (regcache::regcache): Remove.
13798         (register_dump_reg_buffer): New class.
13799         (regcache_print): Adjust.
13800         * regcache.h (regcache): Remove constructors.
13801
13802 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13803
13804         * regcache.c (class register_dump): New class.
13805         (register_dump_regcache, register_dump_none): New class.
13806         (register_dump_remote, register_dump_groups): New class.
13807         (regcache_print): Update.
13808         * regcache.h (regcache_dump_what): Move it to regcache.c.
13809         (regcache) <dump>: Remove.
13810
13811 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13812
13813         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13814          reg_buffer_rw *.
13815         (jit_unwind_reg_set_impl): Call raw_supply.
13816         (jit_frame_sniffer): Use reg_buffer_rw.
13817         * record-full.c (record_full_core_regbuf): Change its type.
13818         (record_full_core_open_1): Use reg_buffer_rw.
13819         (record_full_close): Likewise.
13820         (record_full_core_fetch_registers): Use regcache->raw_supply.
13821         (record_full_core_store_registers): Likewise.
13822         * regcache.c (regcache::get_register_status): Move it to
13823         reg_buffer.
13824         (regcache_raw_set_cached_value): Remove.
13825         (regcache::raw_set_cached_value): Remove.
13826         (regcache::raw_write): Call raw_supply.
13827         (regcache::raw_supply): Move it to reg_buffer_rw.
13828         * regcache.h (regcache_raw_set_cached_value): Remove.
13829         (reg_buffer_rw): New class.
13830
13831 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13832
13833         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13834         readonly_detached_regcache.
13835         (dummy_frame_prev_register): Use regcache->cooked_read.
13836         * frame.c (frame_save_as_regcache): Change return type.
13837         (frame_pop): Update.
13838         * frame.h (frame_save_as_regcache): Update declaration.
13839         * inferior.h (get_infcall_suspend_state_regcache): Update
13840         declaration.
13841         * infrun.c (infcall_suspend_state) <registers>: use
13842         readonly_detached_regcache.
13843         (save_infcall_suspend_state): Don't use regcache_dup.
13844         (get_infcall_suspend_state_regcache): Change return type.
13845         * linux-fork.c (struct fork_info) <savedregs>: Change to
13846         readonly_detached_regcache.
13847         <pc>: New field.
13848         (fork_save_infrun_state): Don't use regcache_dup.
13849         (info_checkpoints_command): Adjust.
13850         * mi/mi-main.c (register_changed_p): Update declaration.
13851         (mi_cmd_data_list_changed_registers): Use
13852         readonly_detached_regcache.
13853         (register_changed_p): Change parameter type to
13854         readonly_detached_regcache.
13855         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13856         readonly_detached_regcache.
13857         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13858         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13859         New.
13860         (regcache::save): Move it to reg_buffer.
13861         (regcache::restore): Change parameter type.
13862         (regcache_dup): Remove.
13863         * regcache.h (reg_buffer) <save>: New method.
13864         (readonly_detached_regcache): New class.
13865         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13866         readonly_detached_regcache.
13867         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13868
13869 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13870
13871         * frame.c (frame_save_as_regcache): Use regcache method save.
13872         (frame_pop): Use regcache method restore.
13873         * infrun.c (restore_infcall_suspend_state): Likewise.
13874         * linux-fork.c (fork_load_infrun_state): Likewise.
13875         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13876         save.
13877         * regcache.c (regcache_save): Remove.
13878         (regcache::restore): More asserts.
13879         (regcache_cpy): Remove.
13880         * regcache.h (regcache_save): Remove the declaration.
13881         (regcache::restore): Move from private to public.
13882         Remove the friend declaration of regcache_cpy.
13883         (regcache_cpy): Remove declaration.
13884
13885 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13886
13887         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13888         parameter type to 'readable_regcache *'.
13889         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13890         * arm-tdep.c (arm_neon_quad_read): Likewise.
13891         (arm_pseudo_read): Likewise.
13892         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13893         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13894         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13895         * gdbarch.c: Re-generated.
13896         * gdbarch.h: Re-generated.
13897         * gdbarch.sh (pseudo_register_read): Change parameter type to
13898         'readable_regcache *'.
13899         (pseudo_register_read_value): Likewise.
13900         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13901         (h8300_pseudo_register_read): Likewise.
13902         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13903         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13904         (i386_pseudo_register_read_into_value): Likewise.
13905         (i386_pseudo_register_read_value): Likewise.
13906         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13907         declaration.
13908         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13909         * m32c-tdep.c (m32c_raw_read): Likewise.
13910         (m32c_read_flg): Likewise.
13911         (m32c_banked_register): Likewise.
13912         (m32c_banked_read): Likewise.
13913         (m32c_sb_read): Likewise.
13914         (m32c_part_read): Likewise.
13915         (m32c_cat_read): Likewise.
13916         (m32c_r3r2r1r0_read): Likewise.
13917         (m32c_pseudo_register_read): Likewise.
13918         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13919         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13920         (mep_pseudo_cr64_read): Likewise.
13921         (mep_pseudo_register_read): Likewise.
13922         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13923         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13924         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13925         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13926         (regcache::cooked_read): Likewise.
13927         (regcache::cooked_read_value): Likewise.
13928         (regcache_cooked_read_signed):
13929         (regcache::cooked_read): Likewise.
13930         * regcache.h (readable_regcache): New class.
13931         (regcache): Inherit readable_regcache.  Move some methods to
13932         readable_regcache.
13933         * rl78-tdep.c (rl78_pseudo_register_read): Change
13934         parameter type to 'readable_regcache *'.
13935         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13936         (e500_pseudo_register_read): Change parameter type to
13937         'readable_regcache *'.
13938         (dfp_pseudo_register_read): Likewise.
13939         (vsx_pseudo_register_read): Likewise.
13940         (efpr_pseudo_register_read): Likewise.
13941         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13942         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13943         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13944         (sh64_pseudo_register_read): Likewise.
13945         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13946         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13947         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13948         (spu_pseudo_register_read): Likewise.
13949         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13950         (xtensa_pseudo_register_read): Likewise.
13951
13952 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13953
13954         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13955         (regcache::arch): Move it to reg_buffer::arch.
13956         (regcache::register_buffer): Likewise.
13957         (regcache::assert_regnum): Likewise.
13958         (regcache::num_raw_registers): Likewise.
13959         * regcache.h (reg_buffer): New class.
13960         (regcache): Inherit reg_buffer.
13961
13962 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13963
13964         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13965         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13966
13967 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13968
13969         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13970
13971 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13972
13973         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13974         (SFILES): Remove common/*.c files.
13975         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13976         * common/common.host: Add common reference.
13977         * configure.ac: Likewise.
13978         * configure: Regenerate.
13979
13980 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13981
13982         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13983         (block_initialize_namespace): Use new.
13984         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13985         (dwarf2_free_objfile): Use delete.
13986         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13987         (copy_type_recursive): Use new.
13988         * gdb_obstack.h (allocate_on_obstack): New.
13989
13990 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13991
13992         PR gdb/22849
13993         * inferior.c (exit_inferior_1): Reset inf->control.
13994
13995 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13996
13997         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13998         declaration.
13999
14000 2018-02-14  Pedro Alves  <palves@redhat.com>
14001
14002         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14003         frame_cleanup_after_sniffer on exception.
14004
14005 2018-02-14  Tom Tromey  <tom@tromey.com>
14006
14007         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14008         const.
14009         (solib_bfd_open): Make pathname const.
14010         * solib.c (solib_bfd_open): Make pathname const.
14011         * solib-spu.c (spu_bfd_fopen): Make name const.
14012         (spu_bfd_open): Make pathname const.
14013         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14014         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14015
14016 2018-02-14  Tom Tromey  <tom@tromey.com>
14017
14018         * symfile.c (symfile_bfd_open): Update.
14019         * source.h (openp, source_full_path_of, find_and_open_source):
14020         Change argument type to unique_xmalloc_ptr.
14021         * source.c (openp): Take a unique_xmalloc_ptr.
14022         (source_full_path_of, find_and_open_source): Likewise.
14023         (open_source_file, symtab_to_fullname): Update.
14024         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14025         unique_xmalloc_ptr.
14026         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14027         (exec_file_find): Update.
14028         * psymtab.c (psymtab_to_fullname): Update.
14029         * nto-tdep.h (nto_find_and_open_solib): Update.
14030         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14031         unique_xmalloc_ptr.
14032         * exec.c (exec_file_attach): Update.
14033         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14034         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14035
14036 2018-02-14  Tom Tromey  <tom@tromey.com>
14037
14038         * solib.c: Include source.h.
14039         * nto-tdep.c: Include source.h.
14040         * mi/mi-cmd-env.c: Include source.h.
14041         * infcmd.c: Include source.h.
14042         * exec.c: Include source.h.
14043         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14044         (add_path, directory_switch, source_path, init_source_path): Move
14045         declarations...
14046         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14047         (add_path, directory_switch, source_path, init_source_path):
14048         ...here.
14049
14050 2018-02-14  Tom Tromey  <tom@tromey.com>
14051
14052         * solist.h (exec_file_find, solib_find): Return
14053         unique_xmalloc_ptr.
14054         (solib_bfd_fopen): Take a const char *.
14055         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14056         (exec_file_find, solib_find): Likewise.
14057         (solib_bfd_fopen): Do not take ownership of "pathname".
14058         (solib_bfd_open): Use unique_xmalloc_ptr.
14059         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14060         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14061         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14062         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14063
14064 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14065
14066         * ada-lang.c (name_match_type_from_name): Remove reference to
14067         ada_name_for_lookup in function's documentation.
14068         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14069
14070 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14071
14072         * defs.h (enum openp_flags): New enum.
14073         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14074         Move to enum openp_flags.
14075         (openp_flags): New enum flags.
14076         (openp): Change parameter type to openp_flags.
14077         * source.c (openp): Change parameter type to openp_flags.
14078         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14079         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14080
14081 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14082
14083         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14084         per-command.
14085
14086 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14087
14088         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14089         into...
14090         (class dwarf2_queue_guard): ...the destructor of this new class.
14091         (dw2_do_instantiate_symtab): Create instance of the new class
14092         dwarf2_queue_guard, remove cleanup.
14093
14094 2018-02-09  Tom Tromey  <tom@tromey.com>
14095
14096         * source.c (find_source_lines): Don't reference past the end of
14097         the vector.
14098
14099 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14100
14101         * remote.c (remote_btrace_maybe_reopen): Change error message.
14102         * btrace.c (btrace_enable): Likewise.
14103         (parse_xml_btrace): Likewise.
14104         (parse_xml_btrace_conf): Likewise.
14105
14106 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14107
14108         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14109         (linux_enable_pt, linux_enable_bts): Call
14110         diagnose_perf_event_open_fail.
14111
14112 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14113
14114         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14115         Remove parameter and change return type.  Update callers.  Move it.
14116         (linux_enable_bts, linux_enable_pt): Improve error message.
14117         (linux_enable_pt): Remove zero buffer size check.
14118         (linux_enable_btrace): Improve error messages.  Remove NULL return
14119         check.
14120
14121 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14122
14123         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14124         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14125         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14126         (linux_supports_pt, linux_supports_btrace): Remove.
14127         (linux_enable_bts): Call cpu_supports_bts.
14128         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14129         * remote.c (remote_supports_btrace): Remove.
14130         (init_remote_ops): Remove remote_supports_btrace.
14131         * target-delegates.c: Regenerated.
14132         * target.c (target_supports_btrace): Remove.
14133         * target.h (target_ops) <to_supports_btrace>: Remove
14134         (target_supports_btrace): Remove.
14135         * x86-linux-nat.c (x86_linux_create_target): Remove
14136         linux_supports_btrace.
14137
14138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14139
14140         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14141         btrace failed.
14142         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14143         exception and use message in own exception.
14144
14145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14146
14147         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14148         (perf_event_pt_event_type): Use gdb_file_up.
14149         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14150         scoped_fd, and scoped_mmap.
14151
14152 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14153
14154         * common/scoped_mmap.h: New.
14155         * unittests/scoped_mmap-selftest.c: New.
14156         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14157         unittests/scoped_mmap-selftest.c.
14158
14159 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14160
14161         * common/scoped_fd.h: New.
14162         * unittests/scoped_fd-selftest.c: New.
14163         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14164         unittests/scoped_fd-selftest.c.
14165
14166 2018-02-09  Tom Tromey  <tom@tromey.com>
14167
14168         * auto-load.c (auto_load_section_scripts): Use
14169         gdb::unique_xmalloc_ptr.
14170
14171 2018-02-09  Tom Tromey  <tom@tromey.com>
14172
14173         * auto-load.c (execute_script_contents): Use std::string.
14174
14175 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14176
14177         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14178         Python function, rather than a new command.
14179
14180 2018-02-08  Tom Tromey  <tom@tromey.com>
14181
14182         * solib.c (solib_find_1): Use std::string.
14183         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14184
14185 2018-02-08  Tom Tromey  <tom@tromey.com>
14186
14187         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14188
14189 2018-02-08  Tom Tromey  <tom@tromey.com>
14190
14191         * source.c (find_source_lines): Use gdb::def_vector.
14192
14193 2018-02-08  Tom Tromey  <tom@tromey.com>
14194
14195         * macrocmd.c (struct temporary_macro_definition): New.
14196         (macro_define_command): Use temporary_macro_definition.  Remove
14197         cleanups.
14198         (free_macro_definition_ptr): Remove.
14199
14200 2018-02-08  Tom Tromey  <tom@tromey.com>
14201
14202         * macroexp.c (maybe_expand): Use std::string.
14203
14204 2018-02-08  Tom Tromey  <tom@tromey.com>
14205
14206         * macroexp.c (struct macro_buffer): Add initializers for some
14207         members.
14208         (init_buffer, init_shared_buffer, free_buffer)
14209         (free_buffer_return_text): Remove.
14210         (macro_buffer): New constructors.
14211         (~macro_buffer): New destructor.
14212         (macro_buffer::set_shared): New method.
14213         (macro_buffer::resize_buffer, macro_buffer::appendc)
14214         (macro_buffer::appendmem): Now methods, not free functions.
14215         (set_token, append_tokens_without_splicing, stringify)
14216         (macro_stringify): Update.
14217         (gather_arguments): Change return type.  Remove argc_p argument,
14218         add args_ptr argument.  Use std::vector.
14219         (substitute_args): Remove argc argument.  Accept std::vector.
14220         (expand): Update.  Use std::vector.
14221         (scan, macro_expand, macro_expand_next): Update.
14222
14223 2018-02-08  Tom Tromey  <tom@tromey.com>
14224
14225         * symtab.c (default_collect_symbol_completion_matches_break_on):
14226         Use unique_xmalloc_ptr.
14227         * macroscope.h: (sal_macro_scope, user_macro_scope)
14228         (default_macro_scope): Return unique_xmalloc_ptr.
14229         * macroscope.c (sal_macro_scope, user_macro_scope)
14230         (default_macro_scope): Return unique_xmalloc_ptr.
14231         * macroexp.h (macro_expand, macro_expand_once): Return
14232         unique_xmalloc_ptr.
14233         * macroexp.c (macro_expand, macro_expand_once): Return
14234         unique_xmalloc_ptr.
14235         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14236         (info_macro_command, info_macros_command): Use
14237         unique_xmalloc_ptr.
14238         * compile/compile-c-support.c (write_macro_definitions): Use
14239         unique_xmalloc_ptr.
14240         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14241
14242 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14243
14244         * value.c (value_static_field): Assign field type instead of
14245         containing type when returning an optimized out value.
14246
14247 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14248
14249         * ft32-tdep.c (ft32_read_pc): Remove.
14250         (ft32_write_pc): Remove.
14251         (ft32_gdbarch_init): Update.
14252         * m32r-tdep.c (m32r_read_pc): Remove.
14253         (m32r_gdbarch_init): Update.
14254         * mep-tdep.c (mep_read_pc): Remove.
14255         (mep_gdbarch_init): Update.
14256         * microblaze-tdep.c (microblaze_write_pc): Remove.
14257         (microblaze_gdbarch_init): Update.
14258         * mn10300-tdep.c (mn10300_read_pc): Remove.
14259         (mn10300_write_pc): Remove.
14260         (mn10300_gdbarch_init): Update.
14261         * moxie-tdep.c (moxie_read_pc): Remove.
14262         (moxie_write_pc): Remove.
14263         (moxie_gdbarch_init): Update.
14264
14265 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14266
14267         * expprint.c (print_subexp_standard): Handle
14268         OP_F77_UNDETERMINED_ARGLIST.
14269         (dump_subexp_body_standard): Likewise.
14270
14271 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14272
14273         * target-descriptions.c (tdesc_element_visitor) Add empty
14274         implementations.
14275         (tdesc_type): Move make_gdb_type from here.
14276         (tdesc_type_builtin): Likewise.
14277         (tdesc_type_vector): Likewise.
14278         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14279         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14280         (make_gdb_type_union): Likewise.
14281         (make_gdb_type_flags): Likewise.
14282         (make_gdb_type_enum): Likewise.
14283         (make_gdb_type): New function.
14284         (tdesc_register_type): Use static make_gdb_type.
14285
14286 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14287
14288         * infcmd.c (default_print_one_register_info): Align natural-format
14289         column values consistently one under another.
14290         (pad_to_column): New function.
14291
14292 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14293
14294         * dwarf2read.c (dwarf2_physname): Move commment.
14295
14296 2018-02-01  Leszek Swirski  <leszeks@google.com>
14297
14298         * varobj.c (varobj_formatted_print_options): Allow recursive
14299         pretty printing if pretty printing is enabled.
14300
14301 2018-02-01  Leszek Swirski  <leszeks@google.com>
14302
14303         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14304         names after a structop as a filename.
14305
14306 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14307
14308         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14309         (arm_record_coproc_data_proc): Likewise.
14310
14311 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14312
14313         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14314
14315 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14316
14317         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14318         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14319
14320 2018-01-31  Pedro Alves  <palves@redhat.com>
14321
14322         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14323         * inflow.c (child_terminal_save_inferior): Wrap reference to
14324         tcgetpgrp in HAVE_TERMIOS_H.
14325         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14326         _WIN32.
14327         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14328         always iterate over all inferiors.
14329         (gdbsim_cntrl_c): Adjust.
14330         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14331
14332 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14333
14334         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14335         index type is objfile-owned if the element type is as well.
14336
14337 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14338
14339         GDB 8.1 released.
14340
14341 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14342
14343         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14344         "features/s390x-linux64.c".
14345         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14346         s390_linux32 and s390x_linux64.
14347         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14348         default tdesc.
14349         * s390-tdep.c: Include "features/s390-linux32.c" and
14350         "features/s390x-linux64.c".
14351         (s390_tdesc_valid): Add check for tdesc_has_registers.
14352         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14353         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14354         tdesc_s390x_linux64.
14355         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14356         tdesc_s390x_linux64 to...
14357         * s390-tdep.h: ...here.
14358
14359 2018-01-30  Pedro Alves  <palves@redhat.com>
14360
14361         PR gdb/13211
14362         * config.in, configure: Regenerate.
14363         * configure.ac: Check for getpgid.
14364         * go32-nat.c (go32_pass_ctrlc): New.
14365         (go32_target): Install it.
14366         * inf-child.c (inf_child_target): Install
14367         child_terminal_save_inferior, child_pass_ctrlc and
14368         child_interrupt.
14369         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14370         (inf_ptrace_target): No longer install it.
14371         * infcmd.c (interrupt_target_1): Adjust.
14372         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14373         (child_interrupt): Declare.
14374         (inferior::terminal_state): New.
14375         * inflow.c (struct terminal_info): Update comments.
14376         (inferior_process_group): Delete.
14377         (terminal_is_ours): Delete.
14378         (gdb_tty_state): New.
14379         (child_terminal_init): Adjust.
14380         (is_gdb_terminal, sharing_input_terminal_1)
14381         (sharing_input_terminal): New functions.
14382         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14383         Set the process's actual process group in the foreground if
14384         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14385         mark terminal as the inferior's if not sharing GDB's terminal.
14386         Don't check attach_flag.
14387         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14388         pass down a target_terminal_state.
14389         (child_terminal_save_inferior): New, factored out from ...
14390         (child_terminal_ours_1): ... this.  Handle
14391         target_terminal_state::is_ours_for_output.
14392         (child_interrupt, child_pass_ctrlc): New.
14393         (inflow_inferior_exit): Clear the inferior's terminal_state.
14394         (copy_terminal_info): Copy the inferior's terminal state.
14395         (_initialize_inflow): Remove reference to terminal_is_ours.
14396         * inflow.h (inferior_process_group): Delete.
14397         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14398         * procfs.c (procfs_target): Don't install procfs_interrupt.
14399         (procfs_interrupt): Delete.
14400         * remote.c (remote_serial_quit_handler): Adjust.
14401         (remote_interrupt): Remove ptid parameter.  Adjust.
14402         * target-delegates.c: Regenerate.
14403         * target.c: Include "terminal.h".
14404         (target_terminal::terminal_state): Rename to ...
14405         (target_terminal::m_terminal_state): ... this.
14406         (target_terminal::init): Adjust.
14407         (target_terminal::inferior): Adjust to per-inferior
14408         terminal_state.
14409         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14410         (target_terminal::ours, target_terminal::ours_for_output): Use
14411         target_terminal_is_ours_kind.
14412         (target_interrupt): Remove ptid parameter.  Adjust.
14413         (default_target_pass_ctrlc): Adjust.
14414         * target.h (target_ops::to_terminal_save_inferior): New field.
14415         (target_ops::to_interrupt): Remove ptid_t parameter.
14416         (target_interrupt): Remove ptid_t parameter.  Update comment.
14417         (target_pass_ctrlc): Update comment.
14418         * target/target.h (target_terminal_state): New scoped enum,
14419         factored out of ...
14420         (target_terminal::terminal_state): ... here.
14421         (target_terminal::inferior): Update comments.
14422         (target_terminal::restore_inferior): New.
14423         (target_terminal::is_inferior, target_terminal::is_ours)
14424         (target_terminal::is_ours_for_output): Adjust.
14425         (target_terminal::scoped_restore_terminal_state): Adjust to
14426         rename, and call restore_inferior() instead of inferior().
14427         (target_terminal::scoped_restore_terminal_state::m_state): Change
14428         type.
14429         (target_terminal::terminal_state): Rename to ...
14430         (target_terminal::m_terminal_state): ... this and change type.
14431
14432 2018-01-30  Pedro Alves  <palves@redhat.com>
14433
14434         * linux-nat.c (wait_for_signal): New function.
14435         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14436         directly.
14437         (async_terminal_is_ours)
14438         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14439         (linux_nat_add_target): Don't override
14440         to_terminal_inferior/to_terminal_ours.
14441
14442 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14443
14444         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14445
14446 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14447
14448         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14449         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14450         dwarf2_per_objfile_free here.
14451         (dwarf2_per_objfile_free): Remove.
14452         (_initialize_dwarf2_read): Don't register
14453         dwarf2_per_objfile_free as a registry cleanup.
14454
14455 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14456
14457         Avoid compilation errors in MinGW native builds
14458
14459         The error is triggered by including python-internal.h, and the
14460         error message is:
14461
14462              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14463                       from build-gnulib/import/math.h:27,
14464                       from d:/usr/Python26/include/pyport.h:235,
14465                       from d:/usr/Python26/include/Python.h:58,
14466                       from python/python-internal.h:94,
14467                       from python/py-arch.c:24:
14468              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14469         using ::hypot;
14470                 ^~~~~
14471
14472         This happens because Python headers define 'hypot' to expand t
14473         '_hypot' in the Windows builds.
14474         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14475         'hypoth'.  This avoids a compilation error.
14476
14477 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14478
14479         * MAINTAINERS (Write After Approval): Fix ordering.
14480
14481 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14482
14483         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14484
14485 2018-01-26  Alan Modra  <amodra@gmail.com>
14486
14487         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14488         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14489         Remove nop.  Make const.  Comment.
14490         (powerpc32_plt_stub_so_2): New.
14491         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14492         Correct count.  Update uses.
14493         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14494         Move common code reading PLT entry word.  Correct
14495         powerpc32_plt_stub PLT address calculation.
14496         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14497         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14498         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14499         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14500         (ppc64_standard_linkage8): Likewise.
14501         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14502         Correct insns description.
14503         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14504
14505 2018-01-24  Pedro Alves  <palves@redhat.com>
14506
14507         GCC PR libstdc++/83906
14508         * gdbtypes.c (operator==(const dynamic_prop &,
14509         const dynamic_prop &)): New.
14510         (operator==(const range_bounds &, const range_bounds &)): New.
14511         (check_types_equal): Use them instead of memcmp.
14512         * gdbtypes.h (operator==(const dynamic_prop &,
14513         const dynamic_prop &)): Declare.
14514         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14515         (operator==(const range_bounds &, const range_bounds &)): Declare.
14516         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14517
14518 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14519
14520         * s390-linux-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): Move to s390-tdep.c.
14525         (s390_linux_init_abi_any): Adjust.
14526         * s390-tdep.c (s390_record_address_mask)
14527         (s390_record_calc_disp_common, s390_record_calc_disp)
14528         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14529         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14530         (s390_process_record): Moved from s390-linux-tdep.c
14531         (s390_gdbarch_init): Adjust.
14532
14533 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14534
14535         * s390-linux-nat.c (s390-tdep.h): New include.
14536         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14537         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14538         (ALLDEPFILES): Add s390-tdep.c.
14539         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14540         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14541         * s390-tdep.h: ...this.  New file.
14542         * s390-linux-tdep.c (s390-tdep.h): New include.
14543         (_initialize_s390_tdep): Rename to...
14544         (_initialize_s390_linux_tdep): ...this and adjust.
14545         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14546         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14547         s390-tdep.h.
14548         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14549         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14550         (s390_is_partial_instruction, s390_software_single_step)
14551         (is_non_branch_ril, s390_displaced_step_copy_insn)
14552         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14553         (s390_prologue_data, s390_addr, s390_store, s390_load)
14554         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14555         (s390_register_call_saved, s390_guess_tracepoint_registers)
14556         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14557         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14558         (s390_pseudo_register_name, s390_pseudo_register_type)
14559         (s390_pseudo_register_read, s390_pseudo_register_write)
14560         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14561         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14562         (s390_addr_bits_remove, s390_address_class_type_flags)
14563         (s390_address_class_type_flags_to_name)
14564         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14565         (s390_function_arg_float, s390_function_arg_vector)
14566         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14567         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14568         (s390_frame_align, s390_register_return_value, s390_return_value)
14569         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14570         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14571         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14572         (s390_trad_frame_prev_register, s390_unwind_cache)
14573         (s390_prologue_frame_unwind_cache)
14574         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14575         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14576         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14577         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14578         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14579         (s390_frame_base_address, s390_local_base_address)
14580         (s390_frame_base, s390_gcc_target_options)
14581         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14582         (s390_validate_reg_range, s390_tdesc_valid)
14583         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14584         * s390-tdep.c: ...this.  New file.
14585
14586 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14587
14588         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14589         (s390_process_record, s390_gdbarch_tdep_alloc)
14590         (s390_linux_init_abi_any): Use/set new hook.
14591
14592 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14593
14594         * s390-linux-tdep.c (osabi.h): New include.
14595         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14596         (s390_linux_init_abi_any): New functions.
14597         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14598
14599 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14600
14601         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14602         tdesc_has_registers check
14603
14604 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14605
14606         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14607         (s390_validate_reg_range): New macro.
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) <tdesc>: New field.
14613         (s390_gdbarch_tdep_alloc): Adjust.
14614         (s390_gdbarch_init): Adjust.
14615
14616 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14617
14618         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14619         <have_tdb>: Change type to bool.
14620         (s390_gdbarch_tdep_alloc): Adjust.
14621         (s390_gdbarch_init): Adjust.
14622
14623 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14624
14625         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14626         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14627         (s390_gdbarch_tdep_alloc): New function.
14628         (s390_gdbarch_init): Allocate tdep at start and use its fields
14629         instead of separate variables.
14630
14631 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14632
14633         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14634         when looking for cached gdbarch and add comment for remaining.
14635
14636 2018-01-22  Pedro Alves  <palves@redhat.com>
14637             Sergio Durigan Junior  <sergiodj@redhat.com>
14638
14639         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14640         case.
14641
14642 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14643
14644         * MAINTAINERS: Update my company e-mail address.
14645
14646 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14647
14648         * regcache.c (cooked_write_test): New function.
14649         (_initialize_regcache): Register the test.
14650
14651 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14652
14653         * ia64-tdep.c (ia64_pseudo_register_read): Call
14654         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14655         * m32c-tdep.c (m32c_cat_read): Likewise.
14656         (m32c_r3r2r1r0_read): Likewise.
14657         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14658         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14659
14660 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14661
14662         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14663         method raw_read instead of regcache_raw_read.
14664         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14665         * arm-tdep.c (arm_neon_quad_read): Likewise.
14666         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14667         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14668         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14669         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14670         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14671         (i386_pseudo_register_read_into_value): Likewise.
14672         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14673         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14674         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14675         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14676         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14677         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14678         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14679         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14680         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14681
14682 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14683
14684         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14685         * configure.tgt: Remove target mt.
14686         * mt-tdep.c: Remove.
14687         * regcache.c (cooked_read_test): Remove the check for mt.
14688
14689 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14690
14691         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14692         instead of gdbarch_pseudo_register_read_value.
14693
14694 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14695
14696         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14697         language is Ada.
14698
14699 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14700
14701         * linespec.c (create_sals_line_offset): Remove code that preserved
14702         the symtab_and_line's line number.
14703
14704 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14705
14706         * varobj.c (varobj_create): Don't set valid_block when creating a
14707         floating varobj.
14708
14709 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14710
14711         * varobj.c (varobj_create): Remove out of date comment.
14712
14713 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14714
14715         PR mi/20395
14716         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14717         updating innermost block.
14718         * parse.c (innermost_block_tracker::update): Take extra type
14719         parameter, and check types match before updating innermost block.
14720         (write_dollar_variable): Update innermost block for registers.
14721         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14722         (innermost_block_tracker::innermost_block_tracker): Initialise
14723         m_types member.
14724         (innermost_block_tracker::reset): Take type parameter.
14725         (innermost_block_tracker::update): Take type parameter, and pass
14726         type through as needed.
14727         (innermost_block_tracker::m_types): New member.
14728         * varobj.c (varobj_create): Pass type when reseting innermost
14729         block.
14730
14731 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14732
14733         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14734         * ada-lang.c (resolve_subexp): Likewise.
14735         * breakpoint.c (set_breakpoint_condition) Likewise.
14736         (watch_command_1) Likewise.
14737         * c-exp.y (variable): Likewise.
14738         * d-exp.y (PrimaryExpression): Likewise.
14739         * f-exp.y (variable): Likewise.
14740         * go-exp.y (variable): Likewise.
14741         * m2-exp.y (variable): Likewise.
14742         * objfiles.c (objfile::~objfile): Likewise.
14743         * p-exp.y (variable): Likewise.
14744         * parse.c (innermost_block): Change type.
14745         * parser-defs.h (class innermost_block_tracker): New.
14746         (innermost_block): Change to innermost_block_tracker.
14747         * printcmd.c (display_command): Switch to innermost_block API.
14748         (do_one_display): Likewise.
14749         * rust-exp.y (do_one_display): Likewise.
14750         * symfile.c (clear_symtab_users): Likewise.
14751         * varobj.c (varobj_create): Switch to innermost_block API, replace
14752         use of innermost_block with block stored on varobj object.
14753
14754 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14755
14756         * expression.h (innermost_block): Remove declaration.
14757         * varobj.c: Add 'parser-defs.h' include.
14758
14759 2018-01-19  Tom Tromey  <tom@tromey.com>
14760
14761         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14762         symbols in the static and global blocks.
14763
14764 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14765
14766         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14767         gdb_ptrace.h, and move including gdb_wait.h ...
14768         * nat/linux-ptrace.h: ... to here.
14769
14770 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14771
14772         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14773         inf_ptrace_detach_success.
14774         (inf_ptrace_detach_success): Add inferior parameter, use it
14775         instead of inferior_ptid, pass it to detach_inferior.
14776         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14777         parameter.
14778         * inferior.c (detach_inferior): Add overload that takes an
14779         inferior object.
14780         * inferior.h (detach_inferior): Likewise.
14781         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14782         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14783         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14784
14785 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14786
14787         * target.h (struct target_ops) <to_detach>: Add inferior
14788         parameter.
14789         (target_detach): Likewise.
14790         * target.c (dispose_inferior): Pass inferior down.
14791         (target_detach): Pass inferior down.  Assert that it is equal to
14792         the current inferior.
14793         * aix-thread.c (aix_thread_detach): Pass inferior down.
14794         * corefile.c (core_file_command): Pass current_inferior() down.
14795         * corelow.c (core_detach): Add inferior parameter.
14796         * darwin-nat.c (darwin_detach): Likewise.
14797         * gnu-nat.c (gnu_detach): Likewise.
14798         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14799         * infcmd.c (detach_command): Pass current_inferior() down to
14800         target_detach.
14801         * infrun.c (follow_fork_inferior): Pass parent_inf to
14802         target_detach.
14803         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14804         target_detach.
14805         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14806         * linux-thread-db.c (thread_db_detach): Likewise.
14807         * nto-procfs.c (procfs_detach): Likewise.
14808         * procfs.c (procfs_detach): Likewise.
14809         * record.c (record_detach): Likewise.
14810         * record.h (struct inferior): Forward-declare.
14811         (record_detach): Add inferior parameter.
14812         * remote-sim.c (gdbsim_detach): Likewise.
14813         * remote.c (remote_detach_1): Likewise.
14814         (remote_detach): Likewise.
14815         (extended_remote_detach): Likewise.
14816         * sol-thread.c (sol_thread_detach): Likewise.
14817         * target-debug.h (target_debug_print_inferior_p): New macro.
14818         * target-delegates.c: Re-generate.
14819         * top.c (kill_or_detach): Pass inferior down to target_detach.
14820         * windows-nat.c (windows_detach): Add inferior parameter.
14821
14822 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14823
14824         * target.h (struct target_ops) <to_detach>: Remove args
14825         parameter.
14826         (target_detach): Likewise.
14827         * target.c (dispose_inferior): Adjust.
14828         (target_detach): Remove args parameter, adjust.
14829         * aix-thread.c (aix_thread_detach): Adjust.
14830         * corefile.c (core_file_command): Adjust.
14831         * corelow.c (core_detach): Adjust.
14832         * darwin-nat.c (darwin_detach): Adjust.
14833         * gnu-nat.c (gnu_detach): Adjust.
14834         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14835         * infcmd.c (detach_command): Adjust
14836         * infrun.c (follow_fork_inferior): Adjust.
14837         (handle_vfork_child_exec_or_exit): Adjust.
14838         * linux-fork.c (linux_fork_detach): Remove args parameter.
14839         * linux-fork.h (linux_fork_detach): Likewise.
14840         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14841         * linux-thread-db.c (thread_db_detach): Likewise.
14842         * nto-procfs.c (procfs_detach): Likewise.
14843         * procfs.c (procfs_detach): Likewise.
14844         (do_detach): Remove signo parameter.
14845         * record.c (record_detach): Remove args parameter.
14846         * record.h (record_detach): Likewise.
14847         * remote-sim.c (gdbsim_detach): Likewise.
14848         * remote.c (remote_detach_1): Likewise.
14849         (remote_detach): Likewise.
14850         (extended_remote_detach): Likewise.
14851         * sol-thread.c (sol_thread_detach): Likewise.
14852         * target-delegates.c: Re-generate.
14853         * top.c (struct qt_args) <args>: Remove field.
14854         (kill_or_detach): Don't pass args.
14855         (quit_force): Don't set args.
14856         * windows-nat.c (windows_detach): Remove args parameter.
14857
14858 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14859
14860         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14861         (arm_linux_init_abi): Install it.
14862
14863 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14864
14865         * osabi.c (gdb_osabi_names): Extend the regexp for
14866         arm-linux-gnueabihf.
14867
14868 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14869
14870         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14871         m_abbrevs.
14872         (abbrev_table::add_abbrev): Update.
14873         (abbrev_table::lookup_abbrev): Update.
14874
14875 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14876
14877         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14878
14879 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14880
14881         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14882         to "std::string".
14883
14884 2018-01-17  Tom Tromey  <tom@tromey.com>
14885
14886         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14887
14888 2018-01-17  Tom Tromey  <tom@tromey.com>
14889
14890         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14891         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14892         (create_array_type_with_stride): Update.
14893         * dwarf2read.c (set_die_type): Update.
14894
14895 2018-01-17  Tom Tromey  <tom@tromey.com>
14896
14897         * dwarf2read.c (delayed_method_info): Remove typedef.
14898         (dwarf2_cu::method_info): Now a std::vector.
14899         (add_to_method_list): Update.
14900         (free_delayed_list): Remove.
14901         (compute_delayed_physnames): Update.
14902         (process_full_comp_unit, process_full_type_unit): Clear the method
14903         list.  Remove cleanups.
14904         (psymtab_include_file_name): Add name_holder parameter.  Use
14905         unique_xmalloc_ptr.
14906         (dwarf_decode_lines): Update.
14907
14908 2018-01-17  Tom Tromey  <tom@tromey.com>
14909             Simon Marchi  <simon.marchi@ericsson.com>
14910
14911         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14912         (dwarf2_per_objfile::free_cached_comp_units)
14913         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14914         (init_cutu_and_read_dies_no_follow): Update.
14915         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14916         (dwarf2_cu::~dwarf2_cu): New.
14917         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14918         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14919
14920 2018-01-17  Tom Tromey  <tom@tromey.com>
14921             Simon Marchi  <simon.marchi@ericsson.com>
14922
14923         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14924         (struct die_reader_specs) <abbrev_table>: New member.
14925         (struct abbrev_table): Add constructor.
14926         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14927         <abbrev_obstack>: Now an auto_obstack.
14928         (abbrev_table_up): New typedef.
14929         (init_cu_die_reader): Add abbrev_table parameter.
14930         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14931         Add result_dwo_abbrev_table.
14932         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14933         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14934         Update.
14935         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14936         parameter.
14937         (skip_children): Update.
14938         (abbrev_table::alloc_abbrev): Rename from
14939         abbrev_table_alloc_abbrev.
14940         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14941         (abbrev_table::lookup_abbrev): Rename from
14942         abbrev_table_lookup_abbrev.
14943         (abbrev_table_read_table): Return abbrev_table_up.
14944         (abbrev_table_free, abbrev_table_free_cleanup)
14945         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14946         (load_partial_dies): Update.
14947
14948 2018-01-17  Tom Tromey  <tom@tromey.com>
14949
14950         * dwarf2read.c (dwarf2_compute_name): Update comment.
14951         (read_func_scope, read_variable): Update.
14952         (new_symbol): Remove.
14953         (new_symbol_full): Rename to new_symbol.
14954
14955 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14956
14957         PR gdb/16577
14958         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14959         a warning instead of throwing an error, set section size to 0 and return
14960         NULL.
14961         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14962
14963 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14964
14965         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14966         std::string.
14967         (linux_ptrace_attach_fail_reason_string): Likewise.
14968         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14969         Likewise.
14970         (linux_ptrace_attach_fail_reason_string): Likewise.
14971         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14972
14973 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14974
14975         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14976
14977 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14978
14979         PR gdb/21559
14980         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14981         checking for fs_base/gs_base fields in struct user_regs_struct.
14982         * configure: Regenerate.
14983
14984 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14985
14986         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14987         function.
14988         (aarch64_linux_init_abi): Install it to gdbarch hook
14989         gcc_target_options.
14990
14991 2018-01-15  Pedro Alves  <palves@redhat.com>
14992
14993         * common/signals-state-save-restore.c
14994         (save_original_signals_state): Fix typos.
14995
14996 2017-01-12  Tom Tromey  <tom@tromey.com>
14997             Sergio Durigan Junior  <sergiodj@redhat.com>
14998
14999         * Makefile.in (install-only): Install gdb-add-index.
15000
15001 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15002
15003         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15004
15005 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15006
15007         * infrun.c (keep_going_pass_signal): Clear step-over info when
15008         insert_breakpoints fails.
15009
15010 2018-01-11  Pedro Alves  <palves@redhat.com>
15011
15012         PR gdb/22583
15013         * infrun.c (resume): Rename to ...
15014         (resume_1): ... this.
15015         (resume): Reimplement as wrapper around resume_1.
15016
15017 2018-01-11  Pedro Alves  <palves@redhat.com>
15018
15019         PR remote/22597
15020         * remote.c (remote_parse_stop_reply): Default to the last-set
15021         general thread instead of to 'magic_null_ptid'.
15022
15023 2018-01-10  Pedro Alves  <palves@redhat.com>
15024
15025         * language.h (language_get_symbol_name_matcher): Rename ...
15026         (get_symbol_name_matcher): ... this.
15027         * language.c (language_get_symbol_name_matcher): Ditto.
15028         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15029         callers adjusted.
15030
15031 2018-01-10  Pedro Alves  <palves@redhat.com>
15032
15033         PR gdb/22670
15034         * dwarf2read.c
15035         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15036         Adjust to use language_get_symbol_name_matcher instead of
15037         language_defn::la_get_symbol_name_matcher.
15038         * language.c (language_get_symbol_name_matcher): If in Ada mode
15039         and the lookup name is a verbatim match, return Ada's matcher.
15040         * language.h (language_get_symbol_name_matcher): Adjust comment.
15041         (ada_lookup_name_info::verbatim_p):: New method.
15042
15043 2018-01-10  Pedro Alves  <palves@redhat.com>
15044
15045         PR gdb/22670
15046         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15047         minsym's language is language_auto or language_cplus, pass down
15048         language_ada instead.
15049         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15050
15051 2018-01-10  Pedro Alves  <palves@redhat.com>
15052
15053         PR gdb/22670
15054         * minsyms.c (linkage_name_str): New function.
15055         (iterate_over_minimal_symbols): Use it.
15056
15057 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15058
15059         * NEWS: Document that 'info proc' now works on FreeBSD.
15060
15061 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15062
15063         * configure.ac: Check for kinfo_getfile in libutil.
15064         * configure: Regenerate.
15065         * config.in: Regenerate.
15066         * fbsd-nat.c: Include "fbsd-tdep.h".
15067         (fbsd_fetch_cmdline): New.
15068         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15069         rather than calling error.
15070         (fbsd_info_proc): New.
15071         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15072         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15073         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15074
15075 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15076
15077         * fbsd-nat.c (struct free_deleter): Remove.
15078         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15079
15080 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15081
15082         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15083         NULL for an empty pathname.
15084
15085 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15086
15087         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15088         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15089         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15090         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15091         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15092         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15093         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15094         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15095         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15096         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15097         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15098         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15099         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15100         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15101         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15102
15103 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15104
15105         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15106         (gnu_xfer_auxv): New function.
15107         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15108         TARGET_OBJECT_AUXV.
15109
15110 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15111             Simon Marchi  <simon.marchi@ericsson.com>
15112
15113         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15114         common/selftest.c.
15115         (COMMON_OBS): Remove selftest.o.
15116         * configure.ac: Append selftest-arch.c and common/selftest.c to
15117         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15118         * configure: Re-generated.
15119         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15120         GDB_SELF_TEST.
15121         (maintenance_info_selftests): Likewise.
15122
15123 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15124
15125         * ada-valprint.c (val_print_packed_array_elements): Use
15126         proper number of elements when printing an array indexed
15127         by an enumeration type.
15128
15129 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15130
15131         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15132         (dw2_get_file_names_reader): Adjust.
15133         (lookup_dwo_signatured_type): Adjust.
15134         (lookup_dwp_signatured_type): Adjust.
15135         (lookup_signatured_type): Adjust.
15136         (create_type_unit_group): Adjust.
15137         (get_type_unit_group): Adjust.
15138         (process_psymtab_comp_unit_reader): Adjust.
15139         (build_type_psymtabs_reader): Adjust.
15140         (scan_partial_symbols): Adjust.
15141         (add_partial_symbol): Adjust.
15142         (add_partial_subprogram): Adjust.
15143         (peek_die_abbrev): Adjust.
15144         (fixup_go_packaging): Adjust.
15145         (process_imported_unit_die): Adjust.
15146         (dwarf2_compute_name): Adjust.
15147         (dwarf2_physname): Adjust.
15148         (read_import_statement): Adjust.
15149         (handle_DW_AT_stmt_list): Adjust.
15150         (read_file_scope): Adjust.
15151         (read_func_scope): Adjust.
15152         (read_lexical_block_scope): Adjust.
15153         (read_call_site_scope): Adjust.
15154         (read_variable): Adjust.
15155         (dwarf2_rnglists_process): Adjust.
15156         (dwarf2_ranges_process): Adjust.
15157         (dwarf2_ranges_read): Adjust.
15158         (dwarf2_get_pc_bounds): Adjust.
15159         (dwarf2_record_block_ranges): Adjust.
15160         (dwarf2_add_field): Adjust.
15161         (dwarf2_add_member_fn): Adjust.
15162         (read_structure_type): Adjust.
15163         (process_structure_scope): Adjust.
15164         (read_enumeration_type): Adjust.
15165         (read_array_type): Adjust.
15166         (mark_common_block_symbol_computed): Adjust.
15167         (read_common_block): Adjust.
15168         (read_namespace_type): Adjust.
15169         (read_namespace): Adjust.
15170         (read_module_type): Adjust.
15171         (read_tag_pointer_type): Adjust.
15172         (read_tag_ptr_to_member_type): Adjust.
15173         (read_tag_string_type): Adjust.
15174         (read_subroutine_type): Adjust.
15175         (read_typedef): Adjust.
15176         (read_base_type): Adjust.
15177         (attr_to_dynamic_prop): Adjust.
15178         (read_subrange_type): Adjust.
15179         (read_unspecified_type): Adjust.
15180         (dwarf2_read_abbrevs): Adjust.
15181         (load_partial_dies): Adjust.
15182         (read_partial_die): Adjust.
15183         (find_partial_die): Adjust.
15184         (guess_partial_die_structure_name): Adjust.
15185         (fixup_partial_die): Adjust.
15186         (read_attribute_value): Adjust.
15187         (read_addr_index): Adjust.
15188         (read_addr_index_from_leb128): Adjust.
15189         (read_str_index): Adjust.
15190         (dwarf2_string_attr): Adjust.
15191         (get_debug_line_section): Adjust.
15192         (dwarf_decode_line_header): Adjust.
15193         (lnp_state_machine::check_line_address): Adjust.
15194         (dwarf_decode_lines_1): Adjust.
15195         (dwarf_decode_lines): Adjust.
15196         (dwarf2_start_symtab): Adjust.
15197         (var_decode_location): Adjust.
15198         (new_symbol_full): Adjust.
15199         (dwarf2_const_value_data): Adjust.
15200         (dwarf2_const_value_attr): Adjust.
15201         (dwarf2_const_value): Adjust.
15202         (die_type): Adjust.
15203         (die_containing_type): Adjust.
15204         (build_error_marker_type): Adjust.
15205         (lookup_die_type): Adjust.
15206         (guess_full_die_structure_name): Adjust.
15207         (anonymous_struct_prefix): Adjust.
15208         (determine_prefix): Adjust.
15209         (dwarf2_name): Adjust.
15210         (follow_die_ref_or_sig): Adjust.
15211         (follow_die_offset): Adjust.
15212         (follow_die_ref): Adjust.
15213         (follow_die_sig_1): Adjust.
15214         (follow_die_sig): Adjust.
15215         (get_signatured_type): Adjust.
15216         (get_DW_AT_signature_type): Adjust.
15217         (decode_locdesc): Adjust.
15218         (dwarf_decode_macros): Adjust.
15219         (cu_debug_loc_section): Adjust.
15220         (fill_in_loclist_baton): Adjust.
15221         (dwarf2_symbol_mark_computed): Adjust.
15222         (init_one_comp_unit): Don't assign
15223         dwarf2_cu::dwarf2_per_objfile.
15224         (set_die_type): Adjust.
15225
15226 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15227
15228         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15229         <dwarf2_per_objfile>: New field.
15230         (dwarf2_per_objfile): Remove global.
15231         (get_dwarf2_per_objfile): New function.
15232         (set_dwarf2_per_objfile): New function.
15233         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15234         dwarf2_per_objfile.
15235         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15236         (read_abbrev_offset): Likewise.
15237         (read_indirect_string): Likewise.
15238         (read_indirect_line_string): Likewise.
15239         (read_indirect_string_at_offset): Likewise.
15240         (read_indirect_string_from_dwz): Likewise.
15241         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15242         dwarf2_per_objfile.
15243         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15244         (create_all_comp_units): Change objfile parameter to
15245         dwarf2_per_objfile.
15246         (create_all_type_units): Likewise.
15247         (process_queue): Add dwarf2_per_objfile parameter.
15248         (read_and_check_comp_unit_head): Likewise.
15249         (lookup_dwo_unit_in_dwp): Likewise.
15250         (get_dwp_file): Likewise.
15251         (process_cu_includes): Likewise.
15252         (struct free_dwo_file_cleanup_data): New struct.
15253         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15254         set_dwarf2_per_objfile.
15255         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15256         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15257         context, adjust calls.
15258         (dw2_instantiate_symtab): Likewise.
15259         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15260         (dw2_get_cu): Likewise.
15261         (create_cu_from_index_list): Change objfile parameter to
15262         dwarf2_per_objfile.
15263         (create_cus_from_index_list): Get dwarf2_per_objfile from
15264         context, adjust calls.
15265         (create_cus_from_index): Likewise.
15266         (create_signatured_type_table_from_index): Change objfile
15267         parameter to dwarf2_per_objfile.
15268         (create_signatured_type_table_from_debug_names): Change objfile
15269         parameter to dwarf2_per_objfile.
15270         (create_addrmap_from_index): Likewise.
15271         (create_addrmap_from_aranges): Likewise.
15272         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15273         (dw2_setup): Remove.
15274         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15275         context.
15276         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15277         get_dwarf2_per_objfile.
15278         (dw2_forget_cached_source_info): Likewise.
15279         (dw2_map_symtabs_matching_filename): Likewise.
15280         (struct dw2_symtab_iterator) <index>: Remove.
15281         <dwarf2_per_objfile>: New field.
15282         (dw2_symtab_iter_init): Replace index parameter with
15283         dwarf2_per_objfile.
15284         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15285         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15286         (dw2_print_stats): Likewise.
15287         (dw2_dump): Likewise.
15288         (dw2_expand_symtabs_for_function): Likewise.
15289         (dw2_expand_all_symtabs): Likewise.
15290         (dw2_expand_symtabs_with_fullname): Likewise.
15291         (dw2_expand_marked_cus): Replace index and objfile parameters
15292         with dwarf2_per_objfile.
15293         (dw_expand_symtabs_matching_file_matcher): Add
15294         dwarf2_per_objfile parameter and adjust calls.
15295         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15296         adjust calls.
15297         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15298         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15299         adjust calls.
15300         (create_cus_from_debug_names_list): Replace objfile parameter
15301         with dwarf2_per_objfile and adjust calls.
15302         (create_cus_from_debug_names): Likewise.
15303         (dwarf2_read_debug_names): Likewise.
15304         (mapped_debug_names::namei_to_name): Adjust call.
15305         (dw2_debug_names_iterator::next): Likewise.
15306         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15307         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15308         (dw2_debug_names_dump): Likewise.
15309         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15310         (dw2_debug_names_expand_symtabs_matching): Likewise.
15311         (dwarf2_initialize_objfile): Likewise.
15312         (dwarf2_build_psymtabs): Likewise.
15313         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15314         this_cu.
15315         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15316         (read_and_check_comp_unit_head): Likewise.
15317         (read_abbrev_offset): Likewise.
15318         (create_debug_type_hash_table): Likewise.
15319         (create_debug_types_hash_table): Likewise.
15320         (create_all_type_units): Replace objfile parameter with
15321         dwarf2_per_objfile.
15322         (add_type_unit): Add dwarf2_per_objfile parameter.
15323         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15324         with dwarf2_per_objfile.
15325         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15326         (lookup_dwp_signatured_type): Likewise.
15327         (lookup_signatured_type): Likewise.
15328         (read_cutu_die_from_dwo): Likewise.
15329         (init_tu_and_read_dwo_dies): Likewise.
15330         (init_cutu_and_read_dies): Likewise.
15331         (init_cutu_and_read_dies_no_follow): Likewise.
15332         (allocate_type_unit_groups_table): Add objfile parameter.
15333         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15334         (get_type_unit_group): Likewise.
15335         (process_psymtab_comp_unit): Update call.
15336         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15337         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15338         (print_tu_stats): Likewise.
15339         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15340         in void* parameter.
15341         (build_type_psymtabs): Change objfile parameter to
15342         dwarf2_per_objfile.
15343         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15344         passed in void* parameter.
15345         (process_skeletonless_type_units): Change objfile parameter to
15346         dwarf2_per_objfile.
15347         (set_partial_user): Likewise.
15348         (dwarf2_build_psymtabs_hard): Likewise.
15349         (read_comp_units_from_section): Likewise.
15350         (create_all_comp_units): Likewise.
15351         (scan_partial_symbols): Update calls.
15352         (add_partial_symbol): Likewise.
15353         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15354         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15355         (process_queue): Add dwarf2_per_objfile parameter.
15356         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15357         (compute_compunit_symtab_includes): Likewise.
15358         (process_cu_includes): Add dwarf2_per_objfile parameter.
15359         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15360         (process_full_type_unit): Likewise.
15361         (process_imported_unit_die): Update call.
15362         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15363         (read_file_scope): Likewise.
15364         (allocate_dwo_file_hash_table): Add objfile parameter.
15365         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15366         (create_cus_hash_table): Likewise.
15367         (create_dwp_hash_table): Likewise.
15368         (create_dwo_unit_in_dwp_v1): Likewise.
15369         (create_dwp_v2_section): Likewise.
15370         (create_dwo_unit_in_dwp_v2): Likewise.
15371         (lookup_dwo_unit_in_dwp): Likewise.
15372         (try_open_dwop_file): Likewise.
15373         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15374         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15375         cleanup to include a reference to dwarf2_per_objfile.
15376         (open_dwp_file): Add dwarf2_per_objfile parameter.
15377         (open_and_init_dwp_file): Likewise.
15378         (get_dwp_file): Likewise.
15379         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15380         (queue_and_load_all_dwo_tus): Update call.
15381         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15382         data.
15383         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15384         (dwarf2_ranges_process): Likewise.
15385         (dwarf2_get_pc_bounds): Likewise.
15386         (mark_common_block_symbol_computed): Likewise.
15387         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15388         (dwarf2_read_abbrevs): Update call.
15389         (read_partial_die): Use dwarf2_per_objfile from cu.
15390         (find_partial_die): Likewise.
15391         (fixup_partial_die): Likewise.
15392         (read_attribute_value): Likewise.
15393         (read_indirect_string_at_offset_from): Add objfile parameter.
15394         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15395         parameter.
15396         (read_indirect_string_from_dwz): Add objfile parameter.
15397         (read_indirect_string): Add objfile parameter.
15398         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15399         (read_addr_index): Use dwarf2_per_objfile from cu.
15400         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15401         call dw2_setup.
15402         (read_str_index): Use dwarf2_per_objfile from cu.
15403         (get_debug_line_section): Likewise.
15404         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15405         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15406         (new_symbol_full): Use dwarf2_per_objfile from cu.
15407         (build_error_marker_type): Likewise.
15408         (lookup_die_type): Likewise.
15409         (determine_prefix): Likewise.
15410         (follow_die_offset): Likewise.
15411         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15412         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15413         (dwarf2_fetch_die_type_sect_off): Likewise.
15414         (dwarf2_get_die_type): Likewise.
15415         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15416         (get_signatured_type): Likewise.
15417         (get_DW_AT_signature_type): Likewise.
15418         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15419         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15420         (cu_debug_loc_section): Likewise.
15421         (fill_in_loclist_baton): Likewise.
15422         (dwarf2_symbol_mark_computed): Likewise.
15423         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15424         dwarf2_per_objfile.
15425         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15426         parameter.
15427         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15428         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15429         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15430         (set_die_type): Use dwarf2_free_objfile from cu.
15431         (get_die_type_at_offset): Likewise.
15432         (dwarf2_per_objfile_free): Don't assign global variable.
15433         (debug_names) <constructor>: Add dwarf2_per_objfile
15434         parameter, update m_debugstrlookup construction.
15435         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15436         parameter.
15437         <m_dwarf2_per_objfile>: New field.
15438         <lookup>: Use m_dwarf2_per_objfile.
15439         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15440         (psyms_seen_size): Likewise.
15441         (write_gdbindex): Replace objfile parameter with
15442         dwarf2_per_objfile.
15443         (write_debug_names): Likewise.
15444         (write_psymtabs_to_index): Likewise.
15445         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15446         calls.
15447
15448 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15449
15450         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15451         <dwarf2_per_objfile>: New field.
15452         (struct dwarf2_per_cu_data) <objfile>: Remove.
15453         <dwarf2_per_objfile>: New field.
15454         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15455         of objfile.
15456         (create_signatured_type_table_from_index): Likewise.
15457         (create_debug_type_hash_table): Likewise.
15458         (fill_in_sig_entry_from_dwo_entry): Likewise.
15459         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15460         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15461         objfile.
15462         (create_partial_symtab): Access objfile through
15463         dwarf2_per_objfile.
15464         (process_psymtab_comp_unit_reader): Likewise.
15465         (read_comp_units_from_section): Likewise.
15466         (scan_partial_symbols): Likewise.
15467         (add_partial_symbol): Likewise.
15468         (add_partial_subprogram): Likewise.
15469         (peek_die_abbrev): Likewise.
15470         (fixup_go_packaging): Likewise.
15471         (process_full_comp_unit): Likewise.
15472         (process_full_type_unit): Likewise.
15473         (process_imported_unit_die): Likewise.
15474         (dwarf2_compute_name): Likewise.
15475         (dwarf2_physname): Likewise.
15476         (read_import_statement): Likewise.
15477         (create_cus_hash_table): Assign dwarf2_physname instead of
15478         objfile.
15479         (read_func_scope): Access objfile through dwarf2_per_objfile.
15480         (read_lexical_block_scope): Likewise.
15481         (read_call_site_scope): Likewise.
15482         (read_variable): Likewise.
15483         (dwarf2_rnglists_process): Likewise.
15484         (dwarf2_ranges_process): Likewise.
15485         (dwarf2_ranges_read): Likewise.
15486         (dwarf2_record_block_ranges): Likewise.
15487         (dwarf2_add_field): Likewise.
15488         (dwarf2_add_member_fn): Likewise.
15489         (read_structure_type): Likewise.
15490         (process_structure_scope): Likewise.
15491         (read_enumeration_type): Likewise.
15492         (read_array_type): Likewise.
15493         (read_common_block): Likewise.
15494         (read_namespace_type): Likewise.
15495         (read_namespace): Likewise.
15496         (read_module_type): Likewise.
15497         (read_tag_pointer_type): Likewise.
15498         (read_tag_ptr_to_member_type): Likewise.
15499         (read_tag_string_type): Likewise.
15500         (read_subroutine_type): Likewise.
15501         (read_typedef): Likewise.
15502         (read_base_type): Likewise.
15503         (attr_to_dynamic_prop): Likewise.
15504         (read_subrange_type): Likewise.
15505         (read_unspecified_type): Likewise.
15506         (load_partial_dies): Likewise.
15507         (read_partial_die): Likewise.
15508         (find_partial_die): Likewise.
15509         (guess_partial_die_structure_name): Likewise.
15510         (fixup_partial_die): Likewise.
15511         (read_attribute_value): Likewise.
15512         (read_addr_index_from_leb128): Likewise.
15513         (dwarf2_read_addr_index): Likewise.
15514         (dwarf2_string_attr): Likewise.
15515         (lnp_state_machine::check_line_address): Likewise.
15516         (dwarf_decode_lines_1): Likewise.
15517         (dwarf_decode_lines): Likewise.
15518         (dwarf2_start_symtab): Likewise.
15519         (var_decode_location): Likewise.
15520         (new_symbol_full): Likewise.
15521         (dwarf2_const_value_data): Likewise.
15522         (dwarf2_const_value_attr): Likewise.
15523         (dwarf2_const_value): Likewise.
15524         (die_type): Likewise.
15525         (die_containing_type): Likewise.
15526         (lookup_die_type): Likewise.
15527         (guess_full_die_structure_name): Likewise.
15528         (anonymous_struct_prefix): Likewise.
15529         (dwarf2_name): Likewise.
15530         (follow_die_ref_or_sig): Likewise.
15531         (follow_die_offset): Likewise.
15532         (follow_die_ref): Likewise.
15533         (dwarf2_fetch_die_loc_sect_off): Likewise.
15534         (dwarf2_fetch_constant_bytes): Likewise.
15535         (dwarf2_fetch_die_type_sect_off): Likewise.
15536         (dwarf2_get_die_type): Likewise.
15537         (follow_die_sig): Likewise.
15538         (decode_locdesc): Likewise.
15539         (dwarf2_per_cu_objfile): Likewise.
15540         (dwarf2_per_cu_text_offset): Likewise.
15541         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15542         objfile.
15543         (set_die_type): Access objfile through
15544         dwarf2_per_objfile.
15545
15546 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15547
15548         * valprint.c (converted_character_d): Remove typedef.
15549         (DEF_VEC_O (converted_character_d)): Remove.
15550         (count_next_character): Use std::vector.
15551         (print_converted_chars_to_obstack): Likewise.
15552         (generic_printstr): Likewise.
15553
15554 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15555
15556         * xml-support.h (struct gdb_xml_value): Add constructor.
15557         <value>: Change type to unique_xmalloc_ptr.
15558         (gdb_xml_value_s): Remove typedef.
15559         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15560         (gdb_xml_element_start_handler): Change parameter type to
15561         std::vector.
15562         (xml_find_attribute): Likewise.
15563         * xml-support.c (xml_find_attribute): Change parameter type to
15564         std::vector and adjust.
15565         (gdb_xml_values_cleanup): Remove.
15566         (gdb_xml_parser::start_element): Adjust to std::vector.
15567         (xinclude_start_include): Change paraeter type to std::vector
15568         and adjust.
15569         * btrace.c (check_xml_btrace_version): Likewise.
15570         (parse_xml_btrace_block): Likewise.
15571         (parse_xml_btrace_pt_config_cpu): Likewise.
15572         (parse_xml_btrace_pt): Likewise.
15573         (parse_xml_btrace_conf_bts): Likewise.
15574         (parse_xml_btrace_conf_pt): Likewise.
15575         * memory-map.c (memory_map_start_memory): Likewise.
15576         (memory_map_start_property): Likewise.
15577         * osdata.c (osdata_start_osdata): Likewise.
15578         (osdata_start_item): Likewise.
15579         (osdata_start_column): Likewise.
15580         * remote.c (start_thread): Likewise.
15581         * solib-aix.c (library_list_start_library): Likewise.
15582         (library_list_start_list): Likewise.
15583         * solib-svr4.c (library_list_start_library): Likewise.
15584         (svr4_library_list_start_list): Likewise.
15585         * solib-target.c (library_list_start_segment): Likewise.
15586         (library_list_start_section): Likewise.
15587         (library_list_start_library): Likewise.
15588         (library_list_start_list): Likewise.
15589         * tracepoint.c (traceframe_info_start_memory): Likewise.
15590         (traceframe_info_start_tvar): Likewise.
15591         * xml-syscall.c (syscall_start_syscall): Likewise.
15592         * xml-tdesc.c (tdesc_start_target): Likewise.
15593         (tdesc_start_feature): Likewise.
15594         (tdesc_start_reg): Likewise.
15595         (tdesc_start_union): Likewise.
15596         (tdesc_start_struct): Likewise.
15597         (tdesc_start_flags): Likewise.
15598         (tdesc_start_enum): Likewise.
15599         (tdesc_start_field): Likewise.
15600         (tdesc_start_enum_value): Likewise.
15601         (tdesc_start_vector): Likewise.
15602
15603 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15604
15605         * extension.h (struct xmethod_worker) <clone>: Remove.
15606         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15607         Remove.
15608         (python_xmethod_worker::clone): Remove.
15609         * valops.c (find_overload_match): Use std::move instead of
15610         clone.
15611
15612 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15613
15614         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15615         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15616         <free_xmethod_worker_data>: Remove.
15617         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15618         <get_xmethod_arg_types>: Remove.
15619         <get_xmethod_result_type>: Remove.
15620         <invoke_xmethod>: Remove.
15621         * extension.c (new_xmethod_worker): Remove.
15622         (clone_xmethod_worker): Remove.
15623         (get_matching_xmethod_workers): Return void, pass std::vector by
15624         pointer.
15625         (get_xmethod_arg_types): Rename to...
15626         (xmethod_worker::get_arg_types): ... this, and adjust.
15627         (get_xmethod_result_type): Rename to...
15628         (xmethod_worker::get_result_type): ... this, and adjust.
15629         (invoke_xmethod): Remove.
15630         (free_xmethod_worker): Remove.
15631         (free_xmethod_worker_vec): Remove.
15632         * extension.h (enum ext_lang_rc): Move here from
15633         extension-priv.h.
15634         (struct xmethod_worker): Add constructor and destructor.
15635         <data>: Remove.
15636         <value>: Remove.
15637         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15638         virtual pure methods.
15639         <get_arg_types, get_result_type>: New methods.
15640         (xmethod_worker_ptr): Remove typedef.
15641         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15642         (xmethod_worker_vec): Remove typedef.
15643         (xmethod_worker_up): New typedef.
15644         (invoke_xmethod): Remove.
15645         (clone_xmethod_worker): Remove.
15646         (free_xmethod_worker): Remove.
15647         (free_xmethod_worker_vec): Remove.
15648         (get_xmethod_arg_types): Remove.
15649         (get_xmethod_result_type): Remove.
15650         * valops.c (find_method_list): Use std::vector, don't use
15651         intermediate vector.
15652         (value_find_oload_method_list): Use std::vector.
15653         (find_overload_match): Use std::vector.
15654         (find_oload_champ): Use std::vector.
15655         * value.c (value_free): Use operator delete.
15656         (value_of_xmethod): Rename to...
15657         (value_from_xmethod): ... this.  Don't assign
15658         xmethod_worker::value, take rvalue-reference.
15659         (result_type_of_xmethod): Adjust.
15660         (call_xmethod): Adjust.
15661         * value.h: Include extension.h.
15662         (struct xmethod_worker): Don't forward-declare.
15663         (value_of_xmethod): Rename to...
15664         (value_from_xmethod): ... this, take rvalue-reference.
15665         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15666         (struct python_xmethod_worker): ... this, add constructor and
15667         destructor.
15668         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15669         (gdbpy_free_xmethod_worker_data): Rename to...
15670         (python_xmethod_worker::~python_xmethod_worker): ... this and
15671         adjust.
15672         (gdbpy_clone_xmethod_worker_data): Rename to...
15673         (python_xmethod_worker::clone): ... this and adjust.
15674         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15675         temporary vector.
15676         (gdbpy_get_xmethod_arg_types): Rename to...
15677         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15678         (gdbpy_get_xmethod_result_type): Rename to...
15679         (python_xmethod_worker::do_get_result_type): ... this and
15680         adjust.
15681         (gdbpy_invoke_xmethod): Rename to...
15682         (python_xmethod_worker::invoke): ... this and adjust.
15683         (new_python_xmethod_worker): Rename to...
15684         (python_xmethod_worker::python_xmethod_worker): ... this and
15685         adjust.
15686         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15687         Remove.
15688         (gdbpy_free_xmethod_worker_data): Remove.
15689         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15690         (gdbpy_get_xmethod_arg_types): Remove.
15691         (gdbpy_get_xmethod_result_type): Remove.
15692         (gdbpy_invoke_xmethod): Remove.
15693         * python/python.c (python_extension_ops): Remove obsolete
15694         callbacks.
15695
15696 2018-01-05  Pedro Alves  <palves@redhat.com>
15697
15698         PR gdb/18653
15699         * common/signals-state-save-restore.c
15700         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15701         find a custom handler preinstalled, instead of internal erroring.
15702         But only warn if !quiet.
15703         * common/signals-state-save-restore.h
15704         (save_original_signals_state): New parameter 'quiet'.
15705         * main.c (captured_main_1): Move save_original_signals_state call
15706         after option handling, and pass QUIET.
15707
15708 2018-01-05  Pedro Alves  <palves@redhat.com>
15709
15710         * spu-tdep.c (spu_catch_start): Pass
15711         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15712
15713 2018-01-05  Pedro Alves  <palves@redhat.com>
15714
15715         PR gdb/22670
15716         * ada-lang.c (literal_symbol_name_matcher): New function.
15717         (ada_get_symbol_name_matcher): Use it for
15718         symbol_name_match_type::SEARCH_NAME.
15719         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15720         it down instead of assuming symbol_name_match_type::FULL.
15721         * block.h (block_lookup_symbol): New parameter 'match_type'.
15722         * c-valprint.c (print_unpacked_pointer): Use
15723         lookup_symbol_search_name instead of lookup_symbol.
15724         * compile/compile-object-load.c (get_out_value_type): Pass down
15725         symbol_name_match_type::SEARCH_NAME.
15726         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15727         symbol_name_match_type::FULL.
15728         * cp-support.c (cp_get_symbol_name_matcher): Handle
15729         symbol_name_match_type::SEARCH_NAME.
15730         * infrun.c (insert_exception_resume_breakpoint): Use
15731         lookup_symbol_search_name.
15732         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15733         * psymtab.c (maintenance_check_psymtabs): Use
15734         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15735         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15736         SYMBOL_SEARCH_NAME.
15737         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15738         if symbol_name_match_type::SEARCH_NAME.
15739         (lookup_symbol_in_language): Pass down
15740         symbol_name_match_type::FULL.
15741         (lookup_symbol_search_name): New.
15742         (lookup_language_this): Pass down
15743         symbol_name_match_type::SEARCH_NAME.
15744         (lookup_symbol_aux, lookup_local_symbol): New parameter
15745         'match_type'.  Pass it down.
15746         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15747         (lookup_symbol_search_name): New declaration.
15748         (lookup_symbol_in_block): New 'match_type' parameter.
15749
15750 2018-01-05  Pedro Alves  <palves@redhat.com>
15751
15752         PR gdb/22670
15753         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15754         ada_lookup_symbol.
15755         (ada_lookup_symbol): Reimplement in terms of
15756         ada_lookup_symbol_list, bits factored out from
15757         ada_lookup_encoded_symbol.
15758
15759 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15760
15761         * ada-exp.y (write_object_renaming): When subscripting an array
15762         using a symbol as the index, pass the block in call to
15763         ada_lookup_encoded_symbol when looking that symbol up.
15764
15765 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15766
15767         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15768         TYPE_INDEX_TYPE.
15769
15770 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15771
15772         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15773         the case where VALUE_LVAL (val0) is not lval_memory.
15774
15775 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15776
15777         * ada-valprint.c (print_optional_low_bound): Handle
15778         character-indexed array printing like boolean-indexed array
15779         printing.
15780
15781 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15782
15783         * NEWS: Create a new section for the next release branch.
15784         Rename the section of the current branch, now that it has
15785         been cut.
15786
15787 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15788
15789         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15790         * version.in: Bump version to 8.1.50.DATE-git.
15791
15792 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15793
15794         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15795         Add field.
15796         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15797         Add field.
15798         (default_exception_support_info) <catch_handlers_sym>: Add field.
15799         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15800         (ada_exception_name_addr_1): Add "catch handlers" handling.
15801         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15802         Update all callers.
15803         (create_excep_cond_exprs) <ex>: Add parameter.
15804         (re_set_exception): Update create_excep_cond_exprs call.
15805         (print_it_exception, print_one_exception, print_mention_exception)
15806         (print_recreate_exception): Add "catch handler" handling.
15807         (allocate_location_catch_handlers, re_set_catch_handlers)
15808         (check_status_catch_handlers, print_it_catch_handlers)
15809         (print_one_catch_handlers, print_mention_catch_handlers)
15810         (print_recreate_catch_handlers): New function.
15811         (catch_handlers_breakpoint_ops): New variable.
15812         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15813         Add parameter.  Add "catch handler" handling.
15814         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15815         Add "catch handler" handling.
15816         (ada_exception_catchpoint_cond_string): Add "catch handler"
15817         handling.
15818         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15819         call.
15820         (catch_ada_handlers_command): New function.
15821         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15822         operations structure.
15823         (_initialize_ada_language): Add "catch handlers" command entry.
15824         * NEWS: Document "catch handlers" feature.
15825
15826 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15827
15828         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15829         account when creating the array type of the slice.
15830         (ada_value_slice): Likewise.
15831
15832 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15833
15834         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15835         New enum value.
15836         (create_array_type_with_stride): Add byte_stride_prop parameter.
15837         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15838         New parameter.  Update all callers in this file.
15839         (array_type_has_dynamic_stride): New function.
15840         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15841         of arrays with dynamic byte strides.
15842         * dwarf2read.c (read_array_type): Add support for dynamic
15843         DW_AT_byte_stride attributes.
15844
15845 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15846
15847         * dwarf2read.c (read_unspecified_type): Treat
15848         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15849
15850 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15851
15852         Update copyright year range in all GDB files.
15853
15854 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15855
15856         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15857         and gdb/testsuite/gdb.base/step-line.c.
15858
15859 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15860
15861         * copyright.py (main): Dump the contents of
15862         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15863         even if BY_HAND is empty.
15864
15865 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15866
15867         * top.c (print_gdb_version): Update Copyright year in version
15868         message.
15869
15870 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15871
15872         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15873
15874 For older changes see ChangeLog-2017.
15875 \f
15876 Local Variables:
15877 mode: change-log
15878 left-margin: 8
15879 fill-column: 74
15880 version-control: never
15881 coding: utf-8
15882 End: