Fix gdb/ChangeLog formatting and date
[external/binutils.git] / gdb / ChangeLog
1 2018-11-20  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):
4251         Likewise.
4252         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4253         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4254         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4255         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4256         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4257         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4258         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4259         Likewise.
4260         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4261         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4262         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4263         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4264         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4265         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4266         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4267         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4268
4269 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4270
4271         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4272         with string_printf.
4273
4274 2018-08-10  Keith Seitz  <keiths@redhat.com>
4275
4276         * compile/compile-c-support.c (add_code_header, add_code_footer):
4277         Move into policy class.
4278         (c_push_user_expression, pop_user_expression_nop)
4279         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4280         (compile_program): New host class.
4281         (c_compile_program): New typedef.
4282         (c_compute_porgram): Use c_compile_program.
4283
4284 2018-08-10  Keith Seitz  <keiths@redhat.com>
4285
4286         * compile/compile-internal.h (compile_instance::~compile_instance):
4287         Remove calls to htab_delete.
4288         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4289         * compile.c (compile_instance::compile_instance): Initialize
4290         htab unique pointers.
4291         (compile_instance::get_cached_type, compile_instance::insert_type)
4292         (compile_instance::error_symbol_once): Update for unique_ptr.
4293
4294 2018-08-10  Keith Seitz  <keiths@redhat.com>
4295
4296         * compile/compile-c-symbols.c (struct symbol_error)
4297         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4298         (compile_instance::insert_symbol_error)
4299         (compile_instance::error_symbol_once): Move to ...
4300         * compile/compile.c: ... here.
4301
4302 2018-08-10  Keith Seitz  <keiths@redhat.com>
4303
4304         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4305         instead of `new_compile_instance'.
4306         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4307         Update description.
4308         If the symbol error map is not initialized, create it.
4309         (generate_c_for_for_one_symbol): Do not check/initialize
4310         the symbol error map.
4311         * compile/compile-c-types.c (compile_c_instance): Make a class.
4312         Update all callers.
4313         (compile_instance::compile_instance): Initialize the type cache.
4314         (get_cached_type): New function.
4315         (insert_type): Update description.
4316         (compile_c_instance::m_default_cflags): Define.
4317         (convert_type): Update description.  Use get_cached_type.
4318         (delete_instance): Moved to destructor.
4319         (new_compile_instance): Moved to constructor.
4320         * compile/compile-c.h (compile_c_instance): Make class inheriting
4321         from compile_instance.
4322         <base>: Remove field.
4323         <type_map, symbol_err_map>: Move to base class.
4324         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4325         * compile/compile-internal.h (compile_instance): Make class.
4326         <type_map_t, symbol_err_map_t>: Define.
4327         <fe>: Rename to `m_gcc_fe'.
4328         <scope, block, gcc_target_options>: Add `m_' prefix.
4329         <m_type_map, m_symbol_err_map>: New fields, moved from
4330         compile_c_instance.
4331         <destroy>: Remove.
4332         (convert_type, new_compile_instance): Remove.
4333         * compile/compile.c (cleanup_compile_instance): Remove.
4334         (compile_to_object): Use unique_ptr to eliminate cleanups.
4335         (compile_instance::set_print_callback, compile_instance::version)
4336         (compile_instance::set_verbose)
4337         (compile_instance::set_driver_filename)
4338         (compile_instance::set_triplet_regexp)
4339         (compile_instance::set_arguments)
4340         (compile_instance::set_source_file)
4341         (compile_instance::compile): Define.
4342
4343 2018-08-10  Keith Seitz  <keiths@redhat.com>
4344
4345         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4346         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4347         gcc-c-fe.def to define C plugin.
4348         (delete_instance): Delete `c_plugin'.
4349         (new_compile_instance): Initialize `c_plugin'.
4350         * compile/compile-c.h: Include gcc_c_plugin.h.
4351         (struct compile_c_instance) <c_plugin>: New member.
4352         * gcc-c-plugin.h: New file.
4353         Update all callers with API change.
4354
4355 2018-08-10  Keith Seitz  <keiths@redhat.com>
4356
4357         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4358         (HFILES_NO_SRCDIR): ... to here.
4359         Add compile-internal.h and compile-c.h.
4360         * compile/compile-c-support.c: Include compile-c.h.
4361         * compile/compile-c-symbols.c: Include compile-c.h.
4362         (generate_c_for_variable_locations): Update comment.
4363         * compile/compile-c-types.c: Include compile-c.h.
4364         * compile/compile-c.h: New file -- moved C language declarations
4365         from other files here.
4366         * compile/compile-internal.h: Do not include hashtab.h or
4367         common/enum-flags.h.
4368         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4369         (gcc_convert_symbol, gcc_symbol_address)
4370         (generate_c_for_variable_locations, c_get_mode_for_size)
4371         (c_get_range_decl_name): Definitions moved to compile-c.h.
4372         * compile/compile-loc2c.c: Include compile-c.h.
4373
4374 2018-08-10  Keith Seitz  <keiths@redhat.com>
4375
4376         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4377         (c_symbol_substitution_name): ... this.
4378         Update all callers.
4379
4380 2018-08-10  Keith Seitz  <keiths@redhat.com>
4381
4382         * compile/compile-c-support.c (c_compute_program): Use
4383         unique_xmalloc_ptr to eliminate cleanup.
4384         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4385         Return a unique_xmalloc_ptr and eliminate cleanup.
4386         * compile/compile-internal.h (generate_c_for_variable_locations):
4387         Return unique_xmalloc_ptr and update description.
4388
4389 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4390
4391         * corelow.c (core_target::get_core_register_section): Rename
4392         min_size to section_min_size.
4393
4394 2018-08-09  Jim Wilson  <jimw@sifive.com>
4395
4396         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4397         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4398         * NEWS: Mention new GNU/Linux RISC-V target.
4399         * configure.host: Add riscv*-*-linux*.
4400         * configure.nat: Add riscv*.
4401         * configure.tgt: Add riscv*-*-linux*.
4402         * riscv-linux-nat.c: New file.
4403         * riscv-linux-tdep.c: New file.
4404
4405 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4406
4407         * infrun.c (resume): Make static, add forward declaration.
4408         (proceed): Update header comment.
4409         * infrun.h (resume): Delete declaration.
4410
4411 2018-08-09  Tom Tromey  <tom@tromey.com>
4412
4413         * riscv-tdep.h: Minor formatting fixes.
4414
4415 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4416
4417         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4418         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4419         (test_mkdir_recursive): Likewise.
4420         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4421
4422 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4423
4424         * valarith.c (value_subscripted_rvalue): If an array is not in
4425         memory, and we don't know the upper bound, then we can't know that
4426         the requested element exists or not.
4427
4428 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4429
4430         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4431         (target_options_to_string): Add comment.
4432
4433 2018-08-08  Tom Tromey  <tom@tromey.com>
4434
4435         * unittests/scoped_mmap-selftests.c: Check result of "write".
4436
4437 2018-08-08  Jim Wilson  <jimw@sifive.com>
4438
4439         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4440         (decode_register_index_short): New.
4441         (decode_j_type_insn, decode_cj_type_insn): New.
4442         (decode_b_type_insn, decode_cb_type_insn): New.
4443         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4444         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4445         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4446         is_c_sw_insn instead of is_sw_insn.
4447         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4448         (riscv_software_single_step): New.
4449         * riscv-tdep.h (riscv_software_single_step): Declare.
4450
4451         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4452         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4453
4454 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4455
4456         PR gdb/18050:
4457         * target.c (dispose_inferior): Don't dispose of inferiors that are
4458         already killed.
4459
4460 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4461
4462         * remote.c (remote_target::download_tracepoint): Change char* to
4463         const char*.
4464
4465 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4466
4467         * target.h (target_options_to_string): Return an std::string.
4468         * target.c (str_comma_list_concat_elem): Return void, use
4469         std::string.
4470         (do_option): Likewise.
4471         (target_options_to_string): Return an std::string.
4472         * linux-nat.c (linux_nat_target::wait): Adjust.
4473         * target-debug.h (target_debug_print_options): Adjust.
4474
4475 2018-08-07  Tom Tromey  <tom@tromey.com>
4476
4477         * Makefile.in (CPPFLAGS): New variable.
4478         (INTERNAL_CPPFLAGS): Use it.
4479
4480 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4481
4482         * NEWS: Mention the index cache.
4483
4484 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4485
4486         * common/pathstuff.h (get_standard_cache_dir): New.
4487         * common/pathstuff.c (get_standard_cache_dir): New.
4488         * build-id.h (build_id_to_string): New.
4489         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4490         DEBUG_STR_SUFFIX): Move to here.
4491         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4492         DEBUG_STR_SUFFIX): Move from there.
4493         (write_psymtabs_to_index): Make non-static, add basename
4494         parameter.  Write to temporary files, rename when done.
4495         (save_gdb_index_command): Adjust call to
4496         write_psymtabs_to_index.
4497         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4498         field.
4499         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4500         (get_gdb_index_contents_from_cache): New.
4501         (get_gdb_index_contents_from_cache_dwz): New.
4502         (dwarf2_initialize_objfile): Read index from cache.
4503         (dwarf2_build_psymtabs): Save to index.
4504         * dwarf-index-cache.h: New file.
4505         * dwarf-index-cache.c: New file.
4506         * dwarf-index-write.h: New file.
4507
4508 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4509
4510         * gnulib/aclocal.m4: Re-generate.
4511         * gnulib/config.in: Re-generate.
4512         * gnulib/configure: Re-generate.
4513         * gnulib/import/Makefile.am: Re-generate.
4514         * gnulib/import/Makefile.in: Re-generate.
4515         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4516         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4517         * gnulib/import/m4/mkdir.m4: New file.
4518         * gnulib/import/mkdir.c: New file.
4519         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4520         module.
4521
4522 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4523
4524         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4525         * common/scoped_mmap.c: New file.
4526         * common/scoped_mmap.h (destroy): New method.
4527         (~scoped_mmap, reset): Use destroy.
4528         (scoped_mmap): New move constructor.
4529         (mmap_file): New declaration.
4530         * unittests/scoped_mmap-selftests.c (test_normal,
4531         test_invalid_filename, run_tests): New functions.
4532         (_initialize_scoped_mmap_selftests): Register selftest.
4533
4534 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4535
4536         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4537         (read_gdb_index_from_buffer): ... this.  Remove section
4538         parameter, add buffer parameter.
4539         (get_gdb_index_contents_ftype,
4540         get_gdb_index_contents_dwz_ftype): New typedefs.
4541         (dwarf2_read_gdb_index): Add callback parameters to get the
4542         index contents.
4543         (get_gdb_index_contents_from_section): New.
4544         (dwarf2_initialize_objfile): Update call to
4545         dwarf2_read_gdb_index.
4546
4547 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4548
4549         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4550         (gdb_open_cloexec): Likewise.
4551         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4552         (commandline_from_pid): Likewise.
4553         (linux_xfer_osdata_threads): Likewise.
4554         (linux_xfer_osdata_fds): Likewise.
4555         * ada-lang.c (is_package_name): Likewise.
4556         * auxv.c (procfs_xfer_auxv): Likewise.
4557         * breakpoint.c (print_one_breakpoint_location): Use
4558         uiout::field_fmt.
4559         (print_one_catch_solib): Use string_printf.
4560         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4561         (add_pe_forwarded_sym): Likewise.
4562         * dwarf2read.c (create_type_unit_group): Likewise.
4563         (build_error_marker_type): Likewise.
4564         * infcall.c (get_function_name): Likewise.
4565         * valprint.c (print_converted_chars_to_obstack): Likewise.
4566         * xtensa-tdep.c (xtensa_register_type): Likewise.
4567
4568 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4569
4570         * remote.c (remote_target::download_tracepoint): Fix format
4571         string errors.
4572
4573 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4574
4575         * tracefile.c: Include common/byte-vector.h.
4576         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4577         with trace_regblock_size if needed.  Update uses of buf.
4578
4579 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4580
4581         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4582         std::vector<unsigned char>.
4583         * tracepoint.c (collection_list::collection_list): Remove
4584         m_regs_mask initializer from initializer list.  Resize
4585         m_regs_mask using the largest remote register number.
4586         (collection_list::add_remote_register): Remove size check on
4587         m_regs_mask.  Use at to access element.
4588         (collection_list::stringify): Change type of temp_buf to
4589         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4590         stringify the register mask.  Use pack_hex_byte for the register
4591         mask.
4592
4593 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4594
4595         * tracepoint.h (class collection_list) <add_register>: Remove.
4596         <add_remote_register, add_ax_registers, add_local_register>:
4597         Declare.
4598         <add_memrange>: Add scope parameter.
4599         * tracepoint.c (encode_actions_1): Likewise.
4600         (collection_list::add_register): Rename to ...
4601         (collection_list::add_remote_register): ... this.  Update
4602         comment.
4603         (collection_list::add_ax_registers, add_local_register): New
4604         methods.
4605         (collection_list::add_memrange): Add scope parameter.  Call
4606         add_local_register instead of add_register.
4607         (finalize_tracepoint_aexpr): New function.
4608         (collection_list::collect_symbol): Update calls to add_memrange.
4609         Call add_local_register instead of add_register.  Call
4610         add_ax_registers.  Call finalize_tracepoint_aexpr.
4611         (encode_actions_1): Get remote regnos for $reg action.  Call
4612         add_remote_register, add_ax_registers, and add_local_register.
4613         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4614         (validate_actionline): Call finalize_tracepoint_aexpr.
4615
4616 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4617
4618         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4619         Replace array buf with gdb::char_vector buf, of size
4620         get_remote_packet_size ().  Replace references to buf and
4621         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4622         and xsnprintf with snprintf.  Raise errors if the buffer is too
4623         small.
4624
4625 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4626
4627         * remote.c (remote_target::download_tracepoint): Fix the has_more
4628         predicate in the QTDP action list iteration.
4629
4630 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4631
4632         * remote.c (remote_target::download_tracepoint): Fix indentation
4633         in for block.
4634
4635 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4636
4637         * proc-api.c (_initialize_proc_api): Remove c, unused.
4638         * procfs.c (procfs_init_inferior): Remove signals, unused.
4639         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4640         unused.
4641
4642 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4643             Andrew Burgess  <andrew.burgess@embecosm.com>
4644
4645         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4646         'W_STOPCODE (0)' as this could be ambiguous.
4647
4648 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4649
4650         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4651         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4652         "ai_socktype").
4653
4654 2018-08-02  Tom Tromey  <tom@tromey.com>
4655
4656         PR symtab/16842.
4657         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4658         symbols.
4659         (process_structure_scope): Likewise.
4660
4661 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4662
4663         PR gdb/22629:
4664         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4665         kill inferior.
4666
4667 2018-08-02  Tom Tromey  <tom@tromey.com>
4668
4669         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4670         (darwin_suspend_inferior, darwin_resume_inferior)
4671         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4672         (darwin_check_new_threads): Check result of get_darwin_inferior.
4673
4674 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4675
4676         GDB 8.1.1 released.
4677
4678 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4679
4680         * varobj.c (varobj_get_path_expr_parent): Report an error if
4681         parent is a dynamic varobj.
4682
4683 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4684
4685         * gnulib/aclocal.m4: Re-generate.
4686         * gnulib/config.in: Re-generate.
4687         * gnulib/configure: Re-generate.
4688         * gnulib/import/Makefile.in: Re-generate.
4689         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4690         * gnulib/import/m4/onceonly.m4: Re-generate.
4691
4692 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4693
4694         * target-descriptions.c (struct xml_test_tdesc): New.
4695         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4696         (record_xml_tdesc): Update.
4697         (maintenance_check_xml_descriptions): Update.
4698         * target-descriptions.h (record_xml_tdesc): Update comment.
4699
4700 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4701
4702         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4703         checking array bounds are defined.
4704
4705 2018-07-30  Tom Tromey  <tom@tromey.com>
4706
4707         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4708         irreflexivity violation.
4709
4710 2018-07-30  Tom Tromey  <tom@tromey.com>
4711
4712         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4713         * value.c (unpack_long): Remove lint code.
4714         * valops.c (value_ind): Remove lint code.
4715         * valarith.c (value_x_binop, value_x_unop, value_equal)
4716         (value_pos): Remove lint code.
4717
4718 2018-07-28  Tom de Vries  <tdevries@suse.de>
4719
4720         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4721         with undefined upper bound as <optimized out>.
4722
4723 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4724
4725         * gcore.in: Rename variable "name" to "prefix".  Expand
4726         "usage" text.
4727
4728 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4729
4730         * windows-nat.c (windows_nat_target::create_inferior): Update to
4731         call close() in global namespace.
4732
4733 2018-07-26  Tom Tromey  <tom@tromey.com>
4734
4735         * dwarf-index-write.c (add_address_entry): Don't add objfile
4736         offsets.
4737         * dbxread.c (find_stab_function): Rename from
4738         find_stab_function_addr.  Return a bound_minimal_symbol.
4739         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4740         Don't add objfile offsets.
4741         (end_psymtab): Use raw_text_low, raw_text_high,
4742         MSYMBOL_VALUE_RAW_ADDRESS.
4743         (read_ofile_symtab): Update.
4744         (process_one_symbol): Update.
4745         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4746         offsets.
4747         (dw2_relocate): Remove.
4748         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4749         searching addrmap.
4750         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4751         Update.
4752         (process_psymtab_comp_unit_reader, add_partial_symbol)
4753         (add_partial_subprogram, dwarf2_ranges_read): Update.
4754         (load_partial_dies): Update.
4755         (add_address_entry): Don't add objfile offsets.
4756         (dwarf2_build_include_psymtabs): Update.
4757         (create_addrmap_from_aranges): Don't add objfile offsets.
4758         (dw2_find_pc_sect_compunit_symtab): Update.
4759         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4760         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4761         Update.
4762         (parse_partial_symbols): Don't add objfile offsets.  Use
4763         raw_text_low, raw_text_high.  Update.
4764         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4765         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4766         or call 'relocate' quick function.  Clear psymbol_map.
4767         * psympriv.h (struct partial_symbol) <address>: Add section
4768         offset.
4769         <set_unrelocated_address>: Rename from set_address.
4770         <raw_text_low, raw_text_high>: New methods.
4771         <text_low, text_high>: Add objfile parameter.
4772         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4773         set_unrelocated_address.
4774         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4775         (find_pc_psymbol): Update.
4776         (fixup_psymbol_section, relocate_psymtabs): Remove.
4777         (dump_psymtab, psym_functions): Update.
4778         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4779         parameter.
4780         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4781         (start_psymtab_common): Update.
4782         * symfile-debug.c (debug_qf_relocate): Remove.
4783         (debug_sym_quick_functions): Update.
4784         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4785         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4786         Update.
4787
4788 2018-07-26  Tom Tromey  <tromey@redhat.com>
4789
4790         * dbxread.c (end_psymtab): Use text_high_valid and
4791         text_low_valid.
4792         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4793         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4794         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4795         Update comment.
4796         <text_low_valid, text_high_valid>: New fields.
4797         <set_text_low, set_text_high>: Update.
4798         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4799
4800 2018-07-26  Tom Tromey  <tom@tromey.com>
4801
4802         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4803         Update.
4804         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4805         textlow and texthigh fields.
4806         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4807         Update.
4808         * mdebugread.c (parse_lines, parse_partial_symbols)
4809         (psymtab_to_symtab_1): Update.
4810         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4811         Rename fields.  Update comment.  Now private.
4812         <text_low, text_high, set_text_low, set_text_high>: New methods.
4813         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4814         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4815         (start_psymtab_common, maintenance_info_psymtabs)
4816         (maintenance_check_psymtabs): Update.
4817         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4818         texthigh fields.
4819         (scan_xcoff_symtab): Update.
4820
4821 2018-07-26  Tom Tromey  <tromey@redhat.com>
4822
4823         * psympriv.h (struct partial_symbol) <unrelocated_address,
4824         address, set_address>: New methods.
4825         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4826         (fixup_psymbol_section, relocate_psymtabs): Update.
4827         (print_partial_symbols): Add 'objfile' parameter.  Update.
4828         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4829         Update.
4830
4831 2018-07-26  Tom Tromey  <tom@tromey.com>
4832
4833         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4834         (debug_names::write_psymbols): Update.
4835         * psympriv.h (struct partial_symbol): Derive from
4836         general_symbol_info.
4837         <obj_section>: New method.
4838         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4839         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4840         (find_pc_sect_psymbol, fixup_psymbol_section)
4841         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4842         (print_partial_symbols, recursively_search_psymtabs)
4843         (compare_psymbols, psymbol_hash, psymbol_compare)
4844         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4845         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4846
4847 2018-07-26  Tom Tromey  <tromey@redhat.com>
4848
4849         * dbxread.c (end_psymtab): Remove dead code.
4850
4851 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4852
4853         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4854         DWARF unwinders are disabled.
4855         * dwarf2-frame.c: Add dwarf2read.h include.
4856         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4857         disabled.
4858         (dwarf2_frame_unwinders_enabled_p): Define.
4859         (show_dwarf_unwinders_enabled_p): New function.
4860         (_initialize_dwarf2_frame): Register switch to control DWARF
4861         unwinder use.
4862         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4863         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4864         (show_dwarf_cmdlist): Remove static keyword.
4865         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4866         (show_dwarf_cmdlist): Declare.
4867         * NEWS: Document new feature.
4868
4869 2018-07-26  Tom de Vries  <tdevries@suse.de>
4870
4871         PR breakpoints/23366
4872         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4873
4874 2018-07-26  Tom de Vries  <tdevries@suse.de>
4875
4876         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4877         DW_AT_count can't be translated to a dynamic prop.
4878
4879 2018-07-25  Tom de Vries  <tdevries@suse.de>
4880
4881         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4882         try/catch.
4883
4884 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4885
4886         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4887
4888 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4889
4890         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4891
4892 2018-07-24  Keith Seitz  <keiths@redhat.comt
4893
4894         PR symtab/23010
4895         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4896         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4897         instead of add_symbol_to_list.
4898         (read_file_scope): Call prepare_one_comp_unit before reading
4899         any other DIEs.
4900
4901 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4902
4903         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4904
4905 2018-07-24  Tom Tromey  <tom@tromey.com>
4906
4907         * utils.c (malloc, realloc, free): Don't declare.
4908         * configure, config.in: Rebuild.
4909         * configure.ac: Don't check for declarations of free, malloc, or
4910         realloc.
4911
4912 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4913
4914         * aarch64-linux-nat.c
4915         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4916         variable.
4917         * arm-linux-nat.c (fetch_regs): Likewise.
4918         (store_regs): Likewise.
4919         (fetch_vfp_regs): Likewise.
4920         (store_vfp_regs): Likewise.
4921         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4922         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4923         (arm_linux_nat_target::insert_watchpoint): Likewise.
4924         (arm_linux_nat_target::remove_watchpoint): Likewise.
4925         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4926         Likewise.
4927         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4928         Likewise.
4929         * ppc-linux-nat.c (fetch_register): Likewise.
4930         (fetch_all_gp_regs): Likewise.
4931         (fetch_ppc_registers): Likewise.
4932         (store_all_gp_regs): Likewise.
4933         (store_ppc_registers): Likewise.
4934         (hwdebug_insert_point): Likewise.
4935         (can_use_watchpoint_cond_accel): Likewise.
4936         * remote-sim.c (gdb_os_write_stdout): Likewise.
4937
4938 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4939             Tom Tromey  <tom@tromey.com>
4940
4941         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4942         test for it.
4943         * configure: Rebuild.
4944
4945 2018-07-22  Tom Tromey  <tom@tromey.com>
4946
4947         * regformats/regdat.sh: Define xmltarget_${name} inside
4948         #ifndef IN_PROCESS_AGENT.
4949
4950 2018-07-22  Tom Tromey  <tom@tromey.com>
4951
4952         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4953
4954 2018-07-22  Tom Tromey  <tom@tromey.com>
4955
4956         * symfile.c (reread_symbols): Notify iter, not objfile.
4957
4958 2018-07-22  Tom Tromey  <tom@tromey.com>
4959
4960         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4961         Use arch_ops.
4962         (ravenscar_thread_target::prepare_to_store): Likewise.
4963
4964 2018-07-22  Tom Tromey  <tom@tromey.com>
4965
4966         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4967         unused variable.  Call value_fetch_lazy when needed.
4968         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4969         Remove unused variable.  Call value_fetch_lazy when needed.
4970
4971 2018-07-22  Tom Tromey  <tom@tromey.com>
4972
4973         * m32c-tdep.c (mark_dma): Return void.
4974         (make_regs): Remove unused declarations.
4975
4976 2018-07-22  Tom Tromey  <tom@tromey.com>
4977
4978         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4979         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4980         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4981         bkscm_get_valid_block_smob_arg_unsafe for effect.
4982
4983 2018-07-22  Tom Tromey  <tom@tromey.com>
4984
4985         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4986         value_type.
4987
4988 2018-07-22  Tom Tromey  <tom@tromey.com>
4989
4990         * windows-nat.c (saved_context): Conditionally define.
4991         * remote.c (remote_target::remote_btrace_maybe_reopen):
4992         Conditionally declare "warned".
4993         * inflow.c (sigquit_ours): Conditionally define.
4994         (new_tty): Move "tty" declaration inside #if.
4995         * guile/guile.c (guile_datadir): Conditionally define.
4996         * charset.c (set_be_le_names): Move some declarations inside #if.
4997         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4998         #if.
4999         (parse_xml_btrace_conf): Likewise.
5000
5001 2018-07-22  Tom Tromey  <tom@tromey.com>
5002
5003         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5004
5005 2018-07-22  Tom Tromey  <tom@tromey.com>
5006
5007         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5008         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5009         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5010         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5011         * stack.c (frame_apply_level_command): Remove unused variable.
5012         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5013         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5014         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5015         unused variable.
5016         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5017         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5018         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5019         variable.
5020         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5021         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5022         variable.
5023         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5024         Remove unused variable.
5025         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5026         variable.
5027         * common/tdesc.c (print_xml_feature::visit): Remove unused
5028         variable.
5029         * compile/compile-object-load.c (store_regs): Remove unused
5030         variables.
5031         * complaints.c (clear_complaints): Remove unused variable.
5032         * corelow.c (core_target_open): Remove unused variable.
5033         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5034         variable.
5035         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5036         variable.
5037         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5038         variable.
5039         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5040         variable.
5041         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5042         variable.
5043         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5044         variable.
5045         * ia64-tdep.c (examine_prologue): Remove unused variable.
5046         * infcall.c (run_inferior_call): Remove unused variable.
5047         * inferior.c (exit_inferior): Remove unused variable.
5048         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5049         * linespec.c (decode_line_2): Remove unused variable.
5050         * linux-nat.c (super_close): Remove.
5051         * linux-tdep.c (linux_info_proc): Remove unused variable.
5052         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5053         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5054         Remove unused variable.
5055         * parse.c (find_minsym_type_and_address): Remove unused variable.
5056         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5057         variable.
5058         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5059         variable.
5060         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5061         variables.
5062         * record-btrace.c (record_btrace_target::store_registers): Remove
5063         unused variable.
5064         (cmd_show_record_btrace_cpu): Remove unused variable.
5065         * riscv-tdep.c (riscv_register_reggroup_p)
5066         (riscv_push_dummy_call, riscv_return_value): Remove unused
5067         variable.
5068         * rust-exp.y (literal): Remove unused variable.
5069         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5070         unused variable.
5071         <STRUCTOP_ANONYMOUS>: Likewise.
5072         * s390-linux-tdep.c (s390_linux_init_abi_31)
5073         (s390_linux_init_abi_64): Remove unused variable.
5074         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5075         (file_select_thread, net_windows_open, _initialize_ser_windows):
5076         Remove unused variables.
5077         * symtab.c (find_pc_sect_line): Remove unused variable.
5078         * target-memory.c (compute_garbled_blocks): Remove unused
5079         variable.
5080         (target_write_memory_blocks): Remove unused variable.
5081         * target.c (target_stack::unpush): Remove unused variables.
5082         * tracepoint.c (start_tracing, all_tracepoint_actions)
5083         (merge_uploaded_trace_state_variables)
5084         (print_one_static_tracepoint_marker): Remove unused variable.
5085         * unittests/basic_string_view/element_access/char/1.cc (test01):
5086         Remove unused variable.
5087         * windows-nat.c (windows_continue, windows_add_all_dlls)
5088         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5089         Remove unused variables.
5090
5091 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5092
5093         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5094         attr_profile in HAVE_ELF.
5095         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5096         HAVE_ELF.
5097
5098 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5099
5100         * frame.c (frame_register_unwind): Change parameter name.
5101         (frame_unwind_register): Likewise.
5102         (frame_unwind_register_value): Likewise.
5103         (frame_unwind_register_signed): Likewise.
5104         (frame_unwind_register_unsigned): Likewise.
5105         * frame.h (frame_register_unwind): Likewise.
5106         (frame_unwind_register): Likewise.
5107         (frame_unwind_register_value): Likewise.
5108         (frame_unwind_register_signed): Likewise.
5109         (frame_unwind_register_unsigned): Likewise.
5110         (frame_unwind_arch): Likewise.
5111
5112 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5113
5114         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5115         ISA maintenance.
5116
5117 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5118
5119         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5120         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5121         hand.
5122
5123 2018-07-20  Keith Seitz  <keiths@redhat.com>
5124
5125         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5126         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5127         m_compunit_symtab, m_language>: Add "m_" prefix.
5128         Update all uses.
5129         * buildsym.c: Update all uses.
5130
5131 2018-07-20  Tom Tromey  <tom@tromey.com>
5132
5133         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5134         * buildsym.h (record_line_ftype): Remove typedef.
5135
5136 2018-07-20  Tom Tromey  <tom@tromey.com>
5137
5138         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5139         (end_expandable_symtab): Likewise.
5140         (end_symtab_get_static_block): Likewise.
5141         (end_symtab_from_static_block): Likewise.
5142         * buildsym-legacy.c (augment_type_symtab): Remove.
5143         (end_expandable_symtab): Remove.
5144         (end_symtab_get_static_block): Remove.
5145         (end_symtab_from_static_block): Remove.
5146
5147 2018-07-20  Tom Tromey  <tom@tromey.com>
5148
5149         * dwarf2read.c: Include buildsym.h.
5150         (struct dwarf2_cu) <builder>: New method.
5151         (fixup_go_packaging): Update.
5152         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5153         use scoped_free_pendings.
5154         (using_directives): Add "cu" parameter, remove "language".
5155         (read_import_statement, setup_type_unit_groups, )
5156         (read_func_scope, read_lexical_block_scope)
5157         (dwarf2_record_block_ranges, read_namespace): Update.
5158         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5159         (lnp_state_machine::handle_end_sequence): Update.
5160         (class lnp_state_machine) <m_cu>: New member.
5161         <m_record_line_callback>: Remove.
5162         <m_currently_recording_lines>: New member.
5163         (lnp_state_machine::handle_set_file): Update.
5164         (noop_record_line): Remove.
5165         (dwarf_record_line_p): Add cu parameter.
5166         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5167         (lnp_state_machine::record_line)
5168         (lnp_state_machine::lnp_state_machine)
5169         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5170         (dwarf_decode_lines): Update.
5171         (dwarf2_start_subfile): Add cu parameter.
5172         (dwarf2_start_symtab, new_symbol): Update.
5173         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5174         Remove dwarf2_per_objfile parameter.
5175         (dwarf_decode_macros): Update.
5176
5177 2018-07-20  Tom Tromey  <tom@tromey.com>
5178
5179         * stabsread.c (define_symbol): Update.
5180         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5181         * dwarf2read.c (new_symbol): Update.
5182         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5183         * cp-namespace.c: Include buildsym.h.
5184         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5185         * buildsym-legacy.c (get_buildsym_compunit): New function.
5186
5187 2018-07-20  Tom Tromey  <tom@tromey.com>
5188
5189         * xcoffread.c: Include buildsym-legacy.h.
5190         * windows-nat.c: Include buildsym-legacy.h.
5191         * stabsread.c: Include buildsym-legacy.h.
5192         * mdebugread.c: Include buildsym-legacy.h.
5193         * buildsym-legacy.h: New file.
5194         * buildsym-legacy.c: New file, from buildsym.c.
5195         * go32-nat.c: Include buildsym-legacy.h.
5196         * dwarf2read.c: Include buildsym-legacy.h.
5197         * dbxread.c: Include buildsym-legacy.h.
5198         * cp-namespace.c: Include buildsym-legacy.h.
5199         * coffread.c: Include buildsym-legacy.h.
5200         * buildsym.h: Move some contents to buildsym-legacy.h.
5201         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5202         buildsym-legacy.c.
5203         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5204
5205 2018-07-20  Tom Tromey  <tom@tromey.com>
5206
5207         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5208         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5209         (buildsym_compunit::buildsym_compunit)
5210         (buildsym_compunit::~buildsym_compunit)
5211         (buildsym_compunit::get_macro_table): Define.
5212
5213 2018-07-20  Tom Tromey  <tom@tromey.com>
5214
5215         * buildsym.c (reset_symtab_globals): Remove.
5216         (buildsym_compunit::end_symtab_from_static_block): Update.
5217         (buildsym_compunit::augment_type_symtab): Update.
5218         (end_symtab_from_static_block): Call free_buildsym_compunit.
5219         (augment_type_symtab, end_symtab, end_expandable_symtab):
5220         Likewise.
5221
5222 2018-07-20  Tom Tromey  <tom@tromey.com>
5223
5224         * arch-utils.c: Do not include buildsym.h.
5225         * mipsread.c: Do not include buildsym.h.
5226         * machoread.c: Do not include buildsym.h.
5227         * elfread.c: Do not include buildsym.h.
5228
5229 2018-07-20  Tom Tromey  <tom@tromey.com>
5230
5231         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5232         initialization.
5233         (buildsym_compunit): Add new constructor.
5234         (struct buildsym_compunit) <get_last_source_file, finish_block,
5235         record_block_range, start_subfile, patch_subfile_names,
5236         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5237         set_last_source_start_addr, get_last_source_start_addr,
5238         get_local_using_directives, set_local_using_directives,
5239         get_global_using_directives, outermost_context_p,
5240         get_current_context_stack, get_context_stack_depth,
5241         get_current_subfile, get_local_symbols, get_file_symbols,
5242         get_global_symbols, record_debugformat, record_producer,
5243         push_context, pop_context, end_symtab_get_static_block,
5244         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5245         New public methods.
5246         <record_pending_block, finish_block_internal, make_blockvector,
5247         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5248         private methods.
5249         Update all users.
5250
5251 2018-05-22  Tom Tromey  <tom@tromey.com>
5252
5253         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5254         parameter.
5255         (finish_block_internal): Update.
5256
5257 2018-07-20  Tom Tromey  <tom@tromey.com>
5258
5259         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5260         parameter.
5261         (finish_block_internal): Update.
5262
5263 2018-07-20  Tom Tromey  <tom@tromey.com>
5264
5265         * buildsym.h (EXTERN): Don't define or undef.
5266         * buildsym.c (EXTERN): Don't define.
5267
5268 2018-07-20  Tom Tromey  <tom@tromey.com>
5269
5270         * buildsym.c: Remove TODO comment.
5271
5272 2018-07-20  Tom Tromey  <tom@tromey.com>
5273
5274         * coffread.c (coff_symtab_read): Update.
5275         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5276         (xcoff_new_init): Update.
5277         * mipsread.c (mipscoff_new_init): Update.
5278         * mdebugread.c (mdebug_build_psymtabs): Update.
5279         * elfread.c (elf_new_init): Update.
5280         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5281         Update.
5282         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5283         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5284         (stabsect_build_psymtabs): Update.
5285         * buildsym.h (buildsym_init): Don't declare.
5286         * buildsym.c: Update comment.
5287         (prepare_for_building): Remove.
5288         (start_symtab, restart_symtab): Update.
5289         (reset_symtab_globals): Update comment.
5290         (buildsym_init): Remove.
5291
5292 2018-07-20  Tom Tromey  <tom@tromey.com>
5293
5294         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5295         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5296         (read_enum_type, common_block_start, common_block_end)
5297         (cleanup_undefined_types_1, finish_global_stabs): Update.
5298         * mdebugread.c (psymtab_to_symtab_1): Update.
5299         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5300         (read_lexical_block_scope, new_symbol): Update.
5301         * dbxread.c (process_one_symbol): Update.
5302         * coffread.c (coff_symtab_read, process_coff_symbol)
5303         (coff_read_enum_type): Update.
5304         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5305         declare.
5306         (get_local_symbols, get_file_symbols, get_global_symbols): New
5307         functions.
5308         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5309         m_global_symbols.
5310         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5311         (~scoped_free_pendings): Update.
5312         (finish_block, prepare_for_building, reset_symtab_globals)
5313         (end_symtab_get_static_block, end_symtab_with_blockvector)
5314         (augment_type_symtab, push_context): Update.
5315         (get_local_symbols, get_file_symbols, get_global_symbols): New
5316         functions.
5317         (buildsym_init): Update.
5318
5319 2018-07-20  Tom Tromey  <tom@tromey.com>
5320
5321         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5322         (process_full_type_unit): Likewise.
5323         (dwarf2_start_symtab): Set list_in_scope.
5324
5325 2018-07-20  Tom Tromey  <tom@tromey.com>
5326
5327         * dwarf2read.c (process_psymtab_comp_unit_reader)
5328         (build_type_psymtabs_reader): Do not set list_in_scope.
5329
5330 2018-07-20  Tom Tromey  <tom@tromey.com>
5331
5332         * buildsym.c (free_pendings): Remove.
5333         (add_symbol_to_list, scoped_free_pendings)
5334         (finish_block_internal, buildsym_init): Update.
5335
5336 2018-07-20  Tom Tromey  <tom@tromey.com>
5337
5338         * xcoffread.c (read_xcoff_symtab): Update.
5339         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5340         Update.
5341         * dbxread.c (process_one_symbol): Update.
5342         * coffread.c (coff_symtab_read): Update.
5343         * buildsym.h (finish_block): Update.
5344         * buildsym.c (finish_block): Remove "listhead" argument.
5345         (end_symtab_get_static_block): Update.
5346
5347 2018-07-20  Tom Tromey  <tom@tromey.com>
5348
5349         * buildsym.h (class scoped_free_pendings): Remove constructor.
5350         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5351         method.
5352         <m_pending_block_obstack, m_pending_blocks>: New members.
5353         (pending_block_obstack, pending_blocks): Remove.
5354         (scoped_free_pendings::scoped_free_pendings): Default.
5355         (~scoped_free_pendings): Update.
5356         (free_pending_blocks): Remove.
5357         (finish_block_internal, record_pending_block, make_blockvector)
5358         (end_symtab_get_static_block, augment_type_symtab, push_context)
5359         (buildsym_init): Update.
5360
5361 2018-07-20  Tom Tromey  <tom@tromey.com>
5362
5363         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5364         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5365         members.
5366         (pending_addrmap, pending_addrmap_obstack)
5367         (pending_addrmap_interesting): Remove.
5368         (scoped_free_pendings, record_block_range, make_blockvector)
5369         (prepare_for_building, reset_symtab_globals, buildsym_init):
5370         Update.
5371
5372 2018-07-20  Tom Tromey  <tom@tromey.com>
5373
5374         * xcoffread.c (process_linenos): Update.
5375         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5376         * mdebugread.c (psymtab_to_symtab_1): Update.
5377         * dwarf2read.c (setup_type_unit_groups)
5378         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5379         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5380         * dbxread.c (process_one_symbol): Update.
5381         * coffread.c (coff_symtab_read, enter_linenos)
5382         (process_coff_symbol): Update.
5383         * buildsym.h (current_subfile): Don't declare.
5384         (get_current_subfile): Declare.
5385         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5386         member.
5387         (start_subfile, free_buildsym_compunit, push_subfile)
5388         (prepare_for_building, start_symtab): Update.
5389         (get_current_subfile): New function.
5390
5391 2018-07-20  Tom Tromey  <tom@tromey.com>
5392
5393         * coffread.c (coff_symtab_read): Update.
5394         * xcoffread.c (read_xcoff_symtab): Update.
5395         * dwarf2read.c (new_symbol): Update.
5396         (read_func_scope, read_lexical_block_scope): Update.
5397         * dbxread.c (process_one_symbol): Update.
5398         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5399         (outermost_context_p): Remove macro.
5400         (outermost_context_p, get_current_context_stack)
5401         (get_context_stack_depth): Declare.
5402         (pop_context): Return struct context_stack.
5403         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5404         member.
5405         (context_stack_size): Remove.
5406         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5407         (prepare_for_building, end_symtab_get_static_block)
5408         (augment_type_symtab, push_context): Update.
5409         (pop_context): Return struct context_stack.
5410         (outermost_context_p, get_current_context_stack)
5411         (get_context_stack_depth): New functions.
5412         (buildsym_init): Update.
5413
5414 2018-07-20  Tom Tromey  <tom@tromey.com>
5415
5416         * rust-exp.y: Now a pure parser.  Update all rules.
5417         (%union): Move earlier.
5418         (current_parser, work_obstack): Remove globals.
5419         (rust_parser, ~rust_parser): Update.
5420         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5421         lex_character, lex_number, lex_string, lex_identifier,
5422         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5423         convert_name, convert_params_to_expression,
5424         convert_ast_to_expression, ast_basic_type, ast_operation,
5425         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5426         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5427         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5428         ast_array_type, ast_slice_type, ast_reference_type,
5429         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5430         (rust_parse): Update.
5431         (rustyyerror, rustyylex): Add parser parameter.
5432         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5433         (rust_lex_stringish_test, rust_lex_test_sequence)
5434         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5435         (rust_lex_test_push_back, rust_lex_tests): Update.
5436
5437 2018-07-19  Pedro Alves  <palves@redhat.com>
5438
5439         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5440         gdb::unique_xmalloc_ptr.
5441         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5442         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5443         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5444         copy-initialization.
5445         * guile/scm-pretty-print.c (ppscm_print_children): Use
5446         gdb::unique_xmalloc_ptr instead of cleanups.
5447         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5448         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5449         gdb::unique_xmalloc_ptr.
5450         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5451         Adjust to use gdb::unique_xmalloc_ptr.
5452         * guile/scm-utils.c (extract_arg): Adjust.
5453         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5454         gdb::unique_xmalloc_ptr instead of a cleanup.
5455
5456 2018-07-19  Tom Tromey  <tom@tromey.com>
5457
5458         * utils.c (do_value_free_to_mark)
5459         (make_cleanup_value_free_to_mark): Remove.
5460         * utils.h (make_cleanup_value_free_to_mark): Remove.
5461
5462 2018-07-19  Pedro Alves  <palves@redhat.com>
5463
5464         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5465         forwarding reference.
5466
5467 2018-07-18  Pedro Alves  <palves@redhat.com>
5468
5469         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5470         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5471         cleanup.
5472
5473 2018-07-18  Pedro Alves  <palves@redhat.com>
5474
5475         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5476         exceptions.
5477         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5478         (gdbscm_wrap): New.
5479         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5480         directly instead of a cleanup.
5481         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5482         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5483         (vlscm_binop_gdbthrow): New, factored out from ...
5484         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5485         (vlscm_rich_compare): Use gdbscm_wrap.
5486         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5487         instead of a cleanup.
5488         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5489         cleanup.
5490         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5491         Use xfree directly instead of a cleanup.
5492         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5493         Adjust to use gdbscm_wrap and scoped_value_mark.
5494         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5495         (gdbscm_value_address, gdbscm_value_dereference)
5496         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5497         scoped_value_mark.
5498         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5499         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5500         scoped_value_mark.
5501         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5502         gdbscm_wrap and scoped_value_mark.
5503         (gdbscm_value_to_string): Use xfree directly instead of a
5504         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5505         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5506         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5507         scoped_value_mark.
5508         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5509         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5510         scoped_value_mark.
5511         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5512         gdbscm_wrap.
5513
5514 2018-07-18  Tom de Vries  <tdevries@suse.de>
5515
5516         * findvar.c (default_read_var_value): Also resolve dynamic type for
5517         LOC_OPTIMIZED_OUT vars.
5518
5519 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5520
5521         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5522         decoding.
5523
5524 2018-07-17  Tom Tromey  <tom@tromey.com>
5525
5526         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5527         (compute_enum_list, pascm_set_param_value_x)
5528         (gdbscm_parameter_value): Update.
5529         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5530         (gdbscm_scm_to_host_string): Update.
5531         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5532         Update.
5533         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5534         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5535         * guile/scm-string.c (gdbscm_scm_to_string): Return
5536         unique_xmalloc_ptr.
5537         (gdbscm_scm_to_host_string): Likewise.
5538
5539 2018-07-17  Tom Tromey  <tom@tromey.com>
5540
5541         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5542         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5543         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5544         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5545         unique_xmalloc_ptr.
5546
5547 2018-07-17  Tom Tromey  <tom@tromey.com>
5548
5549         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5550         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5551         Update.
5552         * guile/scm-cmd.c (cmdscm_function): Update.
5553         * guile/scm-pretty-print.c
5554         (ppscm_print_exception_unless_memory_error): Update.
5555         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5556         Return unique_xmalloc_ptr.
5557
5558 2018-07-17  Tom Tromey  <tom@tromey.com>
5559
5560         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5561         Use string_printf.
5562
5563 2018-07-17  Jim Wilson  <jimw@sifive.com>
5564
5565         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5566         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5567         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5568         unecessary braces after EF_RISCV_RVC test.  Delete call to
5569         set_gdbarch_decr_pc_after_break.
5570
5571         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5572         RISCV_LAST_FP_REGNUM + 1.
5573         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5574
5575 2018-07-17  Tom Tromey  <tom@tromey.com>
5576
5577         * configure.ac: Remove --disable-gdbcli.
5578         * configure: Rebuild.
5579         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5580         (SUBDIR_CLI_CFLAGS): Remove.
5581         (SFILES): Use SUBDIR_CLI_SRCS.
5582         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5583
5584 2018-07-17  Tom Tromey  <tom@tromey.com>
5585
5586         PR gdb/18624:
5587         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5588
5589 2018-07-16  Jim Wilson  <jimw@sifive.com>
5590
5591         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5592
5593 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5594
5595         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5596         variable.
5597         (libunwind_frame_sniffer): Likewise.
5598         (libunwind_frame_prev_register): Likewise.
5599         (libunwind_sigtramp_frame_sniffer): Likewise.
5600         * ia64-tdep.c (ia64_access_reg): Likewise.
5601         (ia64_access_rse_reg): Likewise.
5602         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5603         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5604
5605 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5606
5607         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5608
5609 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5610
5611         * remote-sim.c (gdbsim_target::close,
5612         gdbsim_target::mourn_inferior): Remove unused variables.
5613
5614 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5615
5616         * ia64-tdep.c (ktab_buf): New global.
5617         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5618         (get_kernel_table): Adjust.
5619
5620 2018-07-16  Tom Tromey  <tom@tromey.com>
5621
5622         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5623         * dwarf2read.c (using_directives, new_symbol): Use
5624         outermost_context_p.
5625         * dbxread.c (process_one_symbol): Use outermost_context_p.
5626         * coffread.c (coff_symtab_read): Use outermost_context_p.
5627
5628 2018-07-16  Tom Tromey  <tom@tromey.com>
5629
5630         * dwarf2read.c (using_directives, read_func_scope)
5631         (read_lexical_block_scope): Update.
5632         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5633         * buildsym.h (local_using_directives, global_using_directives):
5634         Don't declare.
5635         (get_local_using_directives, set_local_using_directives)
5636         (get_global_using_directives): Declare.
5637         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5638         m_global_using_directives>: New members.
5639         (finish_block_internal, prepare_for_building)
5640         (reset_symtab_globals, end_symtab_get_static_block)
5641         (push_context): Update.
5642         (get_local_using_directives, set_local_using_directives)
5643         (get_global_using_directives): New functions.
5644         (buildsym_init): Update.
5645
5646 2018-07-16  Tom Tromey  <tom@tromey.com>
5647
5648         * xcoffread.c (xcoff_initial_scan): Don't call
5649         free_pending_blocks.
5650         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5651         * buildsym.h (class scoped_free_pendings): Add constructor.
5652         (free_pending_blocks): Don't declare.
5653         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5654         (free_pending_blocks): Now static.
5655
5656 2018-07-16  Tom Tromey  <tom@tromey.com>
5657
5658         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5659         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5660         member.
5661         (struct subfile_stack): Remove.
5662         (subfile_stack): Remove.
5663         (push_subfile, pop_subfile, buildsym_init): Update.
5664
5665 2018-07-16  Tom Tromey  <tom@tromey.com>
5666
5667         * buildsym.c (push_subfile): Use gdb_assert.
5668         (pop_subfile): Use gdb_assert.
5669
5670 2018-07-16  Tom Tromey  <tom@tromey.com>
5671
5672         * buildsym.h (merge_symbol_lists): Remove.
5673         * buildsym.c (merge_symbol_lists): Remove.
5674
5675 2018-07-16  Tom Tromey  <tom@tromey.com>
5676
5677         * stabsread.c (scan_file_globals): Update comment.
5678         * stabsread.h (scan_file_globals): Move from buildsym.h.
5679         * buildsym.h (scan_file_globals): Move to stabsread.h.
5680
5681 2018-07-16  Tom Tromey  <tom@tromey.com>
5682
5683         * xcoffread.c (xcoff_new_init): Update.
5684         * mipsread.c (mipscoff_new_init): Update.
5685         * mdebugread.c (mdebug_build_psymtabs): Update.
5686         * elfread.c (elf_new_init): Update.
5687         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5688         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5689         * buildsym.h (buildsym_new_init): Don't declare.
5690         * buildsym.c (buildsym_new_init): Remove.
5691
5692 2018-07-16  Tom Tromey  <tom@tromey.com>
5693
5694         * stabsread.h (within_function): Move from buildsym.h.
5695         * stabsread.c (start_stabs): Clear within_function.
5696         * coffread.c (coff_start_symtab): Clear within_function.
5697         * buildsym.h (within_function): Move to stabsread.h.
5698         * buildsym.c (prepare_for_building): Update.
5699
5700 2018-07-16  Tom Tromey  <tom@tromey.com>
5701
5702         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5703         * dwarf2read.c (dwarf2_start_symtab): Don't set
5704         processing_gcc_compilation.
5705         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5706
5707 2018-07-16  Tom Tromey  <tom@tromey.com>
5708
5709         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5710         (next_symbol_text_func): Move from buildsym.h.
5711         * stabsread.c (hashname): Move from buildsym.c.
5712         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5713         (next_symbol_text_func, hashname): Move to stabsread.h.
5714         * buildsym.c: Don't include bcache.h
5715         (hashname): Move to stasbread.c.
5716
5717 2018-07-16  Tom Tromey  <tom@tromey.com>
5718
5719         * buildsym.h (context_stack_size): Don't declare.
5720         * buildsym.c (context_stack_size): New global.
5721
5722 2018-07-16  Tom Tromey  <tom@tromey.com>
5723
5724         * dbxread.c (processing_acc_compilation): New global.
5725         * buildsym.h (processing_acc_compilation): Don't declare.
5726
5727 2018-07-16  Tom Tromey  <tom@tromey.com>
5728
5729         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5730         * dbxread.c (read_ofile_symtab): Update.
5731         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5732         * buildsym.h (last_source_start_addr): Remove.
5733         (set_last_source_start_addr, get_last_source_start_addr):
5734         Declare.
5735         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5736         parameter.
5737         (struct buildsym_compunit) <m_last_source_start_addr>: New
5738         member.
5739         (prepare_for_building): Remove start_addr parameter.
5740         (start_symtab, restart_symtab, end_symtab_get_static_block)
5741         (end_symtab_with_blockvector): Update.
5742         (set_last_source_start_addr, get_last_source_start_addr): New
5743         functions.
5744
5745 2018-07-16  Tom Tromey  <tom@tromey.com>
5746
5747         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5748         member.
5749         (have_line_numbers): Remove.
5750         (record_line, prepare_for_building, end_symtab_get_static_block)
5751         (augment_type_symtab): Update.
5752
5753 2018-07-16  Tom Tromey  <tom@tromey.com>
5754
5755         * buildsym.c (~buildsym_compunit): Free the macro table.
5756         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5757         methods.
5758         <m_pending_macros>: New member.
5759         (pending_macros): Remove.
5760         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5761         (reset_symtab_globals, end_symtab_get_static_block)
5762         (end_symtab_with_blockvector, augment_type_symtab)
5763         (buildsym_init): Update.
5764
5765 2018-07-16  Tom Tromey  <tom@tromey.com>
5766
5767         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5768         parameter.
5769         (buildsym_compunit::set_last_source_file): New method.
5770         <m_last_source_file>: New member.
5771         (prepare_for_building): Remove "name" parameter.
5772         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5773         (last_source_file): Remove.
5774         (set_last_source_file, get_last_source_file): Update.
5775
5776 2018-07-16  Tom Tromey  <tom@tromey.com>
5777
5778         * buildsym.c (prepare_for_building): Add assert.
5779
5780 2018-07-16  Tom Tromey  <tom@tromey.com>
5781
5782         * buildsym.c (~buildsym_compunit): Update.
5783         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5784         (start_subfile, patch_subfile_names)
5785         (end_symtab_with_blockvector): Update.
5786
5787 2018-07-16  Tom Tromey  <tom@tromey.com>
5788
5789         * buildsym.c (struct buildsym_compunit): Add constructor,
5790         destructor, initializers.
5791         (start_buildsym_compunit): Remove.
5792         (free_buildsym_compunit): Use "delete".
5793         (start_symtab, restart_symtab): Use "new".
5794
5795 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5796
5797         * symfile.c (set_objfile_default_section_offset): Remove struct
5798         keyword.
5799
5800 2018-07-14  Stafford Horne  <shorne@gmail.com>
5801
5802         * (Responsible Maintainers): Add myself as or1k maintainer.
5803
5804 2018-07-13  Tom Tromey  <tom@tromey.com>
5805
5806         * symfile.c (set_objfile_default_section_offset): Use extra braces
5807         around initializer.
5808
5809 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5810
5811         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5812         non-branching basr.
5813
5814 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5815
5816         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5817         unittests/cli-utils-selftests.c
5818         * unittests/cli-utils-selftests.c: New file.
5819
5820 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5821
5822         * NEWS: Mention new commands. Mention change to 'thread apply'.
5823
5824 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5825
5826         * thread.c (thr_try_catch_cmd): New function.
5827         (thread_apply_all_command): Handle qcs flags.
5828         (thread_apply_command): Handle qcs flags.
5829         (taas_command): New function.
5830         (tfaas_command): New function.
5831         (_initialize_thread): Update to setup the new commands 'taas
5832         and 'tfaas'. Change doc string for 'thread apply'.
5833
5834 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5835
5836         * stack.c: (trailing_outermost_frame): New function, mostly
5837         extracted from backtrace_command_1.
5838         (leading_innermost_frame): New function.
5839         (backtrace_command_1): Update to call trailing_outermost_frame.
5840         (frame_apply_command_count): New function.
5841         (frame_apply_level_command): New function.
5842         (frame_apply_all_command): New function.
5843         (frame_apply_command): New function.
5844         (faas_command): New function.
5845         (frame_cmd_list): New variable.
5846         (_initialize_stack): Update to setup the new commands 'frame apply'
5847         and 'faas'.
5848
5849 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5850
5851         * cli-utils.c (number_or_range_parser::get_number): Only handle
5852         numbers or convenience var as numbers.
5853         (parse_flags): New function.
5854         (parse_flags_qcs): New function.
5855         (number_or_range_parser::finished): Ensure parsing end is detected
5856         before end of string.
5857         * cli-utils.h (parse_flags): New function.
5858         (parse_flags_qcs): New function.
5859         (number_or_range_parser): Remove m_finished bool.
5860         (number_or_range_parser::skip_range): Set m_in_range to false.
5861
5862 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5863
5864         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5865         on Windows.
5866
5867 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5868             Jan Kratochvil  <jan.kratochvil@redhat.com>
5869             Paul Fertser  <fercerpav@gmail.com>
5870             Tsutomu Seki  <sekiriki@gmail.com>
5871             Pedro Alves  <palves@redhat.com>
5872
5873         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5874         'unittests/parse-connection-spec-selftests.c'.
5875         (COMMON_SFILES): Add 'common/netstuff.c'.
5876         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5877         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5878         * common/netstuff.c: New file.
5879         * common/netstuff.h: New file.
5880         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5881         (wait_for_connect): Update comment.  New parameter
5882         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5883         Use 'sock' directly instead of 'scb->fd'.
5884         (try_connect): New function, with code from 'net_open'.
5885         (net_open): Rewrite main loop to deal with multiple
5886         sockets/addresses.  Handle IPv6-style hostnames; implement
5887         support for IPv6 connections.
5888         * unittests/parse-connection-spec-selftests.c: New file.
5889
5890 2018-07-11  Pedro Alves  <palves@redhat.com>
5891
5892         PR gdb/23377
5893         * remote.c (remote_target::remote_detach_pid): Call
5894         set_current_process.
5895
5896 2018-07-11  Pedro Alves  <palves@redhat.com>
5897
5898         * h8300-tdep.c (h8300_gdbarch_init): Remove
5899         set_gdbarch_ecoff_reg_to_regnum calls.
5900
5901 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5902
5903         PR c++/23373
5904         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5905         offsets/sizes for static members of a class/struct.
5906
5907 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5908
5909         * target-descriptions.c (tdesc_register_bitsize): Rename.
5910         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5911         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5912         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5913
5914 2018-07-10  Tom Tromey  <tom@tromey.com>
5915
5916         * breakpoint.c (moribund_locations): Now static and a
5917         std::vector.
5918         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5919         (build_bpstat_chain, update_global_location_list)
5920         (breakpoint_retire_moribund): Update.
5921         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5922         VEC.
5923
5924 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5925
5926         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5927         (riscv_register_reggroup_p): Use new function, remove unneeded
5928         parenthesis.
5929         (riscv_push_dummy_call): Extend assert to compare against xlen or
5930         flen based on register type.
5931
5932 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5933
5934         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5935
5936 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5937
5938         * remote.c (show_hardware_watchpoint_limit): New function.
5939         (show_hardware_watchpoint_length_limit): New function.
5940         (show_hardware_breakpoint_limit): New function.
5941         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5942         where appropriate, update help text.
5943
5944 2018-07-09  Tom Tromey  <tom@tromey.com>
5945
5946         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5947         (CLIBS): Don't mention NAT_CLIBS.
5948
5949 2018-07-09  Tom Tromey  <tom@tromey.com>
5950
5951         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5952         (LIBGDB_OBS, clean mostlyclean): Update.
5953         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5954
5955 2018-07-09  Tom Tromey  <tom@tromey.com>
5956
5957         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5958         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5959         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5960
5961 2018-07-09  Tom Tromey  <tom@tromey.com>
5962
5963         * Makefile.in (ALLDEPFILES): Remove exec.c.
5964         (COMMON_OBS): Remove exec.o.
5965         (COMMON_SFILES): Add exec.c.
5966
5967 2018-07-09  Tom Tromey  <tom@tromey.com>
5968
5969         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5970
5971 2018-07-09  Tom Tromey  <tom@tromey.com>
5972
5973         * Makefile.in (clean mostlyclean): Remove stamp-version.
5974         (version.c): Depend on stamp-version.
5975         (stamp-version): New rule, from version.c rule.
5976
5977 2018-07-09  Tom Tromey  <tom@tromey.com>
5978
5979         * Makefile.in (init.c): Depend on stamp-init.
5980         (stamp-init): New rule, from init.c rule.
5981         (clean mostlyclean): Remove stamp-init.
5982
5983 2018-07-09  Tom Tromey  <tom@tromey.com>
5984
5985         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5986         SUBDIR_GCC_COMPILE_SRCS.
5987
5988 2018-07-09  Tom Tromey  <tom@tromey.com>
5989
5990         * Makefile.in (init.c): Remove some unused sed rules.
5991
5992 2018-07-09  Tom Tromey  <tom@tromey.com>
5993
5994         * Makefile.in (TSOBS): Remove.
5995         (INIT_FILES): Update.
5996         (LIBGDB_OBS): Update.
5997         (COMMON_SFILES): Add inflow.c.
5998         (SFILES): Remove inflow.c.
5999
6000 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6001
6002         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6003
6004 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6005
6006         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6007         get_saveloc_name, is_signal_frame_name, step_name,
6008         init_remote_name, create_addr_space_name,
6009         destroy_addr_space_name, search_unwind_table_name,
6010         find_dyn_list_name): Constify.
6011
6012 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6013
6014         * darwin-nat.c (darwin_pthread_kill): New function.
6015         (darwin_resume_thread): Use darwin_pthread_kill.
6016
6017 2018-07-05  Tom de Vries  <tdevries@suse.de>
6018
6019         * macroexp.c (macro_buffer) <operator=>: New member function.
6020
6021 2018-07-04  Tom Tromey  <tom@tromey.com>
6022
6023         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6024
6025 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6026
6027         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6028         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6029         * maint.c: Likewise.
6030         * top.c: Likewise.
6031
6032 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6033
6034         * NEWS: Create a new section for the next release branch.
6035         Rename the section of the current branch, now that it has
6036         been cut.
6037
6038 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6039
6040         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6041         * version.in: Bump version to 8.2.50.DATE-git.
6042
6043 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6044             Pedro Alves  <palves@redhat.com>
6045
6046         * linux-nat.c (linux_init_ptrace): Rename to ...
6047         (linux_init_ptrace_procfs): ... this.  Call
6048         linux_proc_init_warnings.
6049         (linux_nat_target::post_attach)
6050         (linux_nat_target::post_startup_inferior): Adjust.
6051         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6052         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6053
6054 2018-07-04  Tom de Vries  <tdevries@suse.de>
6055
6056         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6057         check ...
6058         (read_comp_unit_head): ... here.
6059
6060 2018-07-03  Tom Tromey  <tom@tromey.com>
6061
6062         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6063         (stop_tracing, tstatus_command)
6064         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6065         (print_one_static_tracepoint_marker): Update.
6066         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6067         std::vector.
6068         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6069         VEC.
6070         (all_tracepoints, static_tracepoints_here): Return std::vector.
6071
6072 2018-07-03  Tom Tromey  <tom@tromey.com>
6073
6074         * common/ptid.c (ptid_equal): Remove.
6075         * common/ptid.h (ptid_equal): Don't declare.
6076         * ada-tasks.c: Update.
6077         * breakpoint.c: Update.
6078         * common/agent.c: Update.
6079         * corelow.c: Update.
6080         * darwin-nat-info.c: Update.
6081         * darwin-nat.c: Update.
6082         * dcache.c: Update.
6083         * dtrace-probe.c: Update.
6084         * dummy-frame.c: Update.
6085         * fbsd-nat.c: Update.
6086         * frame.c: Update.
6087         * gdbthread.h: Update.
6088         * gnu-nat.c: Update.
6089         * go32-nat.c: Update.
6090         * inf-loop.c: Update.
6091         * inf-ptrace.c: Update.
6092         * infcall.c: Update.
6093         * infcmd.c: Update.
6094         * inflow.c: Update.
6095         * infrun.c: Update.
6096         * linux-fork.c: Update.
6097         * linux-nat.c: Update.
6098         * linux-thread-db.c: Update.
6099         * mi/mi-cmd-var.c: Update.
6100         * mi/mi-interp.c: Update.
6101         * mi/mi-main.c: Update.
6102         * nto-procfs.c: Update.
6103         * ppc-linux-tdep.c: Update.
6104         * procfs.c: Update.
6105         * python/py-inferior.c: Update.
6106         * python/py-record-btrace.c: Update.
6107         * python/py-record.c: Update.
6108         * ravenscar-thread.c: Update.
6109         * regcache.c: Update.
6110         * remote-sim.c: Update.
6111         * remote.c: Update.
6112         * sol-thread.c: Update.
6113         * solib.c: Update.
6114         * target.c: Update.
6115         * tui/tui-stack.c: Update.
6116         * varobj.c: Update.
6117         * windows-nat.c: Update.
6118         * windows-tdep.c: Update.
6119
6120 2018-07-03  Tom Tromey  <tom@tromey.com>
6121
6122         * common/ptid.c (ptid_match): Remove.
6123         * common/ptid.h (ptid_match): Don't declare.
6124         * fbsd-nat.c: Update.
6125         * infcmd.c: Update.
6126         * infrun.c: Update.
6127         * linux-nat.c: Update.
6128         * record-btrace.c: Update.
6129         * regcache.c: Update.
6130         * remote.c: Update.
6131
6132 2018-07-03  Tom Tromey  <tom@tromey.com>
6133
6134         * common/ptid.c (ptid_tid_p): Remove.
6135         * common/ptid.h (ptid_tid_p): Don't declare.
6136         * sol-thread.c: Update.
6137
6138 2018-07-03  Tom Tromey  <tom@tromey.com>
6139
6140         * common/ptid.c (ptid_lwp_p): Remove.
6141         * common/ptid.h (ptid_lwp_p): Don't declare.
6142         * fbsd-nat.c: Update.
6143         * linux-nat.c: Update.
6144         * nat/linux-procfs.c: Update.
6145         * nat/x86-linux-dregs.c: Update.
6146         * sol-thread.c: Update.
6147
6148 2018-07-03  Tom Tromey  <tom@tromey.com>
6149
6150         * common/ptid.c (ptid_is_pid): Remove.
6151         * common/ptid.h (ptid_is_pid): Don't declare.
6152         * infrun.c: Update.
6153         * linux-nat.c: Update.
6154         * mi/mi-interp.c: Update.
6155         * remote.c: Update.
6156         * thread.c: Update.
6157
6158 2018-07-03  Tom Tromey  <tom@tromey.com>
6159
6160         * common/ptid.c (ptid_get_tid): Remove.
6161         * common/ptid.h (ptid_get_tid): Don't declare.
6162         * ada-tasks.c: Update.
6163         * aix-thread.c: Update.
6164         * bsd-uthread.c: Update.
6165         * darwin-nat.c: Update.
6166         * fbsd-nat.c: Update.
6167         * i386-darwin-nat.c: Update.
6168         * infrun.c: Update.
6169         * linux-tdep.c: Update.
6170         * nto-procfs.c: Update.
6171         * ppc-ravenscar-thread.c: Update.
6172         * python/py-infthread.c: Update.
6173         * ravenscar-thread.c: Update.
6174         * sol-thread.c: Update.
6175         * sparc-ravenscar-thread.c: Update.
6176         * windows-nat.c: Update.
6177
6178 2018-07-03  Tom Tromey  <tom@tromey.com>
6179
6180         * common/ptid.c (ptid_get_lwp): Remove.
6181         * common/ptid.h (ptid_get_lwp): Don't declare.
6182         * aarch64-linux-nat.c: Update.
6183         * ada-tasks.c: Update.
6184         * aix-thread.c: Update.
6185         * amd64-linux-nat.c: Update.
6186         * arm-linux-nat.c: Update.
6187         * corelow.c: Update.
6188         * fbsd-nat.c: Update.
6189         * fbsd-tdep.c: Update.
6190         * gnu-nat.c: Update.
6191         * i386-cygwin-tdep.c: Update.
6192         * i386-gnu-nat.c: Update.
6193         * i386-linux-nat.c: Update.
6194         * ia64-linux-nat.c: Update.
6195         * inf-ptrace.c: Update.
6196         * infrun.c: Update.
6197         * linux-fork.c: Update.
6198         * linux-nat.c: Update.
6199         * linux-tdep.c: Update.
6200         * linux-thread-db.c: Update.
6201         * mips-linux-nat.c: Update.
6202         * nat/aarch64-linux-hw-point.c: Update.
6203         * nat/aarch64-linux.c: Update.
6204         * nat/linux-btrace.c: Update.
6205         * nat/linux-osdata.c: Update.
6206         * nat/linux-procfs.c: Update.
6207         * nat/x86-linux-dregs.c: Update.
6208         * obsd-nat.c: Update.
6209         * ppc-fbsd-nat.c: Update.
6210         * ppc-linux-nat.c: Update.
6211         * procfs.c: Update.
6212         * python/py-infthread.c: Update.
6213         * ravenscar-thread.c: Update.
6214         * remote.c: Update.
6215         * s390-linux-nat.c: Update.
6216         * sol-thread.c: Update.
6217         * sol2-tdep.c: Update.
6218         * spu-linux-nat.c: Update.
6219         * x86-linux-nat.c: Update.
6220         * xtensa-linux-nat.c: Update.
6221
6222 2018-07-03  Tom Tromey  <tom@tromey.com>
6223
6224         * common/ptid.c (ptid_get_pid): Remove.
6225         * common/ptid.h (ptid_get_pid): Don't declare.
6226         * aarch64-linux-nat.c: Update.
6227         * ada-lang.c: Update.
6228         * aix-thread.c: Update.
6229         * alpha-bsd-nat.c: Update.
6230         * amd64-fbsd-nat.c: Update.
6231         * amd64-linux-nat.c: Update.
6232         * arm-linux-nat.c: Update.
6233         * arm-nbsd-nat.c: Update.
6234         * auxv.c: Update.
6235         * break-catch-syscall.c: Update.
6236         * breakpoint.c: Update.
6237         * bsd-uthread.c: Update.
6238         * corelow.c: Update.
6239         * ctf.c: Update.
6240         * darwin-nat.c: Update.
6241         * fbsd-nat.c: Update.
6242         * fbsd-tdep.c: Update.
6243         * gcore.c: Update.
6244         * gnu-nat.c: Update.
6245         * hppa-nbsd-nat.c: Update.
6246         * hppa-obsd-nat.c: Update.
6247         * i386-fbsd-nat.c: Update.
6248         * ia64-linux-nat.c: Update.
6249         * inf-ptrace.c: Update.
6250         * infcmd.c: Update.
6251         * inferior.c: Update.
6252         * inferior.h: Update.
6253         * inflow.c: Update.
6254         * infrun.c: Update.
6255         * linux-fork.c: Update.
6256         * linux-nat.c: Update.
6257         * linux-tdep.c: Update.
6258         * linux-thread-db.c: Update.
6259         * m68k-bsd-nat.c: Update.
6260         * mi/mi-interp.c: Update.
6261         * mi/mi-main.c: Update.
6262         * mips-linux-nat.c: Update.
6263         * mips-nbsd-nat.c: Update.
6264         * mips64-obsd-nat.c: Update.
6265         * nat/aarch64-linux-hw-point.c: Update.
6266         * nat/aarch64-linux.c: Update.
6267         * nat/linux-btrace.c: Update.
6268         * nat/linux-osdata.c: Update.
6269         * nat/linux-procfs.c: Update.
6270         * nat/x86-linux-dregs.c: Update.
6271         * nto-procfs.c: Update.
6272         * obsd-nat.c: Update.
6273         * ppc-linux-nat.c: Update.
6274         * ppc-nbsd-nat.c: Update.
6275         * ppc-obsd-nat.c: Update.
6276         * proc-service.c: Update.
6277         * procfs.c: Update.
6278         * python/py-inferior.c: Update.
6279         * python/py-infthread.c: Update.
6280         * ravenscar-thread.c: Update.
6281         * record.c: Update.
6282         * remote-sim.c: Update.
6283         * remote.c: Update.
6284         * rs6000-nat.c: Update.
6285         * s390-linux-nat.c: Update.
6286         * sh-nbsd-nat.c: Update.
6287         * sol-thread.c: Update.
6288         * sparc-nat.c: Update.
6289         * sparc64-tdep.c: Update.
6290         * spu-linux-nat.c: Update.
6291         * spu-tdep.c: Update.
6292         * target-debug.h: Update.
6293         * target.c: Update.
6294         * thread.c: Update.
6295         * tid-parse.c: Update.
6296         * tracefile-tfile.c: Update.
6297         * vax-bsd-nat.c: Update.
6298         * windows-nat.c: Update.
6299         * x86-linux-nat.c: Update.
6300         * x86-nat.c: Update.
6301
6302 2018-07-03  Tom Tromey  <tom@tromey.com>
6303
6304         * common/ptid.c (pid_to_ptid): Remove.
6305         * common/ptid.h (pid_to_ptid): Don't declare.
6306         * aix-thread.c: Update.
6307         * arm-linux-nat.c: Update.
6308         * common/ptid.c: Update.
6309         * common/ptid.h: Update.
6310         * corelow.c: Update.
6311         * ctf.c: Update.
6312         * darwin-nat.c: Update.
6313         * fbsd-nat.c: Update.
6314         * fork-child.c: Update.
6315         * gnu-nat.c: Update.
6316         * go32-nat.c: Update.
6317         * inf-ptrace.c: Update.
6318         * infcmd.c: Update.
6319         * inferior.c: Update.
6320         * infrun.c: Update.
6321         * linux-fork.c: Update.
6322         * linux-nat.c: Update.
6323         * nat/aarch64-linux-hw-point.c: Update.
6324         * nat/fork-inferior.c: Update.
6325         * nat/x86-linux-dregs.c: Update.
6326         * nto-procfs.c: Update.
6327         * obsd-nat.c: Update.
6328         * procfs.c: Update.
6329         * progspace.c: Update.
6330         * remote.c: Update.
6331         * rs6000-nat.c: Update.
6332         * s390-linux-nat.c: Update.
6333         * sol-thread.c: Update.
6334         * spu-linux-nat.c: Update.
6335         * target.c: Update.
6336         * top.c: Update.
6337         * tracefile-tfile.c: Update.
6338         * windows-nat.c: Update.
6339
6340 2018-07-03  Tom Tromey  <tom@tromey.com>
6341
6342         * common/ptid.h (ptid_build): Don't declare.
6343         * common/ptid.c (ptid_build): Remove.
6344         * aix-thread.c: Update.
6345         * bsd-kvm.c: Update.
6346         * bsd-uthread.c: Update.
6347         * common/agent.c: Update.
6348         * common/ptid.c: Update.
6349         * common/ptid.h: Update.
6350         * corelow.c: Update.
6351         * darwin-nat.c: Update.
6352         * fbsd-nat.c: Update.
6353         * gnu-nat.c: Update.
6354         * linux-fork.c: Update.
6355         * linux-nat.c: Update.
6356         * linux-thread-db.c: Update.
6357         * nat/linux-osdata.c: Update.
6358         * nat/linux-procfs.c: Update.
6359         * nto-procfs.c: Update.
6360         * obsd-nat.c: Update.
6361         * proc-service.c: Update.
6362         * procfs.c: Update.
6363         * ravenscar-thread.c: Update.
6364         * remote-sim.c: Update.
6365         * remote.c: Update.
6366         * sol-thread.c: Update.
6367         * target.c: Update.
6368         * windows-nat.c: Update.
6369
6370 2018-07-03  Tom Tromey  <tom@tromey.com>
6371
6372         * infrun.c (follow_exec): Use exit_inferior_silent.
6373         * inferior.c (exit_inferior_num_silent): Remove.
6374         * inferior.h (exit_inferior_num_silent): Don't declare.
6375
6376 2018-07-03  Tom Tromey  <tom@tromey.com>
6377
6378         PR cli/23340:
6379         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6380         inferior_ptid on error.
6381
6382 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6383             Simon Marchi  <simon.marchi@polymtl.ca>
6384
6385         PR tdep/8282
6386         * disasm.h (gdb_disassembler): Add
6387         `m_disassembler_options_holder'. member
6388         * disasm.c (get_all_disassembler_options): New function.
6389         (gdb_disassembler::gdb_disassembler): Use it.
6390         (gdb_buffered_insn_length_init_dis): Likewise.
6391         (gdb_buffered_insn_length): Adjust accordingly.
6392         (set_disassembler_options): Handle options with arguments.
6393         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6394         line if showing options with descriptions.
6395         (disassembler_options_completer): Adapt to using the
6396         `disasm_options_and_args_t' structure.
6397         * mips-tdep.c (mips_disassembler_options): New variable.
6398         (mips_disassembler_options_o32): Likewise.
6399         (mips_disassembler_options_n32): Likewise.
6400         (mips_disassembler_options_n64): Likewise.
6401         (gdb_print_insn_mips): Don't set `disassembler_options'.
6402         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6403         functions.
6404         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6405         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6406         `gdbarch_disassembler_options_implicit' and
6407         `gdbarch_valid_disassembler_options'.
6408         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6409         `disasm_options_and_args_t' structure.
6410         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6411         method.
6412         (valid_disassembler_options): Switch from `disasm_options_t' to
6413         the `disasm_options_and_args_t' structure.
6414         * NEWS: Document `set disassembler-options' support for the MIPS
6415         target.
6416         * gdbarch.h: Regenerate.
6417         * gdbarch.c: Regenerate.
6418
6419 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6420
6421         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6422
6423 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6424
6425         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6426         parameter in call to amd64_target_description.
6427         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6428         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6429         (amd64fbsd_init_abi): Likewise.
6430         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6431         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6432         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6433         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6434
6435 2018-06-29  Pedro Alves  <palves@redhat.com>
6436
6437         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6438         "segments" parameter.
6439         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6440         (_initialize_amd64_tdep): Update call to
6441         amd64_create_target_description.
6442         (amd64_target_description): Add "segments" parameter.  Adjust
6443         the implementation to use it.
6444         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6445         call to amd64_create_target_description.
6446         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6447         * gdb/arch/amd64.h (amd64_create_target_description): Add
6448         "segments" register.
6449         * gdb/arch/amd64.c (amd64_create_target_description): Add
6450         "segments" parameter.  Call create_feature_i386_64bit_segments
6451         only if SEGMENTS is true.
6452         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6453         call to amd64_create_target_description.
6454
6455 2018-06-29  Pedro Alves  <palves@redhat.com>
6456
6457         * thread.c (thread_target_id_str): New, factored out from ...
6458         (print_thread_info_1): ... here.  Use it to compute the max
6459         "Target Id" column width.
6460
6461 2018-06-29  Pedro Alves  <palves@redhat.com>
6462
6463         * remote.c (remote_target::extra_thread_info): Delete
6464         'display_buf' and 'n' locals.  from the cache, regardless of
6465         packet mechanims is in use.  Use cache for qThreadExtra and qP
6466         methods too.
6467
6468 2018-06-29  Pedro Alves  <palves@redhat.com>
6469
6470         * blockframe.c (find_pc_sect_containing_function): New function.
6471         * breakpoint.c (print_breakpoint_location): Don't call
6472         find_pc_sect_function.
6473         * linespec.c (create_sals_line_offset): Record the location's
6474         symbol in the sal.
6475         * linespec.c (convert_address_location_to_sals): Fill in sal's
6476         symbol with find_pc_sect_containing_function.
6477         * symtab.c (find_function_start_sal): Rename to ...
6478         (find_function_start_sal_1): ... this.
6479         (find_function_start_sal): Reimplement as wrapper around
6480         find_function_start_sal_1, and use
6481         find_pc_sect_containing_function to fill in the sal's symbol.
6482         (find_function_start_sal(symbol*, bool)): Adjust.
6483         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6484         comments.
6485         (find_pc_sect_containing_function): Declare.
6486
6487 2018-06-29  Pedro Alves  <palves@redhat.com>
6488
6489         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6490         true if the the location has no symbol.
6491
6492 2018-06-28  Tom Tromey  <tom@tromey.com>
6493
6494         * NEWS: Mention --enable-codesign.
6495         * silent-rules.mk (ECHO_SIGN): New variable.
6496         * configure.ac: Add --enable-codesign.
6497         * configure: Rebuild.
6498         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6499         (gdb$(EXEEXT)): Optionally invoke codesign.
6500
6501 2018-06-28  Pedro Alves  <palves@redhat.com>
6502
6503         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6504         comments.
6505         (switch_to_thread_no_regs): Adjust comment.
6506         * infcmd.c (stop_pc): Delete.
6507         (post_create_inferior, info_program_command): Replace references
6508         to stop_pc with references to thread_info->suspend.stop_pc.
6509         * inferior.h (stop_pc): Delete declaration.
6510         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6511         (handle_inferior_event_1, handle_signal_stop)
6512         (process_event_stop_test, keep_going_stepped_thread)
6513         (handle_step_into_function, handle_step_into_function_backward)
6514         (print_stop_location): Replace references to stop_pc with
6515         references to thread_info->suspend.stop_pc.
6516         (struct infcall_suspend_state) <stop_pc>: Delete field.
6517         (save_infcall_suspend_state, restore_infcall_suspend_state):
6518         Remove references to inf_stat->stop_pc.
6519         * linux-fork.c (fork_load_infrun_state): Likewise.
6520         * record-btrace.c (record_btrace_set_replay): Likewise.
6521         * record-full.c (record_full_goto_entry): Likewise.
6522         * remote.c (print_one_stopped_thread): Likewise.
6523         * target.c (target_resume): Extend comment.
6524         * thread.c (set_executing_thread): New.
6525         (set_executing): Use it.
6526         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6527         Remove references to stop_pc.
6528
6529 2018-06-28  Pedro Alves  <palves@redhat.com>
6530
6531         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6532         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6533
6534 2018-06-28  Tom Tromey  <tom@tromey.com>
6535
6536         * coffread.c (coff_symfile_finish): Update.
6537         * xcoffread.c (xcoff_symfile_finish): Update.
6538         * elfread.c (elf_symfile_finish): Update.
6539         * symfile.h (dwarf2_free_objfile): Don't declare.
6540         * dwarf2read.c (_initialize_dwarf2_read): Use
6541         register_objfile_data_with_cleanup.
6542         (dwarf2_free_objfile): Now static.  Change signature.
6543
6544 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6545
6546         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6547         option "-o" to add-symbol-file-load to add an offset to each
6548         section's load address.
6549         * symfile.c (set_objfile_default_section_offset): New function.
6550
6551 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6552
6553         * symfile.c (add_symbol_file_command): Make sure that sections
6554         with the same name are sorted in the same order.
6555
6556 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6557
6558         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6559         require the second argument.  If omitted, load sections at the
6560         addresses specified in the file.
6561
6562 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6563
6564         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6565         (_initialize_symfile): Add option "-o" to symbol-file to add an
6566         offset to each section of the symbol file.
6567
6568 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6569
6570         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6571
6572 2018-06-27  Tom Tromey  <tom@tromey.com>
6573
6574         * stack.c (_initialize_stack): Update "func" help text.
6575
6576 2018-06-27  Tom Tromey  <tom@tromey.com>
6577
6578         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6579         std::vector.
6580         (unwind_infopy_str, pyuw_create_unwind_info)
6581         (unwind_infopy_add_saved_register, pyuw_sniffer)
6582         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6583         Update.
6584         (struct saved_reg): Add constructor.
6585         <value>: Now a gdbpy_ref<>.
6586
6587 2018-06-27  Tom Tromey  <tom@tromey.com>
6588
6589         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6590
6591 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6592
6593         * gdb-gdb.py.in: Format using autopep8.
6594
6595 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6596
6597         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6598         (type_lookup_function): Recognize CORE_ADDR values.
6599
6600 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6601
6602         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6603         print tag_name.
6604
6605 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6606
6607         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6608         <__lt__>: Add.
6609
6610 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6611
6612         * gdb-gdb.py: Move to...
6613         * gdb-gdb.py.in: ... here.
6614         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6615         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6616         dependencies.
6617         (distclean): Remove gdb-gdb.py when cleaning.
6618         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6619         * configure: Re-generate.
6620
6621 2018-06-27  Pedro Alves  <palves@redhat.com>
6622
6623         * proc-service.c (get_ps_regcache): New.
6624         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6625         (ps_lsetfpregs): Use it.
6626
6627 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6628
6629         PR gdb/21695
6630         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6631         declaration.
6632         (dwarf_decode_lines_1): Adjust.
6633
6634 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6635
6636         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6637         override.
6638         <info_proc>: Likewise.
6639
6640 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6641
6642         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6643         to windows_fetch_one_register, and only handle the case of
6644         fetching one register.  Move the code that reloads the context
6645         and iterates over all registers if R is negative to...
6646         (windows_nat_target::fetch_registers): ... here.
6647         (do_windows_store_inferior_registers): Rename to
6648         windows_store_one_register, and only handle the case of storing
6649         one register.  Move the code that handles the case where r is
6650         negative to...
6651         (windows_nat_target::store_registers) ... here.
6652
6653 2018-06-26  Tom Tromey  <tom@tromey.com>
6654
6655         PR rust/22574:
6656         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6657         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6658         Update.
6659         (rust_internal_print_type): Add podata parameter.
6660         (rust_print_type): Update.
6661
6662 2018-06-26  Tom Tromey  <tom@tromey.com>
6663
6664         * typeprint.h (struct print_offset_data) <update, finish,
6665         maybe_print_hole>: New methods.
6666         <indentation>: New constant.
6667         * typeprint.c (print_offset_data::indentation): Define.
6668         (print_offset_data::maybe_print_hole, print_offset_data::update)
6669         (print_offset_data::finish): Move from c-typeprint.c and rename.
6670         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6671         (print_spaces_filtered_with_print_options): Update.
6672         (c_print_type_union_field_offset, maybe_print_hole)
6673         (c_print_type_struct_field_offset): Move to typeprint.c and
6674         rename.
6675         (c_type_print_base_struct_union): Update.
6676
6677 2018-06-25  Pedro Alves  <palves@redhat.com>
6678
6679         * gdbthread.h (thread_info_ref, delete_thread)
6680         (delete_thread_silent, first_thread_of_inferior)
6681         (any_thread_of_inferior, switch_to_thread)
6682         (enable_thread_stack_temporaries)
6683         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6684         (get_last_thread_stack_temporary)
6685         (value_in_thread_stack_temporaries, can_access_registers_thread):
6686         Spell out "struct thread_info" instead of just "thread_info".
6687         * inferior.h (notice_new_inferior): Likewise.
6688
6689 2018-06-25  Pedro Alves  <palves@redhat.com>
6690
6691         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6692         pass thread_info pointer to delete_thread.
6693         (windows_nat_target::detach): Pass inferior pointer to
6694         detach_inferior.
6695         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6696         delete_thread.
6697         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6698         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6699         and pass a thread_info pointer to delete_thread.
6700         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6701         pass thread_info pointer to delete_thread.
6702         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6703         delete_thread_silent call.
6704         * procfs.c (procfs_target::detach): Pass inferior pointer to
6705         detach_inferior.
6706         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6707         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6708         delete_thread_silent call.
6709         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6710         pass thread_info pointer to delete_thread.
6711         (windows_nat_target::detach): Pass inferior pointer to
6712         delete_inferior.
6713
6714 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6715
6716         * regcache.c (readable_regcache::read_part): Fix asserts.
6717         (reg_buffer::raw_collect_part): New function.
6718         (regcache::write_part): Fix asserts.
6719         (reg_buffer::raw_supply_part): New function.
6720         (regcache::transfer_regset_register): New helper function.
6721         (regcache::transfer_regset): Call new functions.
6722         (regcache_supply_regset): Use gdb_byte*.
6723         (regcache::supply_regset): Likewise.
6724         (regcache_collect_regset): Likewise.
6725         (regcache::collect_regset): Likewise.
6726         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6727         (reg_buffer::raw_supply_part): Likewise.
6728         (regcache::transfer_regset_register): Likewise.
6729         (regcache::transfer_regset): Use gdb_byte*.
6730
6731 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6732
6733         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6734
6735 2018-06-21  Pedro Alves  <palves@redhat.com>
6736
6737         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6738         instead of a ptid_t.  All callers adjusted.
6739         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6740         adjusted.
6741         (print_ada_task_info, display_current_task_id, task_command_1):
6742         Adjust.
6743         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6744         inferior_thread.
6745         (breakpoint_kind): Adjust.
6746         (remove_breakpoints_pid): Rename to ...
6747         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6748         pointer.  All callers adjusted.
6749         (bpstat_clear_actions): Use inferior_thread.
6750         (get_bpstat_thread): New.
6751         (bpstat_do_actions): Use it.
6752         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6753         to take a thread_info pointer.  All callers adjusted.
6754         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6755         (breakpoint_re_set_thread): Use inferior_thread.
6756         * breakpoint.h (struct inferior): Forward declare.
6757         (bpstat_stop_status): Update.
6758         (remove_breakpoints_pid): Delete.
6759         (remove_breakpoints_inf): New.
6760         * bsd-uthread.c (bsd_uthread_target::wait)
6761         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6762         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6763         (maint_btrace_packet_history_cmd)
6764         (maint_btrace_clear_packet_history_cmd): Adjust.
6765         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6766         inferior_thread.
6767         * cli/cli-interp.c: Include "inferior.h".
6768         * common/refcounted-object.h (struct
6769         refcounted_object_ref_policy): New.
6770         * compile/compile-object-load.c: Include gdbthread.h.
6771         (store_regs): Use inferior_thread.
6772         * corelow.c (core_target::close): Use current_inferior.
6773         (core_target_open): Adjust to use first_thread_of_inferior and use
6774         the current inferior.
6775         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6776         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6777         <thread>: ... this new field.  All references adjusted.
6778         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6779         Take a thread_info pointer instead of a ptid_t.
6780         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6781         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6782         thread_info pointer instead of a ptid_t.
6783         * elfread.c: Include "inferior.h".
6784         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6785         Use inferior_thread.
6786         * eval.c (evaluate_subexp): Likewise.
6787         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6788         inferior_thread.
6789         * gdb_proc_service.h (struct thread_info): Forward declare.
6790         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6791         <thread>: ... this new field.  All references adjusted.
6792         * gdbarch.h, gdbarch.c: Regenerate.
6793         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6794         'thread' parameter.  All implementations and callers adjusted.
6795         * gdbthread.h (thread_info) <set_running>: New method.
6796         (delete_thread, delete_thread_silent): Take a thread_info pointer
6797         instead of a ptid.
6798         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6799         (first_thread_of_process): Delete, replaced by ...
6800         (first_thread_of_inferior): ... this new function.  All callers
6801         adjusted.
6802         (any_live_thread_of_process): Delete, replaced by ...
6803         (any_live_thread_of_inferior): ... this new function.  All callers
6804         adjusted.
6805         (switch_to_thread, switch_to_no_thread): Declare.
6806         (is_executing): Delete.
6807         (enable_thread_stack_temporaries): Update comment.
6808         <enable_thread_stack_temporaries>: Take a thread_info pointer
6809         instead of a ptid_t.  Incref the thread.
6810         <~enable_thread_stack_temporaries>: Decref the thread.
6811         <m_ptid>: Delete
6812         <m_thr>: New.
6813         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6814         (get_last_thread_stack_temporary)
6815         (value_in_thread_stack_temporaries, can_access_registers_thread):
6816         Take a thread_info pointer instead of a ptid_t.  All callers
6817         adjusted.
6818         * infcall.c (get_call_return_value): Use inferior_thread.
6819         (run_inferior_call): Work with thread pointers instead of ptid_t.
6820         (call_function_by_hand_dummy): Work with thread pointers instead
6821         of ptid_t.  Use thread_info_ref.
6822         * infcmd.c (proceed_thread_callback): Access thread's state
6823         directly.
6824         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6825         access thread's state directly.
6826         (continue_command): Use inferior_thread.
6827         (info_program_command): Use find_thread_ptid and access thread
6828         state directly.
6829         (proceed_after_attach_callback): Use thread state directly.
6830         (notice_new_inferior): Take a thread_info pointer instead of a
6831         ptid_t.  All callers adjusted.
6832         (exit_inferior): Take an inferior pointer instead of a pid.  All
6833         callers adjusted.
6834         (exit_inferior_silent): New.
6835         (detach_inferior): Delete.
6836         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6837         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6838         (detach_inferior_command, kill_inferior_command): Use
6839         find_inferior_id instead of valid_gdb_inferior_id and
6840         gdb_inferior_id_to_pid.
6841         (inferior_command): Use inferior and thread pointers.
6842         * inferior.h (struct thread_info): Forward declare.
6843         (notice_new_inferior): Take a thread_info pointer instead of a
6844         ptid_t.  All callers adjusted.
6845         (detach_inferior): Delete declaration.
6846         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6847         instead of a pid.  All callers adjusted.
6848         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6849         (valid_gdb_inferior_id): Delete.
6850         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6851         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6852         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6853         ...
6854         <inf>: ... this new field.
6855         <step_ptid>: Delete, replaced by ...
6856         <step_thread>: ... this new field.
6857         (get_displaced_stepping_state): Take an inferior pointer instead
6858         of a pid.  All callers adjusted.
6859         (displaced_step_in_progress_any_inferior): Adjust.
6860         (displaced_step_in_progress_thread): Take a thread pointer instead
6861         of a ptid_t.  All callers adjusted.
6862         (displaced_step_in_progress, add_displaced_stepping_state): Take
6863         an inferior pointer instead of a pid.  All callers adjusted.
6864         (get_displaced_step_closure_by_addr): Adjust.
6865         (remove_displaced_stepping_state): Take an inferior pointer
6866         instead of a pid.  All callers adjusted.
6867         (displaced_step_prepare_throw, displaced_step_prepare)
6868         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6869         All callers adjusted.
6870         (start_step_over): Adjust.
6871         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6872         displaced step queue.
6873         (do_target_resume): Adjust.
6874         (fetch_inferior_event): Use inferior_thread.
6875         (context_switch, get_inferior_stop_soon): Take an
6876         execution_control_state pointer instead of a ptid_t.  All callers
6877         adjusted.
6878         (switch_to_thread_cleanup): Delete.
6879         (stop_all_threads): Use scoped_restore_current_thread.
6880         * inline-frame.c: Include "gdbthread.h".
6881         (inline_state) <inline_state>: Take a thread pointer instead of a
6882         ptid_t.  All callers adjusted.
6883         <ptid>: Delete, replaced by ...
6884         <thread>: ... this new field.
6885         (find_inline_frame_state): Take a thread pointer instead of a
6886         ptid_t.  All callers adjusted.
6887         (skip_inline_frames, step_into_inline_frame)
6888         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6889         pointer instead of a ptid_t.  All callers adjusted.
6890         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6891         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6892         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6893         pointers directly.
6894         * linux-nat.c (get_detach_signal): Likewise.
6895         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6896         (thread_db_notice_clone): Adjust.
6897         (thread_db_find_new_threads_silently)
6898         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6899         a thread pointer instead of a ptid_t.  All callers adjusted.
6900         * mi/mi-cmd-var.c: Include "inferior.h".
6901         (mi_cmd_var_update_iter): Update to use thread pointers.
6902         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6903         inferior directly.
6904         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6905         out to ...
6906         (mi_output_running): ... this new function.
6907         (mi_on_resume_1): Adjust to use it.
6908         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6909         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6910         directly.
6911         (interrupt_thread_callback): : Adjust to use thread and inferior
6912         pointers.
6913         * proc-service.c: Include "gdbthread.h".
6914         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6915         * progspace-and-thread.c: Include "inferior.h".
6916         * progspace.c: Include "inferior.h".
6917         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6918         hold a reference to an inferior_object.
6919         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6920         inferior_thread.
6921         * python/py-inferior.c (struct inferior_object): Give the type a
6922         tag name instead of a typedef.
6923         (python_on_normal_stop): No need to check if the current thread is
6924         listed.
6925         (inferior_to_inferior_object): Change return type to
6926         inferior_object.  All callers adjusted.
6927         (find_thread_object): Delete, bits factored out to ...
6928         (thread_to_thread_object): ... this new function.
6929         * python/py-infthread.c (create_thread_object): Use
6930         inferior_to_inferior_object.
6931         (thpy_is_stopped): Use thread pointer directly.
6932         (gdbpy_selected_thread): Use inferior_thread.
6933         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6934         field, replaced with ...
6935         <thread>: ... this new field.  All users adjusted.
6936         (btpy_insn_or_gap_new): Drop const.
6937         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6938         callers adjusted.
6939         * python/py-record.c: Include "gdbthread.h".
6940         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6941         a ptid_t.  All callers adjusted.
6942         (gdbpy_current_recording): Use inferior_thread.
6943         * python/py-record.h (recpy_record_object) <ptid>: Delete
6944         field, replaced with ...
6945         <thread>: ... this new field.  All users adjusted.
6946         (recpy_element_object) <ptid>: Delete
6947         field, replaced with ...
6948         <thread>: ... this new field.  All users adjusted.
6949         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6950         a ptid_t.  All callers adjusted.
6951         * python/py-threadevent.c: Include "gdbthread.h".
6952         (get_event_thread): Use thread_to_thread_object.
6953         * python/python-internal.h (struct inferior_object): Forward
6954         declare.
6955         (find_thread_object, find_inferior_object): Delete declarations.
6956         (thread_to_thread_object, inferior_to_inferior_object): New
6957         declarations.
6958         * record-btrace.c: Include "inferior.h".
6959         (require_btrace_thread): Use inferior_thread.
6960         (record_btrace_frame_sniffer)
6961         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6962         (get_thread_current_frame): Use scoped_restore_current_thread and
6963         switch_to_thread.
6964         (get_thread_current_frame): Use thread pointer directly.
6965         (record_btrace_replay_at_breakpoint): Use thread's inferior
6966         pointer directly.
6967         * record-full.c: Include "inferior.h".
6968         * regcache.c: Include "gdbthread.h".
6969         (get_thread_arch_regcache): Use the inferior's address space
6970         directly.
6971         (get_thread_regcache, registers_changed_thread): New.
6972         * regcache.h (get_thread_regcache(thread_info *thread)): New
6973         overload.
6974         (registers_changed_thread): New.
6975         (remote_target) <remote_detach_1>: Swap order of parameters.
6976         (remote_add_thread): <remote_add_thread>: Return the new thread.
6977         (get_remote_thread_info(ptid_t)): New overload.
6978         (remote_target::remote_notice_new_inferior): Use thread pointers
6979         directly.
6980         (remote_target::process_initial_stop_replies): Use
6981         thread_info::set_running.
6982         (remote_target::remote_detach_1, remote_target::detach)
6983         (extended_remote_target::detach): Adjust.
6984         * stack.c (frame_show_address): Use inferior_thread.
6985         * target-debug.h (target_debug_print_thread_info_pp): New.
6986         * target-delegates.c: Regenerate.
6987         * target.c (default_thread_address_space): Delete.
6988         (memory_xfer_partial_1): Use current_inferior.
6989         (target_detach): Use current_inferior.
6990         (target_thread_address_space): Delete.
6991         (generic_mourn_inferior): Use current_inferior.
6992         * target.h (struct target_ops) <thread_address_space>: Delete.
6993         (target_thread_address_space): Delete.
6994         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6995         pointers directly.
6996         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6997         thread pointer instead of a ptid_t.  Adjust all callers.
6998         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6999         (first_thread_of_process): Delete, replaced by ...
7000         (first_thread_of_inferior): ... this new function.  All callers
7001         adjusted.
7002         (any_thread_of_process): Rename to ...
7003         (any_thread_of_inferior): ... this, and take an inferior pointer.
7004         (any_live_thread_of_process): Rename to ...
7005         (any_live_thread_of_inferior): ... this, and take an inferior
7006         pointer.
7007         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7008         (value_in_thread_stack_temporaries)
7009         (get_last_thread_stack_temporary): Take a thread pointer instead
7010         of a ptid_t.  Adjust all callers.
7011         (thread_info::set_running): New.
7012         (validate_registers_access): Use inferior_thread.
7013         (can_access_registers_ptid): Rename to ...
7014         (can_access_registers_thread): ... this, and take a thread
7015         pointer.
7016         (print_thread_info_1): Adjust to compare thread pointers instead
7017         of ptids.
7018         (switch_to_no_thread, switch_to_thread): Make extern.
7019         (scoped_restore_current_thread::~scoped_restore_current_thread):
7020         Use m_thread pointer directly.
7021         (scoped_restore_current_thread::scoped_restore_current_thread):
7022         Use inferior_thread.
7023         (thread_command): Use thread pointer directly.
7024         (thread_num_make_value_helper): Use inferior_thread.
7025         * top.c (execute_command): Use inferior_thread.
7026         * tui/tui-interp.c: Include "inferior.h".
7027         * varobj.c (varobj_create): Use inferior_thread.
7028         (value_of_root_1): Use find_thread_global_id instead of
7029         global_thread_id_to_ptid.
7030
7031 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7032
7033         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7034         possible.
7035         (regcache::write_part): Likewise.
7036         (readable_regcache::cooked_read_part): Update comment.
7037         (readable_regcache::cooked_write_part): Likewise.
7038         * regcache.h: (readable_regcache::read_part): Likewise.
7039         (regcache::write_part): Likewise.
7040
7041 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7042             Dirk Schubert  <dirk.schubert@arm.com>
7043
7044         * aarch64-linux-nat.c (post_attach): New.
7045         (aarch64_linux_nat_target::post_attach): Override post_attach to
7046         record the number of hardware debug registers.
7047
7048 2018-06-20  Tom Tromey  <tom@tromey.com>
7049
7050         * python/py-param.c (add_setshow_generic): Make parameters const.
7051         (parmpy_init): Update.
7052
7053 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7054
7055         * regcache.h (regcache_cooked_read_ftype): Rename to...
7056         (register_read_ftype): ...this, change type to function_view.
7057         (class reg_buffer) <save>: Remove src parameter.
7058         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7059         parameter non-const in first overload.  Remove src parameter in
7060         second overload.
7061         * regcache.c (do_cooked_read): Remove.
7062         (readonly_detached_regcache::readonly_detached_regcache): Make
7063         parameter non-const, adjust call to other constructor.
7064         (reg_buffer::save): Remove src parameter.
7065         * frame.c (do_frame_register_read): Remove.
7066         (frame_save_as_regcache): Use lambda function.
7067         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7068         parameter to ppu2spu_data *.
7069         (ppu2spu_sniffer): Use lambda function.
7070
7071 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7072
7073         * record-full.c (record_full_target::insert_breakpoint): Remove
7074         "struct" keyword, add const.
7075
7076 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7077
7078         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7079         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7080         * configure.ac: Remove AC_PREREQ, add missing quoting.
7081         * gnulib/configure.ac: Modernize usage of
7082         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7083         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7084         (AUTOMAKE_VERSION): Bump to 1.15.1.
7085         * configure: Re-generate.
7086         * config.in: Re-generate.
7087         * aclocal.m4: Re-generate.
7088         * gnulib/aclocal.m4: Re-generate.
7089         * gnulib/config.in: Re-generate.
7090         * gnulib/configure: Re-generate.
7091         * gnulib/import/Makefile.in: Re-generate.
7092
7093 2018-06-19  Pedro Alves  <palves@redhat.com>
7094
7095         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7096         (lookup_minimal_symbol_by_pc_section): ... here with
7097         gdb_assert_not_reached added.
7098
7099 2018-06-19  Pedro Alves  <palves@redhat.com>
7100
7101         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7102         parameter with a block parameter.  Compare location's block symbol
7103         with the frame's block instead of addresses.
7104         (skip_inline_frames): Pass the current block instead of the
7105         frame's address.  Break out as soon as we determine the frame
7106         should not be skipped.
7107
7108 2018-06-18  Tom Tromey  <tom@tromey.com>
7109
7110         * solib-aix.c (solib_aix_get_section_offsets): Return
7111         unique_xmalloc_ptr.
7112         (solib_aix_solib_create_inferior_hook): Update.
7113
7114 2018-06-18  Tom Tromey  <tom@tromey.com>
7115
7116         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7117
7118 2018-06-18  Tom Tromey  <tom@tromey.com>
7119
7120         * solib-frv.c (frv_relocate_main_executable): Use
7121         unique_xmalloc_ptr.
7122         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7123         unique_xmalloc_ptr.
7124
7125 2018-06-18  Tom Tromey  <tom@tromey.com>
7126
7127         * objfiles.h (inhibit_section_map_updates): Update.
7128         (resume_section_map_updates, resume_section_map_updates_cleanup):
7129         Remove.
7130         * solib-svr4.c (svr4_handle_solib_event): Update.
7131         * objfiles.c (inhibit_section_map_updates): Return
7132         scoped_restore_tmpl<int>.
7133         (resume_section_map_updates, resume_section_map_updates_cleanup):
7134         Remove.
7135
7136 2018-06-18  Tom Tromey  <tom@tromey.com>
7137
7138         * valprint.h (read_string): Update.
7139         * valprint.c (read_string): Change type of "buffer".
7140         (val_print_string): Update.
7141         * python/py-value.c (valpy_string): Update.
7142         * language.h (struct language_defn) <la_get_string>: Change
7143         type of "buffer".
7144         (default_get_string, c_get_string): Update.
7145         * language.c (default_get_string): Change type of "buffer".
7146         * guile/scm-value.c (gdbscm_value_to_string): Update.
7147         * c-lang.c (c_get_string): Change type of "buffer".
7148
7149 2018-06-18  Tom Tromey  <tom@tromey.com>
7150
7151         * ser-mingw.c (struct pipe_state_destroyer): New.
7152         (pipe_state_up): New typedef.
7153         (cleanup_pipe_state): Remove.
7154         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7155
7156 2018-06-18  Tom Tromey  <tom@tromey.com>
7157
7158         * rust-lang.h (rust_yyerror): Don't declare.
7159         * rust-lang.c (rust_language_defn): Update.
7160         * rust-exp.y (yyerror): Now static.
7161         * parse.c (parse_exp_in_context_1): Update.
7162         * p-lang.h (p_yyerror): Don't declare.
7163         * p-lang.c (p_language_defn): Update.
7164         * p-exp.y (yyerror): Now static.
7165         * opencl-lang.c (opencl_language_defn): Update.
7166         * objc-lang.c (objc_language_defn): Update.
7167         * m2-lang.h (m2_yyerror): Don't declare.
7168         * m2-lang.c (m2_language_defn): Update.
7169         * m2-exp.y (yyerror): Now static.
7170         * language.h (struct language_defn) <la_error>: Remove.
7171         * language.c (unk_lang_error): Remove.
7172         (unknown_language_defn, auto_language_defn): Remove.
7173         * go-lang.h (go_yyerror): Don't declare.
7174         * go-lang.c (go_language_defn): Update.
7175         * go-exp.y (yyerror): Now static.
7176         * f-lang.h (f_yyerror): Don't declare.
7177         * f-lang.c (f_language_defn): Update.
7178         * f-exp.y (yyerror): Now static.
7179         * d-lang.h (d_yyerror): Don't declare.
7180         * d-lang.c (d_language_defn): Update.
7181         * d-exp.y (yyerror): Now static.
7182         * c-lang.h (c_yyerror): Don't declare.
7183         * c-lang.c (c_language_defn, cplus_language_defn)
7184         (asm_language_defn, minimal_language_defn): Update.
7185         * c-exp.y (yyerror): Now static.
7186         * ada-lang.h (ada_yyerror): Don't declare.
7187         * ada-lang.c (ada_language_defn): Update.
7188         * ada-exp.y (yyerror): Now static.
7189
7190 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7191
7192         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7193         (store_sveregs_to_thread): Likewise.
7194         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7195         (aarch64_linux_store_inferior_registers): Likewise.
7196         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7197         function.
7198         (aarch64_sve_regs_copy_to_regcache): Likewise.
7199         (aarch64_sve_regs_copy_from_regcache): Likewise.
7200         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7201         declaration.
7202         (aarch64_sve_regs_copy_to_regcache): Likewise.
7203         (aarch64_sve_regs_copy_from_regcache): Likewise.
7204         (sve_context): Structure from Linux headers.
7205         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7206         (SVE_SIG_ZREG_SIZE): Likewise.
7207         (SVE_SIG_PREG_SIZE): Likewise.
7208         (SVE_SIG_FFR_SIZE): Likewise.
7209         (SVE_SIG_REGS_OFFSET): Likewise.
7210         (SVE_SIG_ZREGS_OFFSET): Likewise.
7211         (SVE_SIG_ZREG_OFFSET): Likewise.
7212         (SVE_SIG_ZREGS_SIZE): Likewise.
7213         (SVE_SIG_PREGS_OFFSET): Likewise.
7214         (SVE_SIG_PREG_OFFSET): Likewise.
7215         (SVE_SIG_PREGS_SIZE): Likewise.
7216         (SVE_SIG_FFR_OFFSET): Likewise.
7217         (SVE_SIG_REGS_SIZE): Likewise.
7218         (SVE_SIG_CONTEXT_SIZE): Likewise.
7219         (SVE_PT_REGS_MASK): Likewise.
7220         (SVE_PT_REGS_FPSIMD): Likewise.
7221         (SVE_PT_REGS_SVE): Likewise.
7222         (SVE_PT_VL_INHERIT): Likewise.
7223         (SVE_PT_VL_ONEXEC): Likewise.
7224         (SVE_PT_REGS_OFFSET): Likewise.
7225         (SVE_PT_FPSIMD_OFFSET): Likewise.
7226         (SVE_PT_FPSIMD_SIZE): Likewise.
7227         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7228         (SVE_PT_SVE_PREG_SIZE): Likewise.
7229         (SVE_PT_SVE_FFR_SIZE): Likewise.
7230         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7231         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7232         (__SVE_SIG_TO_PT): Likewise.
7233         (SVE_PT_SVE_OFFSET): Likewise.
7234         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7235         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7236         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7237         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7238         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7239         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7240         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7241         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7242         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7243         (SVE_PT_SVE_SIZE): Likewise.
7244         (SVE_PT_SIZE): Likewise.
7245         (HAS_SVE_STATE): New define.
7246
7247 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7248
7249         * nat/aarch64-sve-linux-sigcontext.h: New file.
7250         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7251         new files.
7252         (SVE_VQ_MIN): Likewise.
7253         (SVE_VQ_MAX): Likewise.
7254         (SVE_VL_MIN): Likewise.
7255         (SVE_VL_MAX): Likewise.
7256         (SVE_NUM_ZREGS): Likewise.
7257         (SVE_NUM_PREGS): Likewise.
7258         (sve_vl_valid): Likewise.
7259         (struct user_sve_header): Likewise.
7260
7261 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7262             Richard Bunt <Richard.Bunt@arm.com>
7263
7264         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7265         was requested by GDB.
7266
7267 2018-06-15  Tom de Vries  <tdevries@suse.de>
7268
7269         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7270
7271 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7272
7273         * gnulib/update-gnulib.sh: Print expected versions of
7274         autoconf/aclocal.
7275
7276 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7277
7278         * arch-utils.c (default_type_align): Use type_length_units.
7279         * gdbtypes.c (type_align): Use type_length_units.
7280
7281 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7282
7283         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7284         of 'define' command.
7285
7286 2018-06-14  Tom de Vries  <tdevries@suse.de>
7287
7288         PR cli/22573
7289         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7290         get_no_prettyformat_print_options.
7291
7292 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7293
7294         * sparc-nat.h: Include target.h.
7295         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7296         <fetch_registers>: Remove this argument in function call.
7297         <store_registers>: Remove this argument in function call, remove
7298         extra semicolon.
7299         <low_forget_process>: Call sparc64_forget_process instead of
7300         sparc_forget_process.
7301
7302 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7303
7304         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7305         (procfs_target::make_corefile_notes): Adjust to new
7306         target_read_alloc return type.
7307
7308 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7309             Stephen Roberts  <stephen.roberts@arm.com>
7310
7311         PR gdb/22882
7312         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7313         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7314         Move should_notify_stop local into more inner scope.
7315
7316 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7317             Stephen Roberts  <stephen.roberts@arm.com>
7318
7319         PR gdb/22882
7320         * infrun.c (resume_1): Add call to mark_async_event_handler.
7321
7322 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7323
7324         * infrun.c (do_target_wait): Change old version of $pc printed.
7325
7326 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7327
7328         * dwarf2read.c (read_index_from_section): Rename to...
7329         (read_gdb_index_from_section): ... this, update all callers.
7330         (dwarf2_read_index): Rename to...
7331         (dwarf2_read_gdb_index): ... this, update all callers.
7332
7333 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7334
7335         * hppa-linux-nat.c
7336         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7337         hppa_linux_nat_target::fetch_registers.
7338
7339 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7340
7341         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7342         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7343         (AARCH64_DWARF_SVE_FFR): Likewise.
7344         (AARCH64_DWARF_SVE_P0): Likewise.
7345         (AARCH64_DWARF_SVE_Z0): Likewise.
7346
7347 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7348
7349         * common/common-regcache.h (raw_compare): New function.
7350         * regcache.c (regcache::raw_compare): Likewise.
7351         * regcache.h (regcache::raw_compare): New declaration.
7352
7353 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7354
7355         * common/common-regcache.h (reg_buffer_common): New structure.
7356         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7357         (reg_buffer::raw_supply): Likewise.
7358         (reg_buffer::raw_supply_integer): Likewise.
7359         (reg_buffer::raw_supply_zeroed): Likewise.
7360         (reg_buffer::raw_collect): Likewise.
7361         (reg_buffer::raw_collect_integer): Likewise.
7362         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7363         (reg_buffer::raw_supply): Likewise.
7364         (reg_buffer::raw_supply_integer): Likewise.
7365         (reg_buffer::raw_supply_zeroed): Likewise.
7366         (reg_buffer::raw_collect): Likewise.
7367         (reg_buffer::raw_collect_integer): Likewise.
7368
7369 2018-06-10  Tom Tromey  <tom@tromey.com>
7370
7371         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7372         (class remote_state) <stop_reply_queue>: Now std::vector.
7373         (remote_state::~remote_state)
7374         (remote_target::stop_reply_queue_length): Update.
7375         (struct queue_iter_param, remove_child_of_pending_fork)
7376         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7377         (check_pending_event_prevents_wildcard_vcont_callback)
7378         (remove_stop_reply_for_inferior)
7379         (remove_stop_reply_of_remote_state)
7380         (remote_notif_remove_once_on_match)
7381         (stop_reply_match_ptid_and_ws)
7382         (remote_kill_child_of_pending_fork): Remove.
7383         (remote_target::remove_new_fork_children)
7384         (remote_target::check_pending_events_prevent_wildcard_vcont)
7385         (remote_target::discard_pending_stop_replies)
7386         (remote_target::discard_pending_stop_replies_in_queue)
7387         (remote_target::remote_notif_remove_queued_reply)
7388         (remote_target::queued_stop_reply)
7389         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7390         (remote_target::wait, remote_target::kill_new_fork_children)
7391         (remote_target::async): Update.
7392
7393 2018-06-10  Tom Tromey  <tom@tromey.com>
7394
7395         * record-full.c (record_full_arch_list_cleanups): Remove.
7396         (record_full_message): Use try/catch.
7397         (record_full_wait_cleanups): Remove.
7398         (record_full_wait_1): Use try/catch.
7399         (record_full_restore): Likewise.
7400
7401 2018-06-10  Tom Tromey  <tom@tromey.com>
7402
7403         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7404         declare VEC.  Add constructor.
7405         <in_target_beneath>: Now bool.
7406         (record_full_breakpoints): Now a std::vector, static.
7407         (record_full_sync_record_breakpoints)
7408         (record_full_init_record_breakpoints)
7409         (record_full_target::insert_breakpoint)
7410         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7411
7412 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7413
7414         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7415         * serial.c (serial_interface_lookup): Remove struct keyword.
7416
7417 2018-06-10  Tom Tromey  <tom@tromey.com>
7418
7419         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7420         method.
7421         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7422         a method.
7423         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7424         method.
7425         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7426         "beneath" as a method.
7427         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7428         Use "beneath" as a method.
7429
7430 2018-06-10  Tom Tromey  <tom@tromey.com>
7431
7432         * tracefile.c (struct trace_file_writer_deleter): New.
7433         <operator()>: Rename from trace_file_writer_xfree.
7434         (trace_file_writer_up): New typedef.
7435         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7436
7437 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7438
7439         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7440         <m_registers, m_register_status>: Change type to
7441         std::unique_ptr.
7442         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7443         XCNEWVEC.
7444
7445 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7446
7447         * common/common-regcache.h (enum register_status): Add
7448         underlying type "signed char".
7449         * regcache.h (reg_buffer) <m_register_status>: Change type to
7450         register_status *.
7451         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7452         register_status instead of signed char.
7453         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7454         (reg_buffer::get_register_status): Remove cast.
7455         (readable_regcache::raw_read): Remove cast.
7456         (readable_regcache::cooked_read): Remove cast.
7457
7458 2018-06-09  Tom Tromey  <tom@tromey.com>
7459
7460         * source.c (reverse_search_command, forward_search_command): Use
7461         scoped_fd.
7462
7463 2018-06-09  Tom Tromey  <tom@tromey.com>
7464
7465         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7466         (serial_ops_list): Now static, std::vector.
7467         (serial_interface_lookup, serial_add_interface): Update.
7468
7469 2018-06-09  Tom Tromey  <tom@tromey.com>
7470
7471         * dwarf2read.c (process_cu_includes): Update.
7472         (process_full_comp_unit): Update.
7473         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7474         std::vector.
7475
7476 2018-06-08  Paul Koning  <paul_koning@dell.com>
7477
7478         PR gdb/23252
7479
7480         * python/python.c (do_start_initialization):
7481         Avoid call to internal Python API.
7482         (init__gdb_module): New function.
7483
7484 2018-06-08  Gary Benson <gbenson@redhat.com>
7485
7486         * linux-thread-db.c (valprint.h): New include.
7487         (struct check_thread_db_info): New structure.
7488         (check_thread_db_on_load, tdb_testinfo): New static globals.
7489         (check_thread_db, check_thread_db_callback): New functions.
7490         (try_thread_db_load_1): Run integrity checks if requested.
7491         (maintenance_check_libthread_db): New function.
7492         (_initialize_thread_db): Register "maint check libthread-db"
7493         and "maint set/show check-libthread-db".
7494         * NEWS: Mention the above new commands.
7495
7496 2018-06-08  Tom Tromey  <tom@tromey.com>
7497
7498         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7499         now a method.
7500
7501 2018-06-08  Tom Tromey  <tom@tromey.com>
7502
7503         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7504
7505 2018-06-08  Tom Tromey  <tom@tromey.com>
7506
7507         * common/btrace-common.h (struct btrace_data): Add constructor,
7508         destructor, move assignment operator.
7509         <empty, clear, fini>: New methods.
7510         <format>: Initialize.
7511         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7512         (btrace_data_empty): Don't declare.
7513         * common/btrace-common.c (btrace_data_init): Remove.
7514         (btrace_data::fini): Rename from btrace_data_fini.
7515         (btrace_data::empty): Rename from btrace_data_empty.
7516         (btrace_data::clear): Rename from btrace_data_clear.  Return
7517         bool.
7518         * btrace.h (make_cleanup_btrace_data): Don't declare.
7519         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7520         (parse_xml_btrace): Update.
7521         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7522         (maint_btrace_clear_packet_history_cmd): Update.
7523
7524 2018-06-07  Pedro Alves  <palves@redhat.com>
7525
7526         * target.h (target_ops) <beneath>: Now a method.  All references
7527         updated.
7528         (class target_stack): New.
7529         * target.c (g_target_stack): New.
7530         (g_current_top_target): Delete.
7531         (current_top_target): Get the top target out of g_target_stack.
7532         (target_stack::push, target_stack::unpush): New.
7533         (push_target, unpush_target): Reimplement.
7534         (target_is_pushed): Reimplement in terms of g_target_stack.
7535         (target_ops::beneath, target_stack::find_beneath): New.
7536
7537 2018-06-07  Pedro Alves  <palves@redhat.com>
7538
7539         * target.h (find_target_beneath): Delete declaration.
7540         * target.c (find_target_beneath): Delete definition.
7541         * aix-thread.c: All callers of find_target_beneath adjusted to
7542         call target_ops::beneath instead.
7543         * bsd-uthread.c: Likewise.
7544         * linux-thread-db.c: Likewise.
7545         * ravenscar-thread.c: Likewise.
7546         * sol-thread.c: Likewise.
7547         * spu-multiarch.c: Likewise.
7548
7549 2018-06-07  Pedro Alves  <palves@redhat.com>
7550
7551         * target.h (target_ops) <beneath>: Now a method.  All references
7552         updated.
7553         (target_ops) <m_beneath>: New.
7554         * target.c (target_ops::beneath): New.
7555         * corelow.c: Adjust all references to target_ops::beneath.
7556         * linux-thread-db.c: Likewise.
7557         * make-target-delegates: Likewise.
7558         * record-btrace.c: Likewise.
7559         * record-full.c: Likewise.
7560         * remote.c: Likewise.
7561         * target.c: Likewise.
7562         * target-delegates.c: Regenerate.
7563
7564 2018-06-07  Pedro Alves  <palves@redhat.com>
7565
7566         * target.h (target_stack): Delete.
7567         (current_top_target): Declare function.
7568         * target.c (target_stack): Delete.
7569         (g_current_top_target): New.
7570         (current_top_target): New function.
7571         * auxv.c: Use current_top_target instead of target_stack
7572         throughout.
7573         * avr-tdep.c: Likewise.
7574         * breakpoint.c: Likewise.
7575         * corefile.c: Likewise.
7576         * elfread.c: Likewise.
7577         * eval.c: Likewise.
7578         * exceptions.c: Likewise.
7579         * frame.c: Likewise.
7580         * gdbarch-selftests.c: Likewise.
7581         * gnu-v3-abi.c: Likewise.
7582         * ia64-tdep.c: Likewise.
7583         * ia64-vms-tdep.c: Likewise.
7584         * infcall.c: Likewise.
7585         * infcmd.c: Likewise.
7586         * infrun.c: Likewise.
7587         * linespec.c: Likewise.
7588         * linux-tdep.c: Likewise.
7589         * minsyms.c: Likewise.
7590         * ppc-linux-nat.c: Likewise.
7591         * ppc-linux-tdep.c: Likewise.
7592         * procfs.c: Likewise.
7593         * regcache.c: Likewise.
7594         * remote.c: Likewise.
7595         * rs6000-tdep.c: Likewise.
7596         * s390-linux-nat.c: Likewise.
7597         * s390-tdep.c: Likewise.
7598         * solib-aix.c: Likewise.
7599         * solib-darwin.c: Likewise.
7600         * solib-dsbt.c: Likewise.
7601         * solib-spu.c: Likewise.
7602         * solib-svr4.c: Likewise.
7603         * solib-target.c: Likewise.
7604         * sparc-tdep.c: Likewise.
7605         * sparc64-tdep.c: Likewise.
7606         * spu-tdep.c: Likewise.
7607         * symfile.c: Likewise.
7608         * symtab.c: Likewise.
7609         * target-descriptions.c: Likewise.
7610         * target-memory.c: Likewise.
7611         * target.c: Likewise.
7612         * target.h: Likewise.
7613         * tracefile-tfile.c: Likewise.
7614         * tracepoint.c: Likewise.
7615         * valops.c: Likewise.
7616         * valprint.c: Likewise.
7617         * value.c: Likewise.
7618         * windows-tdep.c: Likewise.
7619         * mi/mi-main.c: Likewise.
7620
7621 2018-06-07  Tom Tromey  <tom@tromey.com>
7622
7623         * valprint.h (build_address_symbolic): Declare.
7624         * printcmd.c (print_address_symbolic): Update.
7625         (build_address_symbolic): Change "name" and "filename" to
7626         std::string.
7627         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7628         Update.
7629         * defs.h (build_address_symbolic): Remove declaration.
7630
7631 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7632
7633         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7634         (aarch64_vnv_type): Add function.
7635         (aarch64_pseudo_register_name): Add V regs for SVE.
7636         (aarch64_pseudo_register_type): Likewise.
7637         (aarch64_pseudo_register_reggroup_p): Likewise.
7638         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7639         (aarch64_pseudo_read_value): Add V regs for SVE.
7640         (aarch64_pseudo_write_2): Use V0 offset for SVE
7641         (aarch64_pseudo_write): Add V regs for SVE.
7642         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7643
7644 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7645
7646         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7647         (sve_vl_from_vq): Likewise.
7648
7649 2018-06-05  Tom Tromey  <tom@tromey.com>
7650
7651         * cli/cli-cmds.c (show_version): Update.
7652         * top.c (print_gdb_version): Add "interactive" parameter.
7653         Update.
7654         * main.c (captured_main_1): Update.
7655         * top.h (print_gdb_version): Add "interactive" parameter and a
7656         comment.
7657
7658 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7659
7660         * common/enum-flags.h: Add trailing semicolon to example in
7661         comment.
7662
7663 2018-06-05  Tom Tromey  <tom@tromey.com>
7664
7665         PR cli/12326:
7666         * NEWS: Add entry about pager.
7667         * utils.c (pagination_disabled_for_command): New global.
7668         (prompt_for_continue): Allow "c" response to prompt.
7669         (reinitialize_more_filter): Clear
7670         pagination_disabled_for_command.
7671         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7672
7673 2018-06-04  Tom Tromey  <tom@tromey.com>
7674
7675         * ada-lang.h (ada_lookup_symbol_list): Update.
7676         * ada-lang.c (resolve_subexp): Update.
7677         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7678         parameter.
7679         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7680         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7681         results parameter to std::vector.
7682         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7683         Update.
7684         * ada-exp.y (block_lookup): Update.
7685         (select_possible_type_sym): Change type of syms.  Remove nsyms
7686         parameter.
7687         (write_var_or_type, write_name_assoc): Update.
7688
7689 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7690
7691         * windows-nat.c (windows_nat_target::xfer_partial): Return
7692         TARGET_XFER_E_IO if we need to delegate to the target beneath
7693         but BENEATH is NULL.
7694
7695 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7696
7697         * Makefile.in (config.status): Add configure.nat as a
7698         dependency.
7699
7700 2018-06-04  Tom Tromey  <tom@tromey.com>
7701
7702         * cp-name-parser.y (cpname_state): Add method declarations.
7703         (HANDLE_QUAL): Update.
7704         (cpname_state::d_grab, cpname_state::fill_comp)
7705         (cpname_state::make_operator, cpname_state::make_dtor)
7706         (cpname_state::make_builtin_type, cpname_state::make_name)
7707         (cpname_state::d_qualify, cpname_state::d_int_type)
7708         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7709         (%union): Move earlier.
7710
7711 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7712
7713         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7714
7715 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7716
7717         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7718         (aarch64_pseudo_write_1): Likewise.
7719         (aarch64_pseudo_read_value): Use helper.
7720         (aarch64_pseudo_write): Likewise.
7721
7722 2018-06-04  Pedro Alves  <palves@redhat.com>
7723
7724         * darwin-nat.c (darwin_ops): Delete.
7725         (darwin_attach_pid): Use get_native_target.
7726
7727 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7728
7729         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7730         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7731
7732 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7733
7734         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7735         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7736         (aarch64_gdbarch_init): Check for SVE.
7737         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7738
7739 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7740
7741         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7742         * aarch64-tdep.h (aarch64_read_description): Likewise.
7743         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7744         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7745         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7746         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7747         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7748
7749 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7750
7751         * value.c (value_fetch_lazy_bitfield): New.
7752         (value_fetch_lazy_memory): New.
7753         (value_fetch_lazy_register): New.
7754         (value_fetch_lazy): Factor out to smaller functions.
7755
7756 2018-06-01  Tom Tromey  <tom@tromey.com>
7757
7758         * cp-name-parser.y (backslashable, represented): Now const.
7759
7760 2018-06-01  Tom Tromey  <tom@tromey.com>
7761
7762         * cp-name-parser.y: Include parser-defs.h.
7763         (parser_fprintf): Remove declaration.
7764
7765 2018-06-01  Tom Tromey  <tom@tromey.com>
7766
7767         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7768         %parse-param.
7769         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7770         (global_result): Remove globals.
7771         (struct cpname_state): New.
7772         (yyparse): Don't declare.
7773         (yylex, yyerror): Move declarations after %union.
7774         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7775         (make_name): Add state parameter.
7776         Update all callers.
7777         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7778         parameter.
7779         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7780         Update.
7781         (yylex): Add lvalp, state parameters.
7782         (yyerror): Add state parameter.
7783         (cp_demangled_name_to_comp): Update.
7784
7785 2018-06-01  Tom Tromey  <tom@tromey.com>
7786
7787         * cp-name-parser.y (parser_fprintf): Declare.
7788         (GDB_YY_REMAP_PREFIX): Define.
7789         Include yy-remap.h.  Don't redefine yy* identifiers.
7790
7791 2018-06-01  Tom Tromey  <tom@tromey.com>
7792
7793         * python/py-type.c (typy_legacy_template_argument): Update.
7794         * cp-support.h (cp_demangled_name_to_comp): Update.
7795         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7796         parameter to be a "std::string *".
7797         (main): Update.
7798
7799 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7800
7801         * ada-lex.l: Include "diagnostics.h" instead of
7802         "common/diagnostics.h".
7803         * unittests/environ-selftests.c: Likewise.
7804         * common/diagnostics.h: Moved to ../include.
7805
7806 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7807
7808         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7809         to language_mode_manual while calling breakpoint_re_set_one.
7810
7811 2018-06-01  Tom Tromey  <tom@tromey.com>
7812
7813         * valops.c (value_cast_structs, destructor_name_p): Update.
7814         * symtab.c (gdb_mangle_name): Update.
7815         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7816         Update.
7817         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7818         (pascal_object_print_value_fields, pascal_object_print_value):
7819         Update.
7820         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7821         * linespec.c (find_methods): Update.
7822         * gdbtypes.h (type_name_no_tag): Remove.
7823         (type_name_or_error): Rename from type_name_no_tag_or_error.
7824         * gdbtypes.c (type_name_no_tag): Remove.
7825         (type_name_or_error): Rename from type_name_no_tag_or_error.
7826         (lookup_struct_elt_type, check_typedef): Update.
7827         * expprint.c (print_subexp_standard): Update.
7828         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7829         * d-namespace.c (d_lookup_nested_symbol): Update.
7830         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7831         (cp_print_class_member): Update.
7832         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7833         * completer.c (add_struct_fields): Update.
7834         * c-typeprint.c (cp_type_print_derivation_info)
7835         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7836         Update.
7837         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7838         (ada_prefer_type, ada_is_exception_sym): Update.
7839
7840 2018-06-01  Tom Tromey  <tom@tromey.com>
7841
7842         * valops.c (enum_constant_from_type, value_namespace_elt)
7843         (value_maybe_namespace_elt): Update.
7844         * valarith.c (find_size_for_pointer_math): Update.
7845         * target-descriptions.c (make_gdb_type): Update.
7846         * symmisc.c (print_symbol): Update.
7847         * stabsread.c (define_symbol, read_type)
7848         (complain_about_struct_wipeout, add_undefined_type)
7849         (cleanup_undefined_types_1): Update.
7850         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7851         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7852         (rust_internal_print_type, rust_composite_type)
7853         (rust_evaluate_funcall, rust_evaluate_subexp)
7854         (rust_inclusive_range_type_p): Update.
7855         * python/py-type.c (typy_get_tag): Update.
7856         * p-typeprint.c (pascal_type_print_base): Update.
7857         * mdebugread.c (parse_symbol, parse_type): Update.
7858         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7859         Update.
7860         * guile/scm-type.c (gdbscm_type_tag): Update.
7861         * go-lang.c (sixg_string_p): Update.
7862         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7863         Update.
7864         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7865         (TYPE_TAG_NAME): Remove.
7866         * gdbtypes.c (type_name_no_tag): Simplify.
7867         (check_typedef, check_types_equal, recursive_dump_type)
7868         (copy_type_recursive, arch_composite_type): Update.
7869         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7870         in summary mode when needed.
7871         * eval.c (evaluate_funcall): Update.
7872         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7873         (process_structure_scope, read_enumeration_type)
7874         (read_namespace_type, read_module_type, determine_prefix): Update.
7875         * cp-support.c (inspect_type): Update.
7876         * coffread.c (process_coff_symbol, decode_base_type): Update.
7877         * c-varobj.c (c_is_path_expr_parent): Update.
7878         * c-typeprint.c (c_type_print_base_struct_union): Update.
7879         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7880         summary when using C language.
7881         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7882         (gen_maybe_namespace_elt): Update.
7883         * ada-lang.c (ada_type_name): Simplify.
7884         (empty_record, ada_template_to_fixed_record_type_1)
7885         (template_to_static_fixed_type)
7886         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7887
7888 2018-06-01  Tom Tromey  <tom@tromey.com>
7889
7890         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7891         c_print_type.
7892         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7893         (c_print_type): Update.
7894         (c_print_type): New overload.
7895         (c_type_print_varspec_prefix, c_type_print_args)
7896         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7897         (c_type_print_base_struct_union, c_type_print_base_1)
7898         (cp_type_print_method_args): Add "language" parameter.
7899         (c_type_print_base): Update.
7900         * c-lang.h (c_print_type): Add new overload.
7901
7902 2018-06-01  Tom Tromey  <tom@tromey.com>
7903
7904         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7905         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7906
7907 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7908
7909         * aarch64-tdep.c (aarch64_sve_register_names): New const
7910         var.
7911         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7912         (AARCH64_SVE_Z_REGS_NUM): New define.
7913         (AARCH64_SVE_P_REGS_NUM): Likewise.
7914         (AARCH64_SVE_NUM_REGS): Likewise.
7915
7916 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7917
7918         * nat/linux-ptrace.h [__alpha__]
7919         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7920         definitions.
7921
7922 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7923
7924         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7925         the endianness selected.
7926         * NEWS: Document `set endian auto' mode operation update.
7927
7928 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7929
7930         * Makefile.in: Add new header.
7931         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7932         (sve_vl_from_vg): Likewise.
7933         (sve_vq_from_vl): Likewise.
7934         (sve_vl_from_vq): Likewise.
7935         (sve_vq_from_vg): Likewise.
7936         (sve_vg_from_vq): Likewise.
7937         * configure.nat: Add new c file.
7938         * nat/aarch64-sve-linux-ptrace.c: New file.
7939         * nat/aarch64-sve-linux-ptrace.h: New file.
7940
7941 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7942
7943         * aarch64-linux-nat.c (aarch64_linux_read_description):
7944         Add parmeter zero.
7945         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7946         Likewise.
7947         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7948         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7949         (aarch64_gdbarch_init): Add parmeter zero.
7950         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7951         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7952         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7953         parmeter.
7954         * doc/gdb.texinfo: Describe SVE feature
7955         * features/aarch64-sve.c: New file.
7956
7957 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7958
7959         PR gdb/23210
7960         * gdbarch.sh (significant_addr_bit): Default to zero when
7961         not set by target architecture.
7962         * gdbarch.c: Re-generated.
7963         * utils.c (address_significant): Update.
7964
7965 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7966
7967         * stack.c (func_command): Remove trailing newline in call to error.
7968
7969 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7970
7971         * regcache.h (regcache_raw_collect): Remove, update callers to
7972         use regcache::raw_collect.
7973         * regcache.c (regcache_raw_collect): Remove.
7974
7975 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7976
7977         * regcache.h (regcache_raw_supply): Remove, update callers to
7978         use detached_regcache::raw_supply.
7979         * regcache.c (regcache_raw_supply): Remove.
7980
7981 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7982
7983         * regcache.h (regcache_cooked_write_part): Remove, update
7984         callers to use regcache::cooked_write_part.
7985         * regcache.c (regcache_cooked_write_part): Remove.
7986
7987 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7988
7989         * regcache.h (regcache_cooked_read_part): Remove, update callers
7990         to use readable_regcache::cooked_read_part.
7991         * regcache.c (regcache_cooked_read_part): Remove.
7992
7993 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7994
7995         * regcache.h (regcache_cooked_read_value): Remove, update
7996         callers to use readable_regcache::cooked_read_value.
7997         * regcache.c (regcache_cooked_read_value): Remove.
7998
7999 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8000
8001         * regcache.h (regcache_cooked_write): Remove, update callers to
8002         use regcache::cooked_write.
8003         * regcache.c (regcache_cooked_write): Remove.
8004
8005 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8006
8007         * regcache.h (regcache_invalidate): Remove, update callers to
8008         use detached_regcache::invalidate instead.
8009         * regcache.c (regcache_invalidate): Remove.
8010
8011 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8012
8013         * regcache.h (regcache_raw_write_part): Remove, update callers
8014         to use regcache::raw_write_part instead.
8015         * regcache.c (regcache_raw_write_part): Remove.
8016
8017 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8018
8019         * regcache.h (regcache_raw_read_part): Remove, update callers to
8020         use readable_regcache::raw_read_part instead.
8021         * regcache.c (regcache_raw_read_part): Remove.
8022
8023 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8024
8025         * regcache.h (regcache_cooked_read): Remove, update callers to
8026         use readable_regcache::cooked_read instead.
8027         * regcache.c (regcache_cooked_read): Remove.
8028
8029 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8030
8031         * regcache.h (regcache_raw_write): Remove, update callers to use
8032         regcache::raw_write instead.
8033         * regcache.c (regcache_raw_write): Remove.
8034
8035 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8036
8037         * regcache.h (regcache_raw_read): Remove, update callers to use
8038         readable_regcache::raw_read instead.
8039         * regcache.c (regcache_raw_read): Remove.
8040
8041 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8042
8043         * regcache.h (regcache_raw_update): Remove, update callers to
8044         use readable_regcache::raw_update instead.
8045         * regcache.c (regcache_raw_update): Remove.
8046
8047 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8048
8049         * regcache.h (regcache_register_status): Remove, update callers
8050         to use reg_buffer::get_register_status directly instead.
8051         * regcache.c (regcache_register_status): Remove.
8052
8053 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8054
8055         * regcache.h (regcache_get_ptid): Remove, update all callers to
8056         call regcache::ptid instead.
8057         * regcache.c (regcache_get_ptid): Remove.
8058
8059 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8060
8061         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8062
8063 2018-05-30  Pedro Alves  <palves@redhat.com>
8064
8065         * common/common-exceptions.h (exception_rethrow): Use
8066         ATTRIBUTE_NORETURN.
8067
8068 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8069
8070         * breakpoint.c (print_solib_event, check_status_catch_solib):
8071         Remove struct keyword in range-based for loops.
8072         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8073         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8074         Likewise.
8075         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8076         Likewise.
8077         * symfile.c (addr_info_make_relative): Likewise.
8078         * thread.c (value_in_thread_stack_temporaries): Likewise.
8079
8080 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8081
8082         PR gdb/16841
8083         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8084         aggregate type to get its real type before accessing it.
8085
8086 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8087
8088         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8089         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8090         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8091         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8092         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8093         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8094         * printcmd.c (info_address_command): Likewise.
8095
8096 2018-05-29  Tom Tromey  <tom@tromey.com>
8097
8098         * windows-nat.c (handle_exception): Update fall-through comment.
8099
8100 2018-05-29  Tom Tromey  <tom@tromey.com>
8101
8102         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8103         (struct program_space) <added_solibs>: Now a std::vector.
8104         * breakpoint.c (print_solib_event): Update.
8105         (check_status_catch_solib): Update.
8106         * progspace.c (clear_program_space_solib_cache): Update.
8107         * solib.c (update_solib_list): Update.
8108
8109 2018-05-29  Tom Tromey  <tom@tromey.com>
8110
8111         * python/py-type.c (typy_richcompare): Update.
8112         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8113         * gdbtypes.h (types_deeply_equal): Return bool.
8114         (types_equal): Likewise.
8115         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8116         declare VEC.
8117         (check_types_equal): Change worklist to std::vector.  Return
8118         bool.
8119         (struct type_equality_entry): Add constructor.
8120         (compare_maybe_null_strings): Return bool.
8121         (check_types_worklist): Return bool.  Change worklist to
8122         std::vector.
8123         (types_deeply_equal): Use std::vector.
8124         (types_equal): Return bool.
8125         (compare_maybe_null_strings): Simplify.
8126
8127 2018-05-29  Tom Tromey  <tom@tromey.com>
8128
8129         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8130
8131 2018-05-29  Tom Tromey  <tom@tromey.com>
8132
8133         * objc-lang.h: Don't include cp-support.h.
8134         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8135         declare VEC.
8136
8137 2018-05-27  Tom Tromey  <tom@tromey.com>
8138
8139         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8140
8141 2018-05-25  Tom Tromey  <tom@tromey.com>
8142
8143         * value.c (value::location): Initialize.
8144
8145 2018-05-25  Tom Tromey  <tom@tromey.com>
8146
8147         * dbxread.c (init_bincl_list): Remove.
8148         (bincl_list): Now a std::vector.
8149         (bincls_allocated, next_bincl): Remove.
8150         (free_bincl_list, do_free_bincl_list_cleanup)
8151         (make_cleanup_free_bincl_list): Remove.
8152         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8153         unique_xmalloc_ptr.
8154         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8155         (struct header_file_location): Add constructor.
8156         (add_bincl_to_list): Remove.
8157
8158 2018-05-25  Tom Tromey  <tom@tromey.com>
8159
8160         * tui/tui.c (tui_enable): Update.
8161         * mi/mi-interp.c (mi_interp::init): Update.
8162         * interps.h (class interp) <name>: New method.
8163         <m_name>: Rename from name.
8164         (~scoped_restore_interp): Update.
8165         * interps.c (interp::interp): Update.
8166         (interp_add, interp_set, interp_lookup_existing)
8167         (current_interp_named_p): Update.
8168
8169 2018-05-25  Tom Tromey  <tom@tromey.com>
8170
8171         * interps.c (interp_name): Remove.
8172         * mi/mi-interp.c (mi_interp::init): Update.
8173         * interps.h (interp_name): Remove.
8174         (~scoped_restore_interp): Update.
8175         * tui/tui.c (tui_enable): Update.
8176
8177 2018-05-25  Tom Tromey  <tom@tromey.com>
8178
8179         * utils.c (fputs_maybe_filtered): Update.
8180         * linespec.c (decode_line_full): Update.
8181         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8182         (mi_print_breakpoint_for_event, mi_solib_loaded)
8183         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8184         (mi_user_selected_context_changed): Update.
8185         * mi/mi-main.c (mi_execute_command): Update.
8186         * cli/cli-script.c (execute_control_command): Update.
8187         * python/python.c (execute_gdb_command): Update.
8188         * solib.c (info_sharedlibrary_command): Update.
8189         * interps.c (interp_ui_out): Remove.
8190         * interps.h (interp_ui_out): Remove.
8191
8192 2018-05-25  Tom Tromey  <tom@tromey.com>
8193
8194         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8195         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8196         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8197
8198 2018-05-25  Tom Tromey  <tom@tromey.com>
8199
8200         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8201         * interps.c (interp_exec): Use scoped_restore.
8202
8203 2018-05-25  Tom Tromey  <tom@tromey.com>
8204
8205         * remote.c (remote_target::remote_file_get): Use
8206         gdb::byte_vector.
8207         (remote_target::remote_file_put): Likewise.
8208
8209 2018-05-25  Tom Tromey  <tom@tromey.com>
8210
8211         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8212         a std::string.
8213         (get_pe_section_index, add_pe_exported_sym): Update.
8214         (read_pe_exported_syms): Use gdb::def_vector.
8215
8216 2018-05-25  Tom Tromey  <tom@tromey.com>
8217
8218         * frame.c (remove_prev_frame): Remove.
8219         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8220
8221 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8222
8223         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8224         Remove prototypes.
8225         * mips-linux-nat.c (supply_fpregset): Always call
8226         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8227         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8228         `mips_fill_fpregset'.
8229         * mips-linux-tdep.c (mips_supply_fpregset)
8230         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8231         (mips_fill_fpregset_wrapper): Remove functions.
8232         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8233         (mips_linux_fpregset): Remove variable.
8234         (mips_linux_iterate_over_regset_sections): Use
8235         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8236         (mips_linux_o32_sigframe_init): Remove comment.
8237
8238 2018-05-25  Pedro Alves  <palves@redhat.com>
8239
8240         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8241         (struct readahead_cache, struct packet_reg, struct
8242         remote_arch_state, class remote_state): Move higher up in the
8243         file.
8244         (remote_target::m_remote_state): Now an object instead of a pointer.
8245         (remote_target::get_remote_state): Adjust.
8246
8247 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8248
8249         * stack.c (select_and_print_frame): Delete.
8250         (struct function_bounds): Move struct within function.
8251         (func_command): Most content moved into new function
8252         find_frame_for_function, use new function, print result, add
8253         function comment.
8254         (find_frame_for_function): New function, now returns a result.
8255
8256 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8257
8258         * stack.c (iterate_over_block_arg_vars): Fix comment.
8259         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8260
8261 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8262
8263         PR gdb/23203
8264         * frame.c
8265         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8266         Define.
8267         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8268         Define.
8269         * frame.h (class scoped_restore_selected_frame): New class.
8270         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8271         of any exception, use scoped_restore_selected_frame to restore the
8272         frame instead.
8273
8274 2018-05-24  Pedro Alves  <palves@redhat.com>
8275
8276         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8277         override.
8278
8279 2018-05-23  Tom Tromey  <tom@tromey.com>
8280
8281         * complaints.c (struct complaints): Remove.
8282         (symfile_complaint_book): Remove.
8283         (series): New global.
8284         (complaint_internal): Update.
8285         (clear_complaints): Update.
8286
8287 2018-05-23  Tom Tromey  <tom@tromey.com>
8288
8289         * complaints.c (counters): New global.
8290         (struct complain): Remove.
8291         (struct complaints) <root>: Remove.
8292         (complaint_sentinel): Remove.
8293         (symfile_complaint_book): Update.
8294         (find_complaint) Remove.
8295         (complaint_internal, clear_complaints): Update.
8296
8297 2018-05-23  Tom Tromey  <tom@tromey.com>
8298
8299         * complaints.c (struct complain) <file, line>: Remove.
8300         (find_complaint): Remove file, line parameters.
8301         (complaint_internal): Update.
8302
8303 2018-05-23  Tom Tromey  <tom@tromey.com>
8304
8305         * complaints.c (vcomplaint): Remove.
8306         (complaint_internal) Merge in contents of vcomplaint.
8307
8308 2018-05-23  Tom Tromey  <tom@tromey.com>
8309
8310         * complaints.c (struct complaints) <explanation>: Remove.
8311         (symfile_explanations): Remove.
8312         (symfile_complaint_book): Update.
8313         (vcomplaint): Update.
8314         (struct explanation): Remove.
8315
8316 2018-05-23  Tom Tromey  <tom@tromey.com>
8317
8318         * complaints.c (symfile_complaints): Remove.
8319         (complaint_internal): Remove "complaints" parameter.
8320         (clear_complaints, vcomplaint): Remove "c" parameter.
8321         (get_complaints): Remove.
8322         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8323         (dwarf2_debug_line_missing_file_complaint)
8324         (dwarf2_debug_line_missing_end_sequence_complaint)
8325         (dwarf2_complex_location_expr_complaint)
8326         (dwarf2_const_value_length_mismatch_complaint)
8327         (dwarf2_section_buffer_overflow_complaint)
8328         (dwarf2_macro_malformed_definition_complaint)
8329         (dwarf2_invalid_attrib_class_complaint)
8330         (create_addrmap_from_index, dw2_symtab_iter_next)
8331         (dw2_expand_marked_cus)
8332         (dw2_debug_names_iterator::find_vec_in_debug_names)
8333         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8334         (create_debug_type_hash_table, init_cutu_and_read_dies)
8335         (partial_die_parent_scope, add_partial_enumeration)
8336         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8337         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8338         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8339         (create_cus_hash_table, create_dwp_hash_table)
8340         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8341         (dwarf2_rnglists_process, dwarf2_ranges_process)
8342         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8343         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8344         (handle_struct_member_die, process_structure_scope)
8345         (read_array_type, read_common_block, read_module_type)
8346         (read_tag_pointer_type, read_typedef, read_base_type)
8347         (read_subrange_type, load_partial_dies, partial_die_info::read)
8348         (partial_die_info::read, partial_die_info::read)
8349         (partial_die_info::read, read_checked_initial_length_and_offset)
8350         (dwarf2_string_attr, read_formatted_entries)
8351         (dwarf_decode_line_header)
8352         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8353         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8354         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8355         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8356         (get_signatured_type, get_DW_AT_signature_type)
8357         (decode_locdesc, file_file_name, consume_improper_spaces)
8358         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8359         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8360         (dwarf2_symbol_mark_computed, set_die_type)
8361         (read_attribute_value): Update.
8362         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8363         Update.
8364         * dbxread.c (unknown_symtype_complaint)
8365         (lbrac_mismatch_complaint, repeated_header_complaint)
8366         (set_namestring, function_outside_compilation_unit_complaint)
8367         (read_dbx_symtab, process_one_symbol): Update.
8368         * gdbtypes.c (stub_noname_complaint): Update.
8369         * windows-nat.c (handle_unload_dll): Update.
8370         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8371         (decode_base_type): Update.
8372         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8373         (eb_complaint, record_include_begin, record_include_end)
8374         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8375         (process_xcoff_symbol, read_symbol)
8376         (function_outside_compilation_unit_complaint)
8377         (scan_xcoff_symtab): Update.
8378         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8379         * buildsym.c (finish_block_internal, make_blockvector)
8380         (end_symtab_get_static_block, augment_type_symtab): Update.
8381         * dtrace-probe.c (dtrace_process_dof)
8382         (dtrace_static_probe_ops::get_probes): Update.
8383         * complaints.h (struct complaint): Don't declare.
8384         (symfile_complaints): Remove.
8385         (complaint_internal): Remove "complaints" parameter.
8386         (complaint): Likewise.
8387         (clear_complaints): Likewise.
8388         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8389         (reread_symbols): Update.
8390         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8391         (dwarf2_frame_cache, decode_frame_entry): Update.
8392         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8393         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8394         (info_selectors_command): Update.
8395         * macrotab.c (macro_include, check_for_redefinition)
8396         (macro_undef): Update.
8397         * objfiles.c (filter_overlapping_sections): Update.
8398         * stabsread.c (invalid_cpp_abbrev_complaint)
8399         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8400         (define_symbol, error_type, read_type, rs6000_builtin_type)
8401         (stabs_method_name_from_physname, read_member_functions)
8402         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8403         (attach_fields_to_type, complain_about_struct_wipeout)
8404         (read_range_type, read_args, common_block_start)
8405         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8406         Update.
8407         * mdebugread.c (index_complaint, unknown_ext_complaint)
8408         (basic_type_complaint, bad_tag_guess_complaint)
8409         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8410         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8411         (parse_procedure, parse_lines)
8412         (function_outside_compilation_unit_complaint)
8413         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8414         (bad_tag_guess_complaint, reg_value_complaint): Update.
8415         * cp-support.c (demangled_name_complaint): Update.
8416         * macroscope.c (sal_macro_scope): Update.
8417         * dwarf-index-write.c (class debug_names): Update.
8418
8419 2018-05-23  Tom Tromey  <tom@tromey.com>
8420
8421         * complaints.c (clear_complaints): Remove "noisy" parameter.
8422         * complaints.h (clear_complaints): Update.
8423         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8424         (reread_symbols): Update.
8425
8426 2018-05-23  Tom Tromey  <tom@tromey.com>
8427
8428         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8429         SUBSEQUENT_MESSAGE.
8430         (vcomplaint, clear_complaints): Update.
8431         (symfile_explanations): Remove some messages.
8432
8433 2018-05-23  Tom Tromey  <tom@tromey.com>
8434
8435         * complaints.c (internal_complaint): Remove.
8436         * complaints.h (internal_complaint): Remove.
8437
8438 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8439
8440         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8441
8442 2018-05-22  Pedro Alves  <palves@redhat.com>
8443
8444         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8445         (remote_fileio_badfd, remote_fileio_return_errno)
8446         (remote_fileio_return_success, remote_fileio_func_open)
8447         (remote_fileio_func_open, remote_fileio_func_close)
8448         (remote_fileio_func_read, remote_fileio_func_write)
8449         (remote_fileio_func_lseek, remote_fileio_func_rename)
8450         (remote_fileio_func_unlink, remote_fileio_func_stat)
8451         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8452         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8453         remote_target parameter.
8454         (remote_fio_func_map) <func>: Add remote_target parameter.
8455         (do_remote_fileio_request, remote_fileio_request):
8456         * remote-fileio.h (remote_fileio_request):
8457         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8458         remote_target parameter.
8459         (remote_notif_process, handle_notification): Adjust to pass down
8460         the remote.
8461         (remote_notif_state_allocate): Add remote_target parameter.  Save
8462         it.
8463         * remote-notif.h (struct remote_target): Forward declare.
8464         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8465         remote_target parameter.
8466         (struct remote_notif_state) <remote>: New field.
8467         (remote_notif_ack, remote_notif_parse): Add remote_target
8468         parameter.
8469         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8470         remote_target parameter.
8471         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8472         (threads_listing_context, rmt_thread_action, protocol_feature)
8473         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8474         (packet_result, struct threads_listing_context, remote_state):
8475         Move definitions and declarations higher up.
8476         (remote_target) <~remote_target>: Declare.
8477         (remote_download_command_source, remote_file_put, remote_file_get)
8478         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8479         (remote_hostio_pread_vFile, remote_hostio_send_command)
8480         (remote_hostio_set_filesystem, remote_hostio_open)
8481         (remote_hostio_close, remote_hostio_unlink, remote_state)
8482         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8483         (get_memory_write_packet_size, get_memory_read_packet_size)
8484         (append_pending_thread_resumptions, remote_detach_1)
8485         (append_resumption, remote_resume_with_vcont)
8486         (add_current_inferior_and_thread, wait_ns, wait_as)
8487         (process_stop_reply, remote_notice_new_inferior)
8488         (process_initial_stop_replies, remote_add_thread)
8489         (btrace_sync_conf, remote_btrace_maybe_reopen)
8490         (remove_new_fork_children, kill_new_fork_children)
8491         (discard_pending_stop_replies, stop_reply_queue_length)
8492         (check_pending_events_prevent_wildcard_vcont)
8493         (discard_pending_stop_replies_in_queue, stop_reply)
8494         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8495         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8496         (remote_interrupt_as, remote_interrupt_ns)
8497         (remote_get_noisy_reply, remote_query_attached)
8498         (remote_add_inferior, remote_current_thread, get_current_thread)
8499         (set_thread, set_general_thread, set_continue_thread)
8500         (set_general_process, write_ptid)
8501         (remote_unpack_thread_info_response, remote_get_threadinfo)
8502         (parse_threadlist_response, remote_get_threadlist)
8503         (remote_threadlist_iterator, remote_get_threads_with_ql)
8504         (remote_get_threads_with_qxfer)
8505         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8506         (get_offsets, remote_check_symbols, remote_supported_packet)
8507         (remote_query_supported, remote_packet_size)
8508         (remote_serial_quit_handler, remote_detach_pid)
8509         (remote_vcont_probe, remote_resume_with_hc)
8510         (send_interrupt_sequence, interrupt_query)
8511         (remote_notif_get_pending_events, fetch_register_using_p)
8512         (send_g_packet, process_g_packet, fetch_registers_using_g)
8513         (store_register_using_P, store_registers_using_G)
8514         (set_remote_traceframe, check_binary_download)
8515         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8516         (remote_xfer_live_readonly_partial, remote_read_bytes)
8517         (remote_send_printf, remote_flash_write, readchar)
8518         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8519         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8520         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8521         (extended_remote_disable_randomization, extended_remote_run)
8522         (send_environment_packet, extended_remote_environment_support)
8523         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8524         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8525         (packet_command): Now methods of ...
8526         (remote_target): ... this class.
8527         (m_remote_state) <remote_target>: New field.
8528         (struct remote_state) <stop_reply_queue,
8529         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8530         fields.
8531         (remote_state::remote_state): Allocate stop_reply_queue.
8532         (remote_state): Delete global.
8533         (get_remote_state_raw): Delete.
8534         (remote_target::get_remote_state): Allocate m_remote_state on
8535         demand.
8536         (get_current_remote_target): New.
8537         (remote_ops, extended_remote_ops): Delete.
8538         (wait_forever_enabled_p, remote_async_inferior_event_token):
8539         Delete, moved to struct remote_state.
8540         (remote_target::close): Delete self.  Destruction bits split to
8541         ...
8542         (remote_target::~remote_target): ... this.
8543         (show_memory_packet_size): Adjust to use
8544         get_current_remote_target.
8545         (struct protocol_feature) <func>: Add remote_target parameter.
8546         All callers adjusted.
8547         (curr_quit_handler_target): New.
8548         (remote_serial_quit_handler): Reimplement.
8549         (remote_target::open_1): Adjust to use get_current_remote_target.
8550         Heap-allocate remote_target/extended_remote_target instances.
8551         (vcont_builder::vcont_builder): Add remote_target parameter, and
8552         save it in m_remote.  All callers adjusted.
8553         (vcont_builder::m_remote): New field.
8554         (vcont_builder::restart, vcont_builder::flush)
8555         (vcont_builder::push_action): Use it.
8556         (remote_target::commit_resume): Use it.
8557         (struct queue_iter_param) <remote>: New field.
8558         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8559         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8560         (check_pending_event_prevents_wildcard_vcont_callback)
8561         (remote_target::check_pending_events_prevent_wildcard_vcont)
8562         (remote_target::discard_pending_stop_replies)
8563         (remote_target::discard_pending_stop_replies_in_queue)
8564         (remote_target::remote_notif_remove_queued_reply): Fill in
8565         'remote' field.
8566         (remote_notif_get_pending_events): New.
8567         (remote_target::readchar, remote_target::remote_serial_write):
8568         Save/restore curr_quit_handler_target.
8569         (putpkt): New.
8570         (kill_new_fork_children): Fill in 'remote' field.
8571         (packet_command): Use get_current_remote_target, defer to
8572         remote_target method of same name.
8573         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8574         parameter, and save it in m_remote.  All callers adjusted.
8575         (scoped_remote_fd::release): Use m_remote.
8576         (scoped_remote_fd::m_remote): New field.
8577         (remote_file_put, remote_file_get, remote_file_delete): Use
8578         get_current_remote_target, defer to remote_target method of same
8579         name.
8580         (remote_btrace_reset): Add remote_state paremeter.  Update all
8581         callers.
8582         (remote_async_inferior_event_handler). Pass down 'data'.
8583         (remote_new_objfile): Use get_current_remote_target.
8584         (remote_target::vcont_r_supported): New.
8585         (set_range_stepping): Use get_current_remote_target and
8586         remote_target::vcont_r_supported.
8587         (_initialize_remote): Don't allocate 'remote_state' and
8588         'stop_reply_queue' globals.
8589         * remote.h (struct remote_target): Forward declare.
8590         (getpkt, putpkt, remote_notif_get_pending_events): Add
8591         'remote_target' parameter.
8592
8593 2018-05-22  Pedro Alves  <palves@redhat.com>
8594
8595         * remote.c (vcont_builder): Now a class.  Make all data members
8596         private.
8597         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8598         Declare methods.
8599         (vcont_builder_restart): Rename to ...
8600         (vcont_builder::restart): ... this.
8601         (vcont_builder_flush): Rename to ...
8602         (vcont_builder::flush): ... this.
8603         (vcont_builder_push_action): Rename to ...
8604         (vcont_builder::push_action): ... this.
8605         (remote_target::commit_resume): Adjust.
8606
8607 2018-05-22  Pedro Alves  <palves@redhat.com>
8608
8609         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8610         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8611         (get_fixed_memory_packet_size): New.
8612         (get_memory_packet_size): Use it.
8613         (set_memory_packet_size): Don't override the config size with
8614         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8615         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8616         Don't refer to get_memory_packet_size if not connected to a remote
8617         target.  Show "(default)" if configured size is 0.
8618
8619 2018-05-22  Pedro Alves  <palves@redhat.com>
8620
8621         * remote.c (remote_target::mourn_inferior): Move
8622         discard_pending_stop_replies call here from ...
8623         (_initialize_remote): ... here.
8624
8625 2018-05-22  Pedro Alves  <palves@redhat.com>
8626
8627         * remote.c (compare_section_command): Remove set_general_process
8628         call.
8629
8630 2018-05-22  Pedro Alves  <palves@redhat.com>
8631
8632         * remote.c (struct packet_reg, struct remote_arch_state):
8633         Move higher up in the file.
8634         (remote_state) <m_arch_states>: Store remote_arch_state values
8635         instead of remote_arch_state pointers.
8636         (remote_state::get_remote_arch_state): Adjust.
8637
8638 2018-05-22  Pedro Alves  <palves@redhat.com>
8639
8640         * remote.c: Include <unordered_map>.
8641         (remote_state): Now a class.
8642         (remote_state) <get_remote_arch_state>: Declare method.
8643         <get_remote_arch_state>: New field.
8644         (remote_arch_state) <remote_arch_state>: Declare ctor.
8645         <regs>: Now a unique_ptr.
8646         (remote_gdbarch_data_handle): Delete.
8647         (get_remote_arch_state): Delete.
8648         (remote_state::get_remote_arch_state): New.
8649         (get_remote_state): Adjust to call remote_state's
8650         get_remote_arch_state method.
8651         (init_remote_state): Delete, bits factored out to ...
8652         (remote_arch_state::remote_arch_state): ... this new method.
8653         (get_remote_packet_size, get_memory_packet_size)
8654         (process_g_packet, remote_target::fetch_registers)
8655         (remote_target::prepare_to_store, store_registers_using_G)
8656         (remote_target::store_registers, remote_target::get_trace_status):
8657         Adjust to call remote_state's method.
8658         (_initialize_remote): Remove reference to
8659         remote_gdbarch_data_handle.
8660
8661 2018-05-22  Pedro Alves  <palves@redhat.com>
8662
8663         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8664         pread>: New method declarations.
8665         (remote_target::open_1): Adjust.
8666         (readahead_cache_invalidate): Rename to ...
8667         (readahead_cache::invalidate): ... this, and adjust to be a class
8668         method.
8669         (readahead_cache_invalidate_fd): Rename to ...
8670         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8671         class method.
8672         (remote_hostio_pwrite): Adjust.
8673         (remote_hostio_pread_from_cache): Rename to ...
8674         (readahead_cache::pread): ... this, and adjust to be a class
8675         method.
8676         (remote_hostio_close): Adjust.
8677
8678 2018-05-22  Pedro Alves  <palves@redhat.com>
8679
8680         * remote.c (remote_hostio_close_cleanup): Delete.
8681         (class scoped_remote_fd): New.
8682         (remote_file_put, remote_file_get): Use it.
8683
8684 2018-05-22  Pedro Alves  <palves@redhat.com>
8685
8686         (struct vCont_action_support): Use bool and initialize all fields.
8687         (struct readahead_cache): Initialize all fields.
8688         (remote_state): Use bool and initialize all fields.
8689         (remote_state::remote_state, remote_state::~remote_state): New.
8690         (new_remote_state): Delete.
8691         (_initialize_remote): Use new to allocate remote_state.
8692
8693 2018-05-22  Pedro Alves  <palves@redhat.com>
8694             張俊芝  <zjz@zjz.name>
8695
8696         PR gdb/22973
8697         * c-exp.y: Include "c-support.h".
8698         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8699         of tolower.  Use c_ident_is_alpha to scan names.
8700         * c-lang.c: Include "c-support.h".
8701         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8702         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8703         * c-support.h: New file, with bits factored out from ...
8704         * cp-name-parser.y: ... this file.
8705         Include "c-support.h".
8706         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8707         c-support.h and renamed.
8708         (symbol_end, yylex): Adjust.
8709
8710 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8711
8712         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8713         parameter type to CORE_ADDR.
8714         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8715         parameter type in declaration to CORE_ADDR.
8716         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8717         target_auxv_search to get AT_HWCAP and use the result to get the
8718         target description.
8719         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8720         to CORE_ADDR. Remove the cast of the return value to unsigned
8721         long. Fix error predicate of target_auxv_search.
8722         (ppc_linux_nat_target::read_description): Change the type of the
8723         hwcap variable to CORE_ADDR.
8724
8725 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8726
8727         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8728         if the size of fpscr is larger than 32 bits.
8729
8730 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8731
8732         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8733         (ppc32_linux_vsxregmap): New global.
8734         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8735         regcache_supply_regset, and regcache_collect_regset.
8736         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8737         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8738         (fetch_vsx_register, store_vsx_register): Remove.
8739         (fetch_vsx_registers): Add regno parameter. Get regset using
8740         ppc_linux_vsxregset. Use regset to supply registers.
8741         (store_vsx_registers): Add regno parameter. Get regset using
8742         ppc_linux_vsxregset. Use regset to collect registers.
8743         (fetch_register): Call fetch_vsx_registers instead of
8744         fetch_vsx_register.
8745         (store_register): Call store_vsx_registers instead of
8746         store_vsx_register.
8747         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8748         new regno parameter.
8749         (store_ppc_registers): Call store_vsx_registers with -1 for the
8750         new regno parameter.
8751         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8752         (ppc_collect_vsxregset): Remove.
8753
8754 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8755
8756         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8757         offset fields.
8758         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8759         for vector register offset fields.
8760         (ppc64_fbsd_reg_offsets): Likewise.
8761         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8762         to vector register offset fields.
8763         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8764         to vector register offset fields.
8765         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8766         vector register offset fields.
8767         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8768         initializers for vector register offset fields.
8769         (rs6000_aix64_reg_offsets): Likewise.
8770         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8771         (ppc_supply_vrregset): Remove.
8772         (ppc_collect_vrregset): Remove.
8773         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8774         (ppc_linux_vrregset) : New function.
8775         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8776         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8777         (ppc32_linux_vrregset): Remove.
8778         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8779         and use result instead of ppc32_linux_vrregset.
8780         (ppc32_linux_reg_offsets): Remove initializers for vector register
8781         offset fields.
8782         (ppc64_linux_reg_offsets): Likewise.
8783         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8784         * ppc-linux-nat.c: Include regset.h.
8785         (gdb_vrregset_t): Adjust comment to account for little-endian
8786         mode.
8787         (supply_vrregset, fill_vrregset): Remove.
8788         (fetch_altivec_register, store_altivec_register): Remove.
8789         (fetch_altivec_registers): Add regno parameter. Get regset using
8790         ppc_linux_vrregset. Use regset to supply registers.
8791         (store_altivec_registers): Add regno parameter. Get regset using
8792         ppc_linux_vrregset. Use regset to collect registers.
8793         (fetch_register): Call fetch_altivec_registers instead of
8794         fetch_altivec_register.
8795         (store_register): Call store_altivec_registers instead of
8796         store_altivec_register.
8797         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8798         the new regno parameter.
8799         (store_ppc_registers): Call store_altivec_registers with -1 for
8800         the new regno parameter.
8801
8802 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8803
8804         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8805         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8806         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8807         (gdb_vrregset_t): Change array type size to
8808         PPC_LINUX_SIZEOF_VRREGSET.
8809         (gdb_vsxregset_t): Change array type size to
8810         PPC_LINUX_SIZEOF_VSXREGSET.
8811         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8812         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8813         PPC_LINUX_SIZEOF_VSXREGSET.
8814
8815 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8816
8817         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8818         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8819         nat/ppc-linux.c.
8820         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8821         ppc_linux_target_wordsize with tid.
8822         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8823         wordsize with tid.
8824         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8825         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8826         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8827         tid parameter. Remove static specifier.
8828         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8829         (ppc_linux_target_wordsize): New declaration.
8830
8831 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8832
8833         * arch/ppc-linux-common.c: New file.
8834         * arch/ppc-linux-common.h: New file.
8835         * arch/ppc-linux-tdesc.h: New file.
8836         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8837         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8838         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8839         arch/ppc-linux-tdesc.h.
8840         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8841         arch/ppc-linux-tdesc.h.
8842         (ppc_linux_nat_target::read_description): Remove target
8843         description matching code. Fill a ppc_linux_features struct and
8844         call ppc_linux_match_description with it. Move comment about ISA
8845         2.05 to ppc-linux-common.c.
8846         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8847         arch/ppc-linux-tdesc.h.
8848         (ppc_linux_core_read_description): Remove target description
8849         matching code. Fill a ppc_linux_features struct and call
8850         ppc_linux_match_description with it.
8851         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8852         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8853         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8854         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8855         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8856         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8857         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8858         (tdesc_powerpc_e500l): Remove.
8859
8860 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8861
8862         * ada-lang.c (catch_assert_command): Pass empty string instead
8863         of NULL for excep_string argument.
8864
8865 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8866
8867         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8868         the width of the requested register exceeds the width of the
8869         `ptrace' data type.
8870
8871 2018-05-21  Tom Tromey  <tom@tromey.com>
8872
8873         * printcmd.c (output_command): Remove.
8874         (output_command_const): Rename to output_command.
8875         * valprint.h (output_command): Rename from output_command_const.
8876         * tracepoint.c (trace_dump_actions): Call output_command.
8877
8878 2018-05-21  Tom Tromey  <tom@tromey.com>
8879
8880         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8881         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8882         * ada-lang.h (create_ada_exception_catchpoint): Update.
8883         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8884         std::string.
8885         (create_excep_cond_exprs, ~ada_catchpoint)
8886         (should_stop_exception, print_one_exception)
8887         (print_mention_exception, print_recreate_exception): Update.
8888         (ada_get_next_arg): Remove.
8889         (catch_ada_exception_command_split): Use std::string.  Change type
8890         of "excep_string", "cond_string".
8891         (catch_ada_exception_command): Update.
8892         (create_ada_exception_catchpoint): Change type of excep_string.
8893         (ada_exception_sal): Remove excep_string parameter.
8894         (~ada_catchpoint): Remove.
8895
8896 2018-05-21  Tom Tromey  <tom@tromey.com>
8897
8898         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8899         cleanup.
8900
8901 2018-05-21  Tom Tromey  <tom@tromey.com>
8902
8903         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8904         Return unique_xmalloc_ptr.
8905         (print_it_exception): Update.
8906
8907 2018-05-21  Tom Tromey  <tom@tromey.com>
8908
8909         * tracepoint.c (trace_dump_actions): Use std::string.
8910
8911 2018-05-21  Tom Tromey  <tom@tromey.com>
8912
8913         * symfile.c (reread_symbols): Use std::string for original_name.
8914
8915 2018-05-21  Tom Tromey  <tom@tromey.com>
8916
8917         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8918         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8919         constructor.
8920
8921 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8922
8923         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8924         instance to...
8925         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8926         * objfiles.c (get_objfile_bfd_data): Allocate
8927         objfile_per_bfd_storage with obstack_new when allocating on
8928         obstack.
8929
8930 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8931
8932         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8933         OBSTACK_ZALLOC.
8934         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8935         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8936         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8937         (add_pending): Likewise.
8938         (parse_symbol): Likewise.
8939         (parse_partial_symbols): Likewise.
8940         (psymtab_to_symtab_1): Likewise.
8941         (new_psymtab): Likewise.
8942         (elfmdebug_build_psymtabs): Likewise.
8943         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8944         * objfiles.c (get_objfile_bfd_data): Likewise.
8945         (objfile_register_static_link): Likewise.
8946         * psymtab.c (allocate_psymtab): Likewise.
8947         * stabsread.c (read_member_functions): Likewise.
8948         * xcoffread.c (xcoff_end_psymtab): Likewise.
8949
8950 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8951
8952         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8953         compiler supports std::is_trivially_constructible.
8954         * common/poison.h: Include obstack.h.
8955         (IsMallocable): Define to is_trivially_constructible if the
8956         compiler supports it, define to true_type otherwise.
8957         (xobnew): New.
8958         (XOBNEW): Redefine.
8959         (xobnewvec): New.
8960         (XOBNEWVEC): Redefine.
8961         * gdb_obstack.h (obstack_zalloc): New.
8962         (OBSTACK_ZALLOC): Redefine.
8963         (obstack_calloc): New.
8964         (OBSTACK_CALLOC): Redefine.
8965         (obstack_new): New.
8966         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8967         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8968         gdbarch.c.
8969         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8970         obstack_calloc/obstack_zalloc.
8971         (gdbarch_obstack_zalloc): Remove.
8972         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8973
8974 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8975
8976         * stack.c (backtrace_command_1): Remove useless variable int i.
8977
8978 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8979
8980         * stack.c (print_frame_info): Fix comment.
8981
8982 2018-05-18  Tom Tromey  <tom@tromey.com>
8983
8984         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8985         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8986         (~dwarf2_per_objfile): Update
8987         (dwarf2_get_dwz_file): Use new.
8988         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8989         unique_ptr.
8990
8991 2018-05-18  Tom Tromey  <tom@tromey.com>
8992
8993         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8994         unique_ptr.
8995         * dwarf2read.c (struct dwp_file): Add constructor and
8996         initializers.
8997         (open_and_init_dwp_file): Return a unique_ptr.
8998         (dwarf2_per_objfile, create_dwp_hash_table)
8999         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9000         (lookup_dwo_unit_in_dwp): Update.
9001         (open_and_init_dwp_file, get_dwp_file): Update.
9002
9003 2018-05-18  Tom Tromey  <tom@tromey.com>
9004
9005         * dwarf2read.c (dwarf2_per_objfile): Update.
9006         (struct mapped_index): Add initializers.
9007         (dwarf2_read_index): Use new.
9008         (dw2_symtab_iter_init): Update.
9009         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9010         unique_ptr.
9011
9012 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9013
9014         * dwarf2read.c (mapped_index) <total_size>: Remove.
9015
9016 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9017
9018         * unittests/format_pieces-selftests.c (test_format_specifier):
9019         Add ARI comments.
9020
9021 2018-05-18  Tom Tromey  <tom@tromey.com>
9022
9023         * c-typeprint.c (maybe_print_hole): New function.
9024         (c_print_type_struct_field_offset): Update.
9025         (c_type_print_base_struct_union): Call maybe_print_hole.
9026
9027 2018-05-17  Keith Seitz  <keiths@redhat.com>
9028
9029         * breakpoint.c (build_bpstat_chain): New function, moved from
9030         bpstat_stop_status.
9031         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9032         If no stop chain is passed, call build_bpstat_chain to build it.
9033         * breakpoint.h (build_bpstat_chain): Declare.
9034         (bpstat_stop_status): Move documentation here from breakpoint.c.
9035         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9036         build the stop chain and pass it to skip_inline_frames.
9037         Pass this stop chain to bpstat_stop_status.
9038         * inline-frame.c: Include breakpoint.h.
9039         (stopped_by_user_bp_inline_frame): New function.
9040         (skip_inline_frames): Add parameter `stop_chain'.
9041         Move documention to inline-frame.h.
9042         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9043         whether the frame should be elided.
9044         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9045         Add moved documentation and update for new parameter.
9046
9047 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9048
9049         PR cli/14975
9050         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9051         unittests/format_pieces-selftests.c.
9052         * common/format.h (format_piece) <operator==>: New.
9053         (format_pieces) <operator[]>: Remove.
9054         * common/format.c (format_pieces::format_pieces): Handle \e.
9055         * unittests/format_pieces-selftests.c: New.
9056
9057 2018-05-17  Tom Tromey  <tom@tromey.com>
9058
9059         PR symtab/23010:
9060         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9061         (dw2_instantiate_symtab): Add skip_partial parameter.
9062         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9063         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9064         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9065         (dw2_expand_symtabs_matching_one)
9066         (dw2_find_pc_sect_compunit_symtab)
9067         (dw2_debug_names_lookup_symbol)
9068         (dw2_debug_names_expand_symtabs_for_function): Update.
9069         (init_cutu_and_read_dies): Add skip_partial parameter.
9070         (process_psymtab_comp_unit, build_type_psymtabs_1)
9071         (process_skeletonless_type_unit, load_partial_comp_unit)
9072         (psymtab_to_symtab_1): Update.
9073         (load_full_comp_unit): Add skip_partial parameter.
9074         (process_imported_unit_die, dwarf2_read_addr_index)
9075         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9076         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9077         (read_signatured_type): Update.
9078
9079 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9080
9081         * value.c (release_value): Remove unused variable.
9082         (record_latest_value): Likewise.
9083         (access_value_history): Likewise.
9084         (preserve_values): Likewise.
9085
9086 2018-05-17  Tom Tromey  <tom@tromey.com>
9087
9088         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9089         Initialize.
9090
9091 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9092
9093         PR gdb/22286
9094         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9095         Also handle registers whose width is not a multiple of
9096         PTRACE_TYPE_RET.
9097         (linux_nat_trad_target::store_register): Likewise.
9098
9099 2018-05-16  Tom Tromey  <tom@tromey.com>
9100
9101         * gdbcore.h (core_bfd): Redefine.
9102         * corelow.c (core_target::close): Update.
9103         (core_target_open): Update.
9104         * progspace.h (struct program_space) <cbfd>: Now a
9105         gdb_bfd_ref_ptr.
9106
9107 2018-05-16  Tom Tromey  <tom@tromey.com>
9108
9109         PR cli/19551:
9110         * symfile-add-flags.h (enum symfile_add_flags)
9111         <SYMFILE_NOT_FILENAME>: New constant.
9112         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9113         objfile name from BFD.
9114         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9115         * minidebug.c (find_separate_debug_file_in_section): Put
9116         ".gnu_debugdata" into BFD's file name.
9117
9118 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9119
9120         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9121         Remove.
9122
9123 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9124
9125         PR binutils/21446
9126         * aarch64-tdep.c (aarch64_analyze_prologue,
9127         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9128         Indicate not interested in errors.
9129
9130 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9131
9132         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9133         Supply the MIPS_ZERO_REGNUM register.
9134
9135 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9136
9137         * mips-tdep.c (mask_address_var): Make variable static.
9138
9139 2018-05-14  Tom Tromey  <tom@tromey.com>
9140
9141         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9142
9143 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9144
9145         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9146         FXSAVE_ADDR for the mxcsr register.
9147
9148 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9149
9150         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9151
9152 2018-05-11  Pedro Alves  <palves@redhat.com>
9153
9154         * corelow.c (core_target) <core_target>: No longer inline.
9155         Initialize m_core_gdbarch, m_core_vec and build the section table
9156         here.
9157         <~core_target>: New.
9158         <core_gdbarch, get_core_register_section>: New methods.
9159         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9160         factored out from ...
9161         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9162         (core_ops): Delete.
9163         (sniff_core_bfd): Add gdbarch parameter.
9164         (core_close): Delete, merged into ...
9165         (core_target::close): ... here.  Delete self.
9166         (core_close_cleanup): Delete.
9167         (core_target_open): Allocate a core_target on the heap.  Use a
9168         unique_ptr instead of a cleanup.  Bits moved into the core_target
9169         ctor.  Adjust to use core_target methods instead of globals.
9170         (get_core_register_section): Rename to ...
9171         (core_target::get_core_register_section): ... this and adjust.
9172         (struct get_core_registers_cb_data): New.
9173         (get_core_registers_cb): Use it.  Use bool.
9174         (core_target::fetch_registers, core_target::files_info)
9175         (core_target::xfer_partial, core_target::read_description)
9176         (core_target::pid_to, core_target::thread_name): Adjust to
9177         reference class fields instead of globals.
9178         * target.h (struct target_ops_deleter, target_ops_up): New.
9179
9180 2018-05-11  Pedro Alves  <palves@redhat.com>
9181
9182         * corefile.c (core_file_command): Move to corelow.c.
9183         * corelow.c (the_core_target): Delete.
9184         (core_file_command): Moved from corefile.c.  Check exec_bfd
9185         instead of the_core_target.  Use target_detach instead of calling
9186         into the_core_target directly.
9187         (maybe_say_no_core_file_now): New.
9188         (core_target::detach): Use it.
9189         (_initialize_corelow): Remove references to the_core_target.
9190         * gdbcore.h (the_core_target): Delete.
9191
9192 2018-05-11  Tom Tromey  <tromey@redhat.com>
9193             Pedro Alves  <palves@redhat.com>
9194
9195         * corefile.c (core_bfd): Remove.
9196         * gdbcore.h (core_bfd): Now a macro.
9197         * progspace.h (struct program_space) <cbfd>: New field.
9198
9199 2018-05-11  Tom Tromey  <tom@tromey.com>
9200
9201         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9202         gdb::def_vector.
9203
9204 2018-05-10  Tom Tromey  <tom@tromey.com>
9205
9206         * configure: Rebuild.
9207         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9208
9209 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9210
9211         PR server/23158:
9212         * regformats/regdat.sh: Adjust script, following the addition
9213         of the new expedite_regs parameter to init_target_desc.
9214
9215 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9216     
9217         PR gdb/23127
9218         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9219         set_gdbarch_significant_addr_bit.
9220         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9221         set_gdbarch_significant_addr_bit.
9222         * utils.c (address_significant): Update to sign extend addr.
9223
9224 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9225
9226         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9227         (xtensa_linux_init_abi): Limit tdep->num_regs by
9228         tdep->num_nopriv_regs.
9229         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9230         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9231         not initialized.
9232
9233 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9234
9235         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9236
9237 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9238
9239         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9240         (I387_MXCSR_INIT_VAL): New constant.
9241         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9242         buffer if it was supplied by the inferior.
9243         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9244         (i387_xsave_get_clear_bv): New function.
9245         (i387_supply_xsave): Only read x87 control registers from the
9246         xsave buffer if the feature is enabled, and the state will have
9247         been written, otherwise, provide a suitable default.
9248         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9249         including x87 control registers.  Update control registers if they
9250         have changed from the default value, and mark features as enabled
9251         as required.
9252         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9253
9254 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9255
9256         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9257
9258 2018-05-07  Tom Tromey  <tom@tromey.com>
9259
9260         * configure: Rebuild.
9261         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9262
9263 2018-05-07  Tom Tromey  <tom@tromey.com>
9264
9265         PR tdep/20362:
9266         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9267         bit.  Use correct value for VDIV.
9268
9269 2018-05-04  Tom Tromey  <tom@tromey.com>
9270
9271         * configure: Rebuild.
9272         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9273
9274 2018-05-04  Tom Tromey  <tom@tromey.com>
9275
9276         * linux-record.c (record_linux_system_call) <case
9277         RECORD_SYS_RECVFROM>: Add "break".
9278
9279 2018-05-04  Tom Tromey  <tom@tromey.com>
9280
9281         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9282         Add missing "break".
9283         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9284         Add missing "break".
9285
9286 2018-05-04  Tom Tromey  <tom@tromey.com>
9287
9288         * rs6000-tdep.c (ppc_process_record_op4)
9289         (ppc_process_record_op63): Add fall-through comment.
9290
9291 2018-05-04  Tom Tromey  <tom@tromey.com>
9292
9293         * i386-tdep.c (i386_process_record): Add fall-through comment.
9294
9295 2018-05-04  Tom Tromey  <tom@tromey.com>
9296
9297         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9298         comment.
9299
9300 2018-05-04  Tom Tromey  <tom@tromey.com>
9301
9302         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9303         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9304         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9305         comment.
9306         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9307         comment.
9308         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9309         comment.
9310
9311 2018-05-04  Tom Tromey  <tom@tromey.com>
9312
9313         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9314
9315 2018-05-04  Tom Tromey  <tom@tromey.com>
9316
9317         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9318         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9319         * symfile.c (section_is_mapped): Fix fall-through comment.
9320         * stabsread.c (define_symbol, read_member_functions): Fix
9321         fall-through comment.
9322         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9323         comment.
9324         * remote.c (remote_wait_as): Fix fall-through comment.
9325         * p-exp.y (yylex): Fix fall-through comment.
9326         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9327         comment.
9328         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9329         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9330         * jv-exp.y (yylex): Fix fall-through comment.
9331         * go-exp.y (lex_one_token): Fix fall-through comment.
9332         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9333         fall-through comment.
9334         * f-exp.y (yylex): Fix fall-through comment.
9335         * dwarf2read.c (process_die): Fix fall-through comments.
9336         * dbxread.c (process_one_symbol): Fix fall-through comment.
9337         * d-exp.y (lex_one_token): Fix fall-through comment.
9338         * cp-name-parser.y (yylex): Fix fall-through comment.
9339         * coffread.c (coff_symtab_read): Fix fall-through comment.
9340         * c-exp.y (lex_one_token): Fix fall-through comment.
9341         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9342         comment.
9343         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9344         comment.
9345
9346 2018-05-04  Tom Tromey  <tom@tromey.com>
9347
9348         PR python/22730:
9349         * NEWS: Mention gdb.execute change.
9350         * gdbcmd.h (execute_control_command): Don't declare.
9351         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9352         execute_control_commands, execute_control_commands_to_string.
9353         * cli/cli-script.h (execute_control_commands)
9354         (execute_control_commands_to_string): Declare.
9355         (execute_control_command): Add from_tty parameter.
9356         * cli/cli-script.c (execute_control_commands)
9357         (execute_control_commands_to_string): New functions.
9358         (execute_user_command): Use execute_control_commands.
9359         (execute_control_command_1): Add "from_tty" parameter.  Update.
9360         (execute_control_command): Likewise.
9361
9362 2018-05-04  Tom Tromey  <tom@tromey.com>
9363
9364         PR python/22731:
9365         * NEWS: Mention that breakpoint commands are writable.
9366         * python/py-breakpoint.c (bppy_set_commands): New function.
9367         (breakpoint_object_getset) <"commands">: Use it.
9368
9369 2018-05-04  Tom Tromey  <tom@tromey.com>
9370
9371         * tracepoint.c (actions_command): Update.
9372         * mi/mi-cmd-break.c (mi_command_line_array)
9373         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9374         (mi_read_next_line): Remove.
9375         (mi_cmd_break_commands): Update.
9376         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9377         function_view.
9378         * cli/cli-script.c (get_command_line): Update.
9379         (process_next_line): Use function_view.  Constify.
9380         (recurse_read_control_structure, read_command_lines)
9381         (read_command_lines_1): Change argument types to function_view.
9382         (do_define_command, document_command): Update.
9383         * breakpoint.h (check_tracepoint_command): Don't declare.
9384         * breakpoint.c (check_tracepoint_command): Remove.
9385         (commands_command_1, create_tracepoint_from_upload): Update.
9386
9387 2018-05-04  Tom Tromey  <tom@tromey.com>
9388
9389         PR gdb/11750:
9390         * cli/cli-script.h (enum command_control_type) <define_control>:
9391         New constant.
9392         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9393         (build_command_line, execute_control_command_1)
9394         (process_next_line): Likewise.
9395         (do_define_command): New function, extracted from define_command.
9396         (define_command): Use it.
9397
9398 2018-05-04  Tom Tromey  <tom@tromey.com>
9399
9400         * tracepoint.c (actions_command): Update.
9401         * cli/cli-script.h (read_command_lines): Update.
9402         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9403         (MAX_TMPBUF): Remove define.
9404         (define_command): Use string_printf.
9405         (document_command): Likewise.
9406         * breakpoint.c (commands_command_1): Update.
9407
9408 2018-05-04  Tom Tromey  <tom@tromey.com>
9409
9410         * top.c (execute_command): Update.
9411         * cli/cli-script.h (print_command_lines): Now varargs.
9412         * cli/cli-script.c (print_command_lines): Now varargs.
9413         (execute_control_command_1) <case while_control, case if_control>:
9414         Update.
9415
9416 2018-05-04  Tom Tromey  <tom@tromey.com>
9417
9418         * tracepoint.c (all_tracepoint_actions): Rename from
9419         all_tracepoint_actions_and_cleanup.  Change return type.
9420         (actions_command, encode_actions_1, encode_actions)
9421         (trace_dump_actions, tdump_command): Update.
9422         * remote.c (remote_download_command_source): Update.
9423         * python/python.c (gdbpy_eval_from_control_command)
9424         (python_command, python_interactive_command): Update.
9425         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9426         * guile/guile.c (guile_command)
9427         (gdbscm_eval_from_control_command, guile_command): Update.
9428         * compile/compile.c (compile_code_command)
9429         (compile_print_command, compile_to_object): Update.
9430         * cli/cli-script.h (struct command_lines_deleter): New.
9431         (counted_command_line): New typedef.
9432         (struct command_line): Add constructor, destructor.
9433         <body_list>: Remove.
9434         <body_list_0, body_list_1>: New members.
9435         (command_line_up): Remove typedef.
9436         (read_command_lines, read_command_lines_1, get_command_line):
9437         Update.
9438         (copy_command_lines): Don't declare.
9439         * cli/cli-script.c (build_command_line): Use "new".
9440         (get_command_line): Return counted_command_line.
9441         (print_command_lines, execute_user_command)
9442         (execute_control_command_1, while_command, if_command): Update.
9443         (realloc_body_list): Remove.
9444         (process_next_line, recurse_read_control_structure): Update.
9445         (read_command_lines, read_command_lines_1): Return counted_command_line.
9446         (free_command_lines): Use "delete".
9447         (copy_command_lines): Remove.
9448         (define_command, document_command, show_user_1): Update.
9449         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9450         a counted_command_line.
9451         * breakpoint.h (counted_command_line): Remove typedef.
9452         (breakpoint_set_commands): Update.
9453         * breakpoint.c (check_no_tracepoint_commands)
9454         (validate_commands_for_breakpoint): Update.
9455         (breakpoint_set_commands): Change commands to be a
9456         counted_command_line.
9457         (commands_command_1, update_dprintf_command_list)
9458         (create_tracepoint_from_upload): Update.
9459
9460 2018-05-04  Tom Tromey  <tom@tromey.com>
9461
9462         * cli/cli-decode.h (cmd_list_element): New constructor.
9463         (~cmd_list_element): New destructor.
9464         (struct cmd_list_element): Add initializers.
9465         * cli/cli-decode.c (do_add_cmd): Use "new".
9466         (delete_cmd): Use "delete".
9467
9468 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9469             Pedro Alves <palves@redhat.com>
9470
9471         PR breakpoints/19806 and support for PR external/20207.
9472         * NEWS: Mention Aarch64 watchpoint improvements.
9473         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9474         watchpoints and PR external/20207 watchpoints.
9475         * nat/aarch64-linux-hw-point.c
9476         (kernel_supports_any_contiguous_range): New.
9477         (aarch64_watchpoint_offset): New.
9478         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9479         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9480         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9481         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9482         next_addr_orig_p.  Support PR external/20207 watchpoints.
9483         (aarch64_downgrade_regs): New.
9484         (aarch64_dr_state_insert_one_point): New parameters offset and
9485         addr_orig.
9486         (aarch64_dr_state_remove_one_point): Likewise.
9487         (aarch64_handle_breakpoint): Update caller.
9488         (aarch64_handle_aligned_watchpoint): Likewise.
9489         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9490         aligned_offset.
9491         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9492         aarch64_downgrade_regs.
9493         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9494         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9495         (DR_CONTROL_MASK): ... this.
9496         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9497         (unsigned int aarch64_watchpoint_offset): New prototype.
9498         (aarch64_linux_set_debug_regs): Remove const from state.
9499         * utils.c (align_up, align_down): Move to ...
9500         * common/common-utils.c (align_up, align_down): ... here.
9501         * utils.h (align_up, align_down): Move to ...
9502         * common/common-utils.h (align_up, align_down): ... here.
9503
9504 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9505
9506         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9507         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9508         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9509         Re-implement to match the ABI as summarized in GCC's
9510         gcc/config/sparc/sparc.c.  All callers updated.
9511         (sparc32_store_arguments): Remove assertion.
9512
9513 2018-05-04  Tom Tromey  <tom@tromey.com>
9514
9515         * printcmd.c: Don't include tui.h.
9516         (decode_format): Use skip_spaces.
9517
9518 2018-05-04  Tom Tromey  <tom@tromey.com>
9519
9520         PR gdb/22619:
9521         * printcmd.c (last_count): New global.
9522         (x_command): Use saved count when repeating.
9523
9524 2018-05-04  Tom Tromey  <tom@tromey.com>
9525
9526         * nto-procfs.c (do_closedir_cleanup): Remove.
9527         (procfs_pidlist): Use gdb_dir_up.
9528         * procfs.c (do_closedir_cleanup): Remove.
9529         (proc_update_threads): Use gdb_dir_up.
9530         * common/filestuff.h (struct gdb_dir_deleter): New.
9531         (gdb_dir_up): New typedef.
9532
9533 2018-05-04  Tom Tromey  <tom@tromey.com>
9534
9535         * ada-lang.c (print_mention_exception): Use std::string.
9536
9537 2018-05-04  Tom Tromey  <tom@tromey.com>
9538
9539         * ada-lang.c (create_excep_cond_exprs): Update.
9540         (ada_exception_catchpoint_cond_string): Use std::string.
9541
9542 2018-05-04  Tom Tromey  <tom@tromey.com>
9543
9544         * ada-lang.c (xget_renaming_scope): Return std::string.
9545         (old_renaming_is_invisible): Update.
9546
9547 2018-05-04  Tom Tromey  <tom@tromey.com>
9548
9549         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9550         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9551
9552 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9553
9554         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9555
9556 2018-05-04  Tom Tromey  <tom@tromey.com>
9557
9558         * remote.c (remote_query_supported_append): Change type.
9559         (remote_check_symbols): Update.
9560
9561 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9562
9563         PR gdb/11420
9564         * configure.ac: Prepend libpython.
9565         * python/python-config.py: Likewise.
9566         * configure: Regenerate.
9567
9568 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9569
9570         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9571
9572 2018-05-03  Pedro Alves  <palves@redhat.com>
9573
9574         * s390-linux-nat.c
9575         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9576         override.  Write 'true' instead of '1'.
9577         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9578         declaration.
9579
9580 2018-05-02  Pedro Alves  <palves@redhat.com>
9581
9582         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9583         add_inf_child_target.
9584         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9585         add_inf_child_target.
9586         * aix-thread.c (aix_thread_target_info): New.
9587         (aix_thread_target) <shortname, longname, doc>: Delete.
9588         <info>: New.
9589         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9590         add_inf_child_target.
9591         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9592         add_inf_child_target.
9593         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9594         add_inf_child_target.
9595         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9596         add_inf_child_target.
9597         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9598         add_inf_child_target.
9599         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9600         add_inf_child_target.
9601         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9602         add_inf_child_target.
9603         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9604         add_inf_child_target.
9605         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9606         add_inf_child_target.
9607         * bfd-target.c (target_bfd_target_info): New.
9608         (target_bfd) <shortname, longname, doc>: Delete.
9609         <info>: New.
9610         * bsd-kvm.c (bsd_kvm_target_info): New.
9611         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9612         <info>: New.
9613         (bsd_kvm_target::open): Rename to ...
9614         (bsd_kvm_target_open): ... this.  Adjust.
9615         * bsd-uthread.c (bsd_uthread_target_info): New.
9616         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9617         <info>: New.
9618         * corefile.c (core_file_command): Adjust.
9619         * corelow.c (core_target_info): New.
9620         (core_target) <shortname, longname, doc>: Delete.
9621         <info>: New.
9622         (core_target::open): Rename to ...
9623         (core_target_open): ... this.  Adjust.
9624         * ctf.c (ctf_target_info): New.
9625         (ctf_target) <shortname, longname, doc>: Delete.
9626         <info>: New.
9627         (ctf_target::open): Rename to ...
9628         (ctf_target_open): ... this.
9629         (_initialize_ctf): Adjust.
9630         * exec.c (exec_target_info): New.
9631         (exec_target) <shortname, longname, doc>: Delete.
9632         <info>: New.
9633         (exec_target::open): Rename to ...
9634         (exec_target_open): ... this.
9635         * gdbcore.h (core_target_open): Declare.
9636         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9637         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9638         add_inf_child_target.
9639         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9640         add_inf_child_target.
9641         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9642         add_inf_child_target.
9643         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9644         add_inf_child_target.
9645         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9646         add_inf_child_target.
9647         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9648         add_inf_child_target.
9649         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9650         add_inf_child_target.
9651         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9652         add_inf_child_target.
9653         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9654         add_inf_child_target.
9655         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9656         add_inf_child_target.
9657         * inf-child.c (inf_child_target_info): New.
9658         (inf_child_target::info): New.
9659         (inf_child_open_target): Remove 'target' parameter.  Use
9660         get_native_target instead.
9661         (inf_child_target::open): Delete.
9662         (add_inf_child_target): New.
9663         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9664         Delete.
9665         <info>: New.
9666         (add_inf_child_target): Declare.
9667         (inf_child_open_target): Declare.
9668         * linux-thread-db.c (thread_db_target_info): New.
9669         (thread_db_target) <shortname, longname, doc>: Delete.
9670         <info>: New.
9671         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9672         add_inf_child_target.
9673         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9674         add_inf_child_target.
9675         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9676         add_inf_child_target.
9677         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9678         add_inf_child_target.
9679         * make-target-delegates (print_class): Adjust.
9680         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9681         add_inf_child_target.
9682         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9683         add_inf_child_target.
9684         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9685         add_inf_child_target.
9686         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9687         add_inf_child_target.
9688         * nto-procfs.c (nto_native_target_info): New.
9689         (nto_procfs_target_native) <shortname, longname, doc>:
9690         Delete.
9691         <info>: New.
9692         (nto_procfs_target_info): New.
9693         (nto_procfs_target_procfs) <shortname, longname, doc>:
9694         Delete.
9695         <info>: New.
9696         (init_procfs_targets): Adjust.
9697         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9698         add_inf_child_target.
9699         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9700         add_inf_child_target.
9701         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9702         add_inf_child_target.
9703         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9704         add_inf_child_target.
9705         * ravenscar-thread.c (ravenscar_target_info): New.
9706         (ravenscar_thread_target) <shortname, longname, doc>:
9707         Delete.
9708         <info>: New.
9709         * record-btrace.c (record_btrace_target_info):
9710         (record_btrace_target) <shortname, longname, doc>: Delete.
9711         <info>: New.
9712         (record_btrace_target::open): Rename to ...
9713         (record_btrace_target_open): ... this.  Adjust.
9714         * record-full.c (record_longname, record_doc): New.
9715         (record_full_base_target) <shortname, longname, doc>: Delete.
9716         <info>: New.
9717         (record_full_target_info): New.
9718         (record_full_target): <shortname>: Delete.
9719         <info>: New.
9720         (record_full_core_open_1, record_full_open_1): Update comments.
9721         (record_full_base_target::open): Rename to ...
9722         (record_full_open): ... this.
9723         (cmd_record_full_restore): Update.
9724         (_initialize_record_full): Update.
9725         * remote-sim.c (remote_sim_target_info): New.
9726         (gdbsim_target) <shortname, longname, doc>: Delete.
9727         <info>: New.
9728         (gdbsim_target::open): Rename to ...
9729         (gdbsim_target_open): ... this.
9730         (_initialize_remote_sim): Adjust.
9731         * remote.c (remote_doc): New.
9732         (remote_target_info): New.
9733         (remote_target) <shortname, longname, doc>: Delete.
9734         <info>: New.
9735         (extended_remote_target_info): New.
9736         (extended_remote_target) <shortname, longname, doc>: Delete.
9737         <info>: New.
9738         (remote_target::open_1): Make static.  Adjust.
9739         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9740         * s390-linux-nat.c (_initialize_s390_nat): Use
9741         add_inf_child_target.
9742         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9743         add_inf_child_target.
9744         * sol-thread.c (thread_db_target_info): New.
9745         (sol_thread_target) <shortname, longname, doc>: Delete.
9746         <info>: New.
9747         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9748         add_inf_child_target.
9749         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9750         add_inf_child_target.
9751         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9752         add_inf_child_target.
9753         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9754         add_inf_child_target.
9755         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9756         add_inf_child_target.
9757         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9758         add_inf_child_target.
9759         * spu-linux-nat.c (_initialize_spu_nat): Use
9760         add_inf_child_target.
9761         * spu-multiarch.c (spu_multiarch_target_info): New.
9762         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9763         <info>: New.
9764         * target-delegates.c: Regenerate.
9765         * target.c: Include <unordered_map>.
9766         (target_ops_p): Delete.
9767         (DEF_VEC_P(target_ops_p)): Delete.
9768         (target_factories): New.
9769         (test_target_info): New.
9770         (test_target_ops::info): New.
9771         (open_target): Adjust to use target_factories.
9772         (add_target_with_completer): Rename to ...
9773         (add_target): ... this.  Change prototype.  Register target_info
9774         and open callback in target_factories.  Register target_info in
9775         command context instead of target_ops.
9776         (add_target): Delete old implementation.
9777         (add_deprecated_target_alias): Change prototype.  Adjust.
9778         (the_native_target): New.
9779         (set_native_target, get_native_target): New.
9780         (find_default_run_target): Use the_native_target.
9781         (find_attach_target, find_run_target): Simplify.
9782         (target_ops::open): Delete.
9783         (dummy_target_info): New.
9784         (dummy_target::shortname, dummy_target::longname)
9785         (dummy_target::doc): Delete.
9786         (dummy_target::info): New.
9787         (debug_target::shortname, debug_target::longname)
9788         (debug_target::doc): Delete.
9789         (debug_target::info): New.
9790         * target.h (struct target_info): New.
9791         (target_ops::~target_ops): Add comment.
9792         (target_ops::info): New.
9793         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9794         longer virtual.  Implement in terms of target_info.
9795         (set_native_target, get_native_target): Declare.
9796         (target_open_ftype): New.
9797         (add_target, add_target_with_completer)
9798         (add_deprecated_target_alias): Change prototype.
9799         (test_target) <shortname, longname, doc>: Delete.
9800         <info>: New.
9801         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9802         add_inf_child_target.
9803         * tracefile-tfile.c (tfile_target_info): New.
9804         (tfile_target) <shortname, longname, doc>: Delete.
9805         <info>: New.
9806         (tfile_target::open): Rename to ...
9807         (tfile_target_open): ... this.
9808         (_initialize_tracefile_tfile): Adjust.
9809         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9810         add_inf_child_target.
9811         * windows-nat.c (_initialize_windows_nat): Use
9812         add_inf_child_target.
9813         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9814         add_inf_child_target.
9815
9816 2018-05-02  Pedro Alves  <palves@redhat.com>
9817
9818         * linux-nat.h (linux_nat_target) <low_new_thread,
9819         low_delete_thread, low_new_fork, low_forget_process,
9820         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9821         New virtual methods.
9822         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9823         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9824         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9825         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9826         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9827         Delete.
9828         * linux-fork.c (delete_fork): Adjust to call low method.
9829         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9830         (linux_nat_new_fork, linux_nat_forget_process_hook)
9831         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9832         (linux_nat_status_is_event):
9833         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9834         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9835         to call low method.
9836         (sigtrap_is_event): Rename to ...
9837         (linux_nat_target::low_status_is_event): ... this.
9838         (linux_nat_set_status_is_event): Delete.
9839         (save_stop_reason, linux_nat_wait_1)
9840         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9841         low methods.
9842         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9843         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9844         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9845         (linux_nat_set_prepare_to_resume): Delete.
9846         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9847         low virtual methods.
9848         * amd64-linux-nat.c: Likewise.
9849         * arm-linux-nat.c: Likewise.
9850         * i386-linux-nat.c: Likewise.
9851         * ia64-linux-nat.c: Likewise.
9852         * mips-linux-nat.c: Likewise.
9853         * ppc-linux-nat.c: Likewise.
9854         * s390-linux-nat.c: Likewise.
9855         * sparc64-linux-nat.c: Likewise.
9856         * x86-linux-nat.c: Likewise.
9857         * x86-linux-nat.h: Include "nat/x86-linux.h".
9858         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9859         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9860         Override methods.
9861
9862 2018-05-02  Pedro Alves  <palves@redhat.com>
9863
9864         * target.h (target_ops)
9865         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9866         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9867         stopped_by_watchpoint, have_continuable_watchpoint,
9868         stopped_data_address, watchpoint_addr_within_range,
9869         can_accel_watchpoint_condition, can_run, thread_alive,
9870         has_all_memory, has_memory, has_stack, has_registers,
9871         has_execution, can_async_p, is_async_p, supports_non_stop,
9872         always_non_stop_p, can_execute_reverse, supports_multi_process,
9873         supports_enable_disable_tracepoint,
9874         supports_disable_randomization, supports_string_tracing,
9875         supports_evaluation_of_breakpoint_conditions,
9876         can_run_breakpoint_commands, filesystem_is_local,
9877         can_download_tracepoint, get_trace_state_variable_value,
9878         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9879         record_is_replaying, record_will_replay,
9880         augmented_libraries_svr4_read>: Adjust to return bool.
9881         * aarch64-linux-nat.c: All implementations adjusted.
9882         * aix-thread.c: All implementations adjusted.
9883         * arm-linux-nat.c: All implementations adjusted.
9884         * breakpoint.c: All implementations adjusted.
9885         * bsd-kvm.c: All implementations adjusted.
9886         * bsd-uthread.c: All implementations adjusted.
9887         * corelow.c: All implementations adjusted.
9888         * ctf.c: All implementations adjusted.
9889         * darwin-nat.c: All implementations adjusted.
9890         * darwin-nat.h: All implementations adjusted.
9891         * exec.c: All implementations adjusted.
9892         * fbsd-nat.c: All implementations adjusted.
9893         * fbsd-nat.h: All implementations adjusted.
9894         * gnu-nat.c: All implementations adjusted.
9895         * gnu-nat.h: All implementations adjusted.
9896         * go32-nat.c: All implementations adjusted.
9897         * ia64-linux-nat.c: All implementations adjusted.
9898         * inf-child.c: All implementations adjusted.
9899         * inf-child.h: All implementations adjusted.
9900         * inf-ptrace.c: All implementations adjusted.
9901         * inf-ptrace.h: All implementations adjusted.
9902         * linux-nat.c: All implementations adjusted.
9903         * linux-nat.h: All implementations adjusted.
9904         * mips-linux-nat.c: All implementations adjusted.
9905         * nto-procfs.c: All implementations adjusted.
9906         * ppc-linux-nat.c: All implementations adjusted.
9907         * procfs.c: All implementations adjusted.
9908         * ravenscar-thread.c: All implementations adjusted.
9909         * record-btrace.c: All implementations adjusted.
9910         * record-full.c: All implementations adjusted.
9911         * remote-sim.c: All implementations adjusted.
9912         * remote.c: All implementations adjusted.
9913         * s390-linux-nat.c: All implementations adjusted.
9914         * sol-thread.c: All implementations adjusted.
9915         * spu-multiarch.c: All implementations adjusted.
9916         * target-delegates.c: All implementations adjusted.
9917         * target.c: All implementations adjusted.
9918         * target.h: All implementations adjusted.
9919         * tracefile-tfile.c: All implementations adjusted.
9920         * tracefile.c: All implementations adjusted.
9921         * tracefile.h: All implementations adjusted.
9922         * windows-nat.c: All implementations adjusted.
9923         * x86-linux-nat.h: All implementations adjusted.
9924         * x86-nat.h: All implementations adjusted.
9925
9926 2018-05-02  Pedro Alves  <palves@redhat.com>
9927
9928         * make-target-delegates (scan_target_h): Don't trim lines here.
9929         Replace sequences of tabs and/or whitespace with a single
9930         whitespace.
9931         (top level, parsing methods): Trim each line before processing it
9932         here.
9933
9934 2018-05-02  Pedro Alves  <palves@redhat.com>
9935             John Baldwin  <jhb@freebsd.org>
9936
9937         * target.h (enum strata) <debug_stratum>: New.
9938         (struct target_ops) <all delegation methods>: Replace by C++
9939         virtual methods, and drop "to_" prefix.  All references updated
9940         throughout.
9941         <to_shortname, to_longname, to_doc, to_data,
9942         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9943         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9944         virtual methods.  All references updated throughout.
9945         <can_attach, supports_terminal_ours, can_create_inferior,
9946         get_thread_control_capabilities, attach_no_wait>: New
9947         virtual methods.
9948         <insert_breakpoint, remove_breakpoint>: Now
9949         TARGET_DEFAULT_NORETURN methods.
9950         <info_proc>: Now returns bool.
9951         <to_magic>: Delete.
9952         (OPS_MAGIC): Delete.
9953         (current_target): Delete.  All references replaced by references
9954         to ...
9955         (target_stack): ... this.  New.
9956         (target_shortname, target_longname): Adjust.
9957         (target_can_run): Now a function declaration.
9958         (default_child_has_all_memory, default_child_has_memory)
9959         (default_child_has_stack, default_child_has_registers)
9960         (default_child_has_execution): Remove target_ops parameter.
9961         (complete_target_initialization): Delete.
9962         (memory_breakpoint_target): New template class.
9963         (test_target_ops): Refactor as a C++ class with virtual methods.
9964         * make-target-delegates (NAME_PART): Tighten.
9965         (POINTER_PART, CP_SYMBOL): New.
9966         (SIMPLE_RETURN_PART): Reimplement.
9967         (VEC_RETURN_PART): Expect less.
9968         (RETURN_PART, VIRTUAL_PART): New.
9969         (METHOD): Adjust to C++ virtual methods.
9970         (scan_target_h): Remove reference to C99.
9971         (dname): Output "target_ops::" prefix.
9972         (write_function_header): Adjust to output a C++ class method.
9973         (write_declaration): New.
9974         (write_delegator): Adjust to output a C++ class method.
9975         (tdname): Output "dummy_target::" prefix.
9976         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9977         method.
9978         (tdefault_names, debug_names): Delete.
9979         (return_types, tdefaults, styles, argtypes_array): New.
9980         (top level): All methods are delegators.
9981         (print_class): New.
9982         (top level): Print dummy_target and debug_target classes.
9983         * target-delegates.c: Regenerate.
9984         * target-debug.h (target_debug_print_enum_info_proc_what)
9985         (target_debug_print_thread_control_capabilities)
9986         (target_debug_print_thread_info_p): New.
9987         * target.c (dummy_target): Delete.
9988         (the_dummy_target, the_debug_target): New.
9989         (target_stack): Now extern.
9990         (set_targetdebug): Push/unpush debug target.
9991         (default_child_has_all_memory, default_child_has_memory)
9992         (default_child_has_stack, default_child_has_registers)
9993         (default_child_has_execution): Remove target_ops parameter.
9994         (complete_target_initialization): Delete.
9995         (add_target_with_completer): No longer call
9996         complete_target_initialization.
9997         (target_supports_terminal_ours): Use regular delegation.
9998         (update_current_target): Delete.
9999         (push_target): No longer check magic number.  Don't call
10000         update_current_target.
10001         (unpush_target): Don't call update_current_target.
10002         (target_is_pushed): No longer check magic number.
10003         (target_require_runnable): Skip for all stratums over
10004         process_stratum.
10005         (target_ops::info_proc): New.
10006         (target_info_proc): Use find_target_at and
10007         find_default_run_target.
10008         (target_supports_disable_randomization): Use regular delegation.
10009         (target_get_osdata): Use find_target_at.
10010         (target_ops::open, target_ops::close, target_ops::can_attach)
10011         (target_ops::attach, target_ops::can_create_inferior)
10012         (target_ops::create_inferior, target_ops::can_run)
10013         (target_can_run): New.
10014         (default_fileio_target): Use regular delegation.
10015         (target_ops::fileio_open, target_ops::fileio_pwrite)
10016         (target_ops::fileio_pread, target_ops::fileio_fstat)
10017         (target_ops::fileio_close, target_ops::fileio_unlink)
10018         (target_ops::fileio_readlink): New.
10019         (target_fileio_open_1, target_fileio_unlink)
10020         (target_fileio_readlink): Always call the target method.  Handle
10021         FILEIO_ENOSYS.
10022         (return_zero, return_zero_has_execution): Delete.
10023         (init_dummy_target): Delete.
10024         (dummy_target::dummy_target, dummy_target::shortname)
10025         (dummy_target::longname, dummy_target::doc)
10026         (debug_target::debug_target, debug_target::shortname)
10027         (debug_target::longname, debug_target::doc): New.
10028         (target_supports_delete_record): Use regular delegation.
10029         (setup_target_debug): Delete.
10030         (maintenance_print_target_stack): Skip debug_stratum.
10031         (initialize_targets): Instantiate the_dummy_target and
10032         the_debug_target.
10033         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10034         use target_stack.
10035         (target_auxv_search, fprint_target_auxv): Adjust.
10036         (info_auxv_command): Adjust to use target_stack.
10037         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10038         * exceptions.c (print_flush): Handle a NULL target_stack.
10039         * regcache.c (target_ops_no_register): Refactor as class with
10040         virtual methods.
10041
10042         * exec.c (exec_target): New class.
10043         (exec_ops): Now an exec_target.
10044         (exec_open, exec_close_1, exec_get_section_table)
10045         (exec_xfer_partial, exec_files_info, exec_has_memory)
10046         (exec_make_note_section): Refactor as exec_target methods.
10047         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10048         Delete.
10049         (exec_target::find_memory_regions): New.
10050         (_initialize_exec): Don't call init_exec_ops.
10051         * gdbcore.h (exec_file_clear): Delete.
10052
10053         * corefile.c (core_target): Delete.
10054         (core_file_command): Adjust.
10055         * corelow.c (core_target): New class.
10056         (the_core_target): New.
10057         (core_close): Remove target_ops parameter.
10058         (core_close_cleanup): Adjust.
10059         (core_target::close): New.
10060         (core_open, core_detach, get_core_registers, core_files_info)
10061         (core_xfer_partial, core_thread_alive, core_read_description)
10062         (core_pid_to_str, core_thread_name, core_has_memory)
10063         (core_has_stack, core_has_registers, core_info_proc): Rework as
10064         core_target methods.
10065         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10066         (_initialize_corelow): Initialize the_core_target.
10067         * gdbcore.h (core_target): Delete.
10068         (the_core_target): New.
10069
10070         * ctf.c: (ctf_target): New class.
10071         (ctf_ops): Now a ctf_target.
10072         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10073         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10074         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10075         methods.
10076         (init_ctf_ops): Delete.
10077         (_initialize_ctf): Don't call it.
10078         * tracefile-tfile.c (tfile_target): New class.
10079         (tfile_ops): Now a tfile_target.
10080         (tfile_open, tfile_close, tfile_files_info)
10081         (tfile_get_tracepoint_status, tfile_trace_find)
10082         (tfile_fetch_registers, tfile_xfer_partial)
10083         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10084         Refactor as tfile_target methods.
10085         (tfile_xfer_partial_features): Remove target_ops parameter.
10086         (init_tfile_ops): Delete.
10087         (_initialize_tracefile_tfile): Don't call it.
10088         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10089         (tracefile_has_stack, tracefile_has_registers)
10090         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10091         tracefile_target methods.
10092         (init_tracefile_ops): Delete.
10093         (tracefile_target::tracefile_target): New.
10094         * tracefile.h: Include "target.h".
10095         (tracefile_target): New class.
10096         (init_tracefile_ops): Delete.
10097
10098         * spu-multiarch.c (spu_multiarch_target): New class.
10099         (spu_ops): Now a spu_multiarch_target.
10100         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10101         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10102         (spu_search_memory, spu_mourn_inferior): Refactor as
10103         spu_multiarch_target methods.
10104         (init_spu_ops): Delete.
10105         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10106         complete_target_initialization.
10107
10108         * ravenscar-thread.c (ravenscar_thread_target): New class.
10109         (ravenscar_ops): Now a ravenscar_thread_target.
10110         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10111         (ravenscar_thread_alive, ravenscar_pid_to_str)
10112         (ravenscar_fetch_registers, ravenscar_store_registers)
10113         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10114         (ravenscar_stopped_by_hw_breakpoint)
10115         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10116         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10117         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10118         methods.
10119         (init_ravenscar_thread_ops): Delete.
10120         (_initialize_ravenscar): Remove references to
10121         init_ravenscar_thread_ops and complete_target_initialization.
10122
10123         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10124         (bsd_uthread_target): New class.
10125         (bsd_uthread_ops): Now a bsd_uthread_target.
10126         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10127         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10128         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10129         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10130         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10131         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10132         (bsd_uthread_target): Delete function.
10133         (_initialize_bsd_uthread): Remove reference to
10134         complete_target_initialization.
10135
10136         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10137         (target_bfd): ... this new class.
10138         (target_bfd_xfer_partial, target_bfd_get_section_table)
10139         (target_bfd_close): Refactor as target_bfd methods.
10140         (target_bfd::~target_bfd): New.
10141         (target_bfd_reopen): Adjust.
10142         (target_bfd::close): New.
10143
10144         * record-btrace.c (record_btrace_target): New class.
10145         (record_btrace_ops): Now a record_btrace_target.
10146         (record_btrace_open, record_btrace_stop_recording)
10147         (record_btrace_disconnect, record_btrace_close)
10148         (record_btrace_async, record_btrace_info)
10149         (record_btrace_insn_history, record_btrace_insn_history_range)
10150         (record_btrace_insn_history_from, record_btrace_call_history)
10151         (record_btrace_call_history_range)
10152         (record_btrace_call_history_from, record_btrace_record_method)
10153         (record_btrace_is_replaying, record_btrace_will_replay)
10154         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10155         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10156         (record_btrace_store_registers, record_btrace_prepare_to_store)
10157         (record_btrace_to_get_unwinder)
10158         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10159         (record_btrace_commit_resume, record_btrace_wait)
10160         (record_btrace_stop, record_btrace_can_execute_reverse)
10161         (record_btrace_stopped_by_sw_breakpoint)
10162         (record_btrace_supports_stopped_by_sw_breakpoint)
10163         (record_btrace_stopped_by_hw_breakpoint)
10164         (record_btrace_supports_stopped_by_hw_breakpoint)
10165         (record_btrace_update_thread_list, record_btrace_thread_alive)
10166         (record_btrace_goto_begin, record_btrace_goto_end)
10167         (record_btrace_goto, record_btrace_stop_replaying_all)
10168         (record_btrace_execution_direction)
10169         (record_btrace_prepare_to_generate_core)
10170         (record_btrace_done_generating_core): Refactor as
10171         record_btrace_target methods.
10172         (init_record_btrace_ops): Delete.
10173         (_initialize_record_btrace): Remove reference to
10174         init_record_btrace_ops.
10175         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10176         the execution_direction global.
10177         (record_full_base_target, record_full_target)
10178         (record_full_core_target): New classes.
10179         (record_full_ops): Now a record_full_target.
10180         (record_full_core_ops): Now a record_full_core_target.
10181         (record_full_target::detach, record_full_target::disconnect)
10182         (record_full_core_target::disconnect)
10183         (record_full_target::mourn_inferior, record_full_target::kill):
10184         New.
10185         (record_full_open, record_full_close, record_full_async): Refactor
10186         as methods of the record_full_base_target class.
10187         (record_full_resume, record_full_commit_resume): Refactor
10188         as methods of the record_full_target class.
10189         (record_full_wait, record_full_stopped_by_watchpoint)
10190         (record_full_stopped_data_address)
10191         (record_full_stopped_by_sw_breakpoint)
10192         (record_full_supports_stopped_by_sw_breakpoint)
10193         (record_full_stopped_by_hw_breakpoint)
10194         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10195         methods of the record_full_base_target class.
10196         (record_full_store_registers, record_full_xfer_partial)
10197         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10198         Refactor as methods of the record_full_target class.
10199         (record_full_can_execute_reverse, record_full_get_bookmark)
10200         (record_full_goto_bookmark, record_full_execution_direction)
10201         (record_full_record_method, record_full_info, record_full_delete)
10202         (record_full_is_replaying, record_full_will_replay)
10203         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10204         (record_full_stop_replaying): Refactor as methods of the
10205         record_full_base_target class.
10206         (record_full_core_resume, record_full_core_kill)
10207         (record_full_core_fetch_registers)
10208         (record_full_core_prepare_to_store)
10209         (record_full_core_store_registers, record_full_core_xfer_partial)
10210         (record_full_core_insert_breakpoint)
10211         (record_full_core_remove_breakpoint)
10212         (record_full_core_has_execution): Refactor
10213         as methods of the record_full_core_target class.
10214         (record_full_base_target::supports_delete_record): New.
10215         (init_record_full_ops): Delete.
10216         (init_record_full_core_ops): Delete.
10217         (record_full_save): Refactor as method of the
10218         record_full_base_target class.
10219         (_initialize_record_full): Remove references to
10220         init_record_full_ops and init_record_full_core_ops.
10221
10222         * remote.c (remote_target, extended_remote_target): New classes.
10223         (remote_ops): Now a remote_target.
10224         (extended_remote_ops): Now an extended_remote_target.
10225         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10226         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10227         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10228         (remote_pass_signals, remote_set_syscall_catchpoint)
10229         (remote_program_signals, )
10230         (remote_thread_always_alive): Remove target_ops parameter.
10231         (remote_thread_alive, remote_thread_name)
10232         (remote_update_thread_list, remote_threads_extra_info)
10233         (remote_static_tracepoint_marker_at)
10234         (remote_static_tracepoint_markers_by_strid)
10235         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10236         (remote_open): Refactor as methods of remote_target.
10237         (extended_remote_open, extended_remote_detach)
10238         (extended_remote_attach, extended_remote_post_attach):
10239         (extended_remote_supports_disable_randomization)
10240         (extended_remote_create_inferior): : Refactor as method of
10241         extended_remote_target.
10242         (remote_set_permissions, remote_open_1, remote_detach)
10243         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10244         (remote_resume, remote_commit_resume, remote_stop)
10245         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10246         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10247         (remote_prepare_to_store, remote_store_registers)
10248         (remote_flash_erase, remote_flash_done, remote_files_info)
10249         (remote_kill, remote_mourn, remote_insert_breakpoint)
10250         (remote_remove_breakpoint, remote_insert_watchpoint)
10251         (remote_watchpoint_addr_within_range)
10252         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10253         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10254         (remote_supports_stopped_by_sw_breakpoint)
10255         (remote_stopped_by_hw_breakpoint)
10256         (remote_supports_stopped_by_hw_breakpoint)
10257         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10258         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10259         (remote_verify_memory): Refactor as methods of remote_target.
10260         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10261         parameter.
10262         (remote_xfer_partial, remote_get_memory_xfer_limit)
10263         (remote_search_memory, remote_rcmd, remote_memory_map)
10264         (remote_pid_to_str, remote_get_thread_local_address)
10265         (remote_get_tib_address, remote_read_description): Refactor as
10266         methods of remote_target.
10267         (remote_target::fileio_open, remote_target::fileio_pwrite)
10268         (remote_target::fileio_pread, remote_target::fileio_close): New.
10269         (remote_hostio_readlink, remote_hostio_fstat)
10270         (remote_filesystem_is_local, remote_can_execute_reverse)
10271         (remote_supports_non_stop, remote_supports_disable_randomization)
10272         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10273         (remote_supports_enable_disable_tracepoint)
10274         (remote_supports_string_tracing)
10275         (remote_can_run_breakpoint_commands, remote_trace_init)
10276         (remote_download_tracepoint, remote_can_download_tracepoint)
10277         (remote_download_trace_state_variable, remote_enable_tracepoint)
10278         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10279         (remote_trace_start, remote_get_trace_status)
10280         (remote_get_tracepoint_status, remote_trace_stop)
10281         (remote_trace_find, remote_get_trace_state_variable_value)
10282         (remote_save_trace_data, remote_get_raw_trace_data)
10283         (remote_set_disconnected_tracing, remote_core_of_thread)
10284         (remote_set_circular_trace_buffer, remote_traceframe_info)
10285         (remote_get_min_fast_tracepoint_insn_len)
10286         (remote_set_trace_buffer_size, remote_set_trace_notes)
10287         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10288         (remote_disable_btrace, remote_teardown_btrace)
10289         (remote_read_btrace, remote_btrace_conf)
10290         (remote_augmented_libraries_svr4_read, remote_load)
10291         (remote_pid_to_exec_file, remote_can_do_single_step)
10292         (remote_execution_direction, remote_thread_handle_to_thread_info):
10293         Refactor as methods of remote_target.
10294         (init_remote_ops, init_extended_remote_ops): Delete.
10295         (remote_can_async_p, remote_is_async_p, remote_async)
10296         (remote_thread_events, remote_upload_tracepoints)
10297         (remote_upload_trace_state_variables): Refactor as methods of
10298         remote_target.
10299         (_initialize_remote): Remove references to init_remote_ops and
10300         init_extended_remote_ops.
10301
10302         * remote-sim.c (gdbsim_target): New class.
10303         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10304         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10305         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10306         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10307         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10308         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10309         Refactor as methods of gdbsim_target.
10310         (gdbsim_ops): Now a gdbsim_target.
10311         (init_gdbsim_ops): Delete.
10312         (gdbsim_cntrl_c): Adjust.
10313         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10314
10315         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10316         (the_amd64_linux_nat_target): New.
10317         (amd64_linux_fetch_inferior_registers)
10318         (amd64_linux_store_inferior_registers): Refactor as methods of
10319         amd64_linux_nat_target.
10320         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10321         * i386-linux-nat.c: Don't include "linux-nat.h".
10322         (i386_linux_nat_target): New class.
10323         (the_i386_linux_nat_target): New.
10324         (i386_linux_fetch_inferior_registers)
10325         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10326         as methods of i386_linux_nat_target.
10327         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10328         * inf-child.c (inf_child_ops): Delete.
10329         (inf_child_fetch_inferior_registers)
10330         (inf_child_store_inferior_registers): Delete.
10331         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10332         methods of inf_child_target.
10333         (inf_child_target::supports_terminal_ours)
10334         (inf_child_target::terminal_init)
10335         (inf_child_target::terminal_inferior)
10336         (inf_child_target::terminal_ours_for_output)
10337         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10338         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10339         New.
10340         (inf_child_open, inf_child_disconnect, inf_child_close)
10341         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10342         (inf_child_post_startup_inferior, inf_child_can_run)
10343         (inf_child_pid_to_exec_file): Refactor as methods of
10344         inf_child_target.
10345         (inf_child_follow_fork): Delete.
10346         (inf_child_target::can_create_inferior)
10347         (inf_child_target::can_attach): New.
10348         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10349         (inf_child_target::has_stack, inf_child_target::has_registers)
10350         (inf_child_target::has_execution): New.
10351         (inf_child_fileio_open, inf_child_fileio_pwrite)
10352         (inf_child_fileio_pread, inf_child_fileio_fstat)
10353         (inf_child_fileio_close, inf_child_fileio_unlink)
10354         (inf_child_fileio_readlink, inf_child_use_agent)
10355         (inf_child_can_use_agent): Refactor as methods of
10356         inf_child_target.
10357         (return_zero, inf_child_target): Delete.
10358         (inf_child_target::inf_child_target): New.
10359         * inf-child.h: Include "target.h".
10360         (inf_child_target): Delete function prototype.
10361         (inf_child_target): New class.
10362         (inf_child_open_target, inf_child_mourn_inferior)
10363         (inf_child_maybe_unpush_target): Delete.
10364         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10365         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10366         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10367         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10368         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10369         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10370         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10371         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10372         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10373         methods of inf_ptrace_target.
10374         (inf_ptrace_target): Delete function.
10375         * inf-ptrace.h: Include "inf-child.h".
10376         (inf_ptrace_target): Delete function declaration.
10377         (inf_ptrace_target): New class.
10378         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10379         * linux-nat.c (linux_target): New.
10380         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10381         (linux_nat_target::~linux_nat_target): New.
10382         (linux_child_post_attach, linux_child_post_startup_inferior)
10383         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10384         (linux_child_remove_fork_catchpoint)
10385         (linux_child_insert_vfork_catchpoint)
10386         (linux_child_remove_vfork_catchpoint)
10387         (linux_child_insert_exec_catchpoint)
10388         (linux_child_remove_exec_catchpoint)
10389         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10390         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10391         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10392         (linux_nat_stopped_data_address)
10393         (linux_nat_stopped_by_sw_breakpoint)
10394         (linux_nat_supports_stopped_by_sw_breakpoint)
10395         (linux_nat_stopped_by_hw_breakpoint)
10396         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10397         (linux_nat_kill, linux_nat_mourn_inferior)
10398         (linux_nat_xfer_partial, linux_nat_thread_alive)
10399         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10400         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10401         (linux_child_static_tracepoint_markers_by_strid)
10402         (linux_nat_is_async_p, linux_nat_can_async_p)
10403         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10404         (linux_nat_supports_multi_process)
10405         (linux_nat_supports_disable_randomization, linux_nat_async)
10406         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10407         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10408         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10409         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10410         methods of linux_nat_target.
10411         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10412         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10413         parameter.
10414         (check_stopped_by_watchpoint): Adjust.
10415         (linux_xfer_partial): Delete.
10416         (linux_target_install_ops, linux_target, linux_nat_add_target):
10417         Delete.
10418         (linux_nat_target::linux_nat_target): New.
10419         * linux-nat.h: Include "inf-ptrace.h".
10420         (linux_nat_target): New.
10421         (linux_target, linux_target_install_ops, linux_nat_add_target):
10422         Delete function declarations.
10423         (linux_target): Declare global.
10424         * linux-thread-db.c (thread_db_target): New.
10425         (thread_db_target::thread_db_target): New.
10426         (thread_db_ops): Delete.
10427         (the_thread_db_target): New.
10428         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10429         (thread_db_update_thread_list, thread_db_pid_to_str)
10430         (thread_db_extra_thread_info)
10431         (thread_db_thread_handle_to_thread_info)
10432         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10433         (thread_db_resume): Refactor as methods of thread_db_target.
10434         (init_thread_db_ops): Delete.
10435         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10436         * x86-linux-nat.c: Don't include "linux-nat.h".
10437         (super_post_startup_inferior): Delete.
10438         (x86_linux_nat_target::~x86_linux_nat_target): New.
10439         (x86_linux_child_post_startup_inferior)
10440         (x86_linux_read_description, x86_linux_enable_btrace)
10441         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10442         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10443         methods of x86_linux_nat_target.
10444         (x86_linux_create_target): Delete.  Bits folded ...
10445         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10446         pointer.
10447         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10448         (x86_linux_nat_target): New class.
10449         (x86_linux_create_target): Delete.
10450         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10451         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10452         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10453         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10454         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10455         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10456         make extern.
10457         (x86_use_watchpoints): Delete.
10458         * x86-nat.h: Include "breakpoint.h" and "target.h".
10459         (x86_use_watchpoints): Delete.
10460         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10461         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10462         (x86_insert_watchpoint, x86_remove_watchpoint)
10463         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10464         (x86_stopped_by_hw_breakpoint): New declarations.
10465         (x86_nat_target): New template class.
10466
10467         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10468         (the_ppc_linux_nat_target): New.
10469         (ppc_linux_fetch_inferior_registers)
10470         (ppc_linux_can_use_hw_breakpoint)
10471         (ppc_linux_region_ok_for_hw_watchpoint)
10472         (ppc_linux_ranged_break_num_registers)
10473         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10474         (ppc_linux_insert_mask_watchpoint)
10475         (ppc_linux_remove_mask_watchpoint)
10476         (ppc_linux_can_accel_watchpoint_condition)
10477         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10478         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10479         (ppc_linux_watchpoint_addr_within_range)
10480         (ppc_linux_masked_watch_num_registers)
10481         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10482         (ppc_linux_read_description): Refactor as methods of
10483         ppc_linux_nat_target.
10484         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10485
10486         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10487         (procfs_target): New class.
10488         (the_procfs_target): New.
10489         (procfs_target): Delete function.
10490         (procfs_auxv_parse, procfs_attach, procfs_detach)
10491         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10492         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10493         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10494         (procfs_create_inferior, procfs_update_thread_list)
10495         (procfs_thread_alive, procfs_pid_to_str)
10496         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10497         (procfs_stopped_data_address, procfs_insert_watchpoint)
10498         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10499         (proc_find_memory_regions, procfs_info_proc)
10500         (procfs_make_note_section): Refactor as methods of procfs_target.
10501         (_initialize_procfs): Adjust.
10502         * sol-thread.c (sol_thread_target): New class.
10503         (sol_thread_ops): Now a sol_thread_target.
10504         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10505         (sol_thread_fetch_registers, sol_thread_store_registers)
10506         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10507         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10508         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10509         (init_sol_thread_ops): Delete.
10510         (_initialize_sol_thread): Adjust.  Remove references to
10511         init_sol_thread_ops and complete_target_initialization.
10512
10513         * windows-nat.c (windows_nat_target): New class.
10514         (windows_fetch_inferior_registers)
10515         (windows_store_inferior_registers, windows_resume, windows_wait)
10516         (windows_attach, windows_detach, windows_pid_to_exec_file)
10517         (windows_files_info, windows_create_inferior)
10518         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10519         (windows_close, windows_pid_to_str, windows_xfer_partial)
10520         (windows_get_tib_address, windows_get_ada_task_ptid)
10521         (windows_thread_name, windows_thread_alive): Refactor as
10522         windows_nat_target methods.
10523         (do_initial_windows_stuff): Adjust.
10524         (windows_target): Delete function.
10525         (_initialize_windows_nat): Adjust.
10526
10527         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10528         (darwin_mourn_inferior, darwin_kill_inferior)
10529         (darwin_create_inferior, darwin_attach, darwin_detach)
10530         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10531         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10532         (darwin_supports_multi_process): Refactor as darwin_nat_target
10533         methods.
10534         (darwin_resume_to, darwin_files_info): Delete.
10535         (_initialize_darwin_inferior): Rename to ...
10536         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10537         * darwin-nat.h: Include "inf-child.h".
10538         (darwin_nat_target): New class.
10539         (darwin_complete_target): Delete.
10540         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10541         (darwin_target): New.
10542         (i386_darwin_fetch_inferior_registers)
10543         (i386_darwin_store_inferior_registers): Refactor as methods of
10544         darwin_nat_target.
10545         (darwin_complete_target): Delete, with ...
10546         (_initialize_i386_darwin_nat): ... bits factored out here.
10547
10548         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10549         (the_alpha_linux_nat_target): New.
10550         (alpha_linux_register_u_offset): Refactor as
10551         alpha_linux_nat_target method.
10552         (_initialize_alpha_linux_nat): Adjust.
10553         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10554         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10555         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10556         methods of linux_nat_trad_target.
10557         (linux_trad_target): Delete.
10558         * linux-nat-trad.h (linux_trad_target): Delete function.
10559         (linux_nat_trad_target): New class.
10560         * mips-linux-nat.c (mips_linux_nat_target): New class.
10561         (super_fetch_registers, super_store_registers, super_close):
10562         Delete.
10563         (the_mips_linux_nat_target): New.
10564         (mips64_linux_regsets_fetch_registers)
10565         (mips64_linux_regsets_store_registers)
10566         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10567         (mips_linux_register_u_offset, mips_linux_read_description)
10568         (mips_linux_can_use_hw_breakpoint)
10569         (mips_linux_stopped_by_watchpoint)
10570         (mips_linux_stopped_data_address)
10571         (mips_linux_region_ok_for_hw_watchpoint)
10572         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10573         (mips_linux_close): Refactor as methods of mips_linux_nat.
10574         (_initialize_mips_linux_nat): Adjust to C++ification.
10575
10576         * aix-thread.c (aix_thread_target): New class.
10577         (aix_thread_ops): Now an aix_thread_target.
10578         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10579         (aix_thread_fetch_registers, aix_thread_store_registers)
10580         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10581         (aix_thread_thread_alive, aix_thread_pid_to_str)
10582         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10583         Refactor as methods of aix_thread_target.
10584         (init_aix_thread_ops): Delete.
10585         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10586         and complete_target_initialization.
10587         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10588         (rs6000_nat_target): New class.
10589         (the_rs6000_nat_target): New.
10590         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10591         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10592         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10593         (super_create_inferior): Delete.
10594         (_initialize_rs6000_nat): Adjust to C++ification.
10595
10596         * arm-linux-nat.c (arm_linux_nat_target): New class.
10597         (the_arm_linux_nat_target): New.
10598         (arm_linux_fetch_inferior_registers)
10599         (arm_linux_store_inferior_registers, arm_linux_read_description)
10600         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10601         (arm_linux_remove_hw_breakpoint)
10602         (arm_linux_region_ok_for_hw_watchpoint)
10603         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10604         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10605         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10606         arm_linux_nat_target.
10607         (_initialize_arm_linux_nat): Adjust to C++ification.
10608
10609         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10610         (the_aarch64_linux_nat_target): New.
10611         (aarch64_linux_fetch_inferior_registers)
10612         (aarch64_linux_store_inferior_registers)
10613         (aarch64_linux_child_post_startup_inferior)
10614         (aarch64_linux_read_description)
10615         (aarch64_linux_can_use_hw_breakpoint)
10616         (aarch64_linux_insert_hw_breakpoint)
10617         (aarch64_linux_remove_hw_breakpoint)
10618         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10619         (aarch64_linux_region_ok_for_hw_watchpoint)
10620         (aarch64_linux_stopped_data_address)
10621         (aarch64_linux_stopped_by_watchpoint)
10622         (aarch64_linux_watchpoint_addr_within_range)
10623         (aarch64_linux_can_do_single_step): Refactor as methods of
10624         aarch64_linux_nat_target.
10625         (super_post_startup_inferior): Delete.
10626         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10627
10628         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10629         (the_hppa_linux_nat_target): New.
10630         (hppa_linux_fetch_inferior_registers)
10631         (hppa_linux_store_inferior_registers): Refactor as methods of
10632         hppa_linux_nat_target.
10633         (_initialize_hppa_linux_nat): Adjust to C++ification.
10634
10635         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10636         (the_ia64_linux_nat_target): New.
10637         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10638         (ia64_linux_stopped_data_address)
10639         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10640         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10641         ia64_linux_nat_target methods.
10642         (super_xfer_partial): Delete.
10643         (_initialize_ia64_linux_nat): Adjust to C++ification.
10644
10645         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10646         (the_m32r_linux_nat_target): New.
10647         (m32r_linux_fetch_inferior_registers)
10648         (m32r_linux_store_inferior_registers): Refactor as
10649         m32r_linux_nat_target methods.
10650         (_initialize_m32r_linux_nat): Adjust to C++ification.
10651
10652         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10653         (the_m68k_linux_nat_target): New.
10654         (m68k_linux_fetch_inferior_registers)
10655         (m68k_linux_store_inferior_registers): Refactor as
10656         m68k_linux_nat_target methods.
10657         (_initialize_m68k_linux_nat): Adjust to C++ification.
10658
10659         * s390-linux-nat.c (s390_linux_nat_target): New class.
10660         (the_s390_linux_nat_target): New.
10661         (s390_linux_fetch_inferior_registers)
10662         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10663         (s390_insert_watchpoint, s390_remove_watchpoint)
10664         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10665         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10666         (s390_auxv_parse, s390_read_description): Refactor as methods of
10667         s390_linux_nat_target.
10668         (_initialize_s390_nat): Adjust to C++ification.
10669
10670         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10671         (the_sparc_linux_nat_target): New.
10672         (_initialize_sparc_linux_nat): Adjust to C++ification.
10673         * sparc-nat.c (sparc_fetch_inferior_registers)
10674         (sparc_store_inferior_registers): Remove target_ops parameter.
10675         * sparc-nat.h (sparc_fetch_inferior_registers)
10676         (sparc_store_inferior_registers): Remove target_ops parameter.
10677         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10678         (the_sparc64_linux_nat_target): New.
10679         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10680
10681         * spu-linux-nat.c (spu_linux_nat_target): New class.
10682         (the_spu_linux_nat_target): New.
10683         (spu_child_post_startup_inferior, spu_child_post_attach)
10684         (spu_child_wait, spu_fetch_inferior_registers)
10685         (spu_store_inferior_registers, spu_xfer_partial)
10686         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10687         methods.
10688         (_initialize_spu_nat): Adjust to C++ification.
10689
10690         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10691         (the_tilegx_linux_nat_target): New.
10692         (fetch_inferior_registers, store_inferior_registers):
10693         Refactor as methods.
10694         (_initialize_tile_linux_nat): Adjust to C++ification.
10695
10696         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10697         (the_xtensa_linux_nat_target): New.
10698         (xtensa_linux_fetch_inferior_registers)
10699         (xtensa_linux_store_inferior_registers): Refactor as
10700         xtensa_linux_nat_target methods.
10701         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10702
10703         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10704         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10705         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10706         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10707         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10708         (fbsd_stopped_by_sw_breakpoint)
10709         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10710         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10711         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10712         (fbsd_post_startup_inferior, fbsd_post_attach)
10713         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10714         (fbsd_set_syscall_catchpoint)
10715         (super_xfer_partial, super_resume, super_wait)
10716         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10717         (fbsd_handle_debug_trap): Remove target_ops parameter.
10718         (fbsd_nat_add_target): Delete.
10719         * fbsd-nat.h: Include "inf-ptrace.h".
10720         (fbsd_nat_add_target): Delete.
10721         (USE_SIGTRAP_SIGINFO): Define.
10722         (fbsd_nat_target): New class.
10723
10724         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10725         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10726         (amd64bsd_target): Delete.
10727         * amd64-bsd-nat.h: New file.
10728         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10729         "x86-bsd-nat.h".
10730         (amd64_fbsd_nat_target): New class.
10731         (the_amd64_fbsd_nat_target): New.
10732         (amd64fbsd_read_description): Refactor as method of
10733         amd64_fbsd_nat_target.
10734         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10735         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10736         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10737         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10738         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10739         (i386bsd_target): Delete.
10740         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10741         (i386bsd_fetch_inferior_registers)
10742         (i386bsd_store_inferior_registers): Declare.
10743         (i386_bsd_nat_target): New class.
10744         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10745         (the_i386_fbsd_nat_target): New.
10746         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10747         i386_fbsd_nat_target methods.
10748         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10749         (_initialize_i386fbsd_nat): Adjust to C++ification.
10750         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10751         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10752         (_initialize_x86_bsd_nat): Adjust to C++ification.
10753         * x86-bsd-nat.h: Include "x86-nat.h".
10754         (x86bsd_target): Delete declaration.
10755         (x86bsd_nat_target): New class.
10756
10757         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10758         (the_aarch64_fbsd_nat_target): New.
10759         (aarch64_fbsd_fetch_inferior_registers)
10760         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10761         aarch64_fbsd_nat_target.
10762         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10763         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10764         (the_alpha_bsd_nat_target): New.
10765         (alphabsd_fetch_inferior_registers)
10766         (alphabsd_store_inferior_registers): Refactor as
10767         alpha_bsd_nat_target methods.
10768         (_initialize_alphabsd_nat): Refactor as methods of
10769         alpha_bsd_nat_target.
10770         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10771         (the_amd64_nbsd_nat_target): New.
10772         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10773         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10774         (the_amd64_obsd_nat_target): New.
10775         (_initialize_amd64obsd_nat): Adjust to C++ification.
10776         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10777         (the_arm_fbsd_nat_target): New.
10778         (arm_fbsd_fetch_inferior_registers)
10779         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10780         (_initialize_arm_fbsd_nat): Refactor as methods of
10781         arm_fbsd_nat_target.
10782         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10783         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10784         (the_arm_netbsd_nat_target): New.
10785         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10786         arm_netbsd_nat_target.
10787         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10788         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10789         (the_hppa_nbsd_nat_target): New.
10790         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10791         hppa_nbsd_nat_target methods.
10792         (_initialize_hppanbsd_nat): Adjust to C++ification.
10793         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10794         (the_hppa_obsd_nat_target): New.
10795         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10796         methods of hppa_obsd_nat_target.
10797         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10798         add_target.
10799         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10800         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10801         add_target.
10802         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10803         (_initialize_i386obsd_nat): Use add_target.
10804         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10805         (the_m68k_bsd_nat_target): New.
10806         (m68kbsd_fetch_inferior_registers)
10807         (m68kbsd_store_inferior_registers): Refactor as methods of
10808         m68k_bsd_nat_target.
10809         (_initialize_m68kbsd_nat): Adjust to C++ification.
10810         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10811         (the_mips_fbsd_nat_target): New.
10812         (mips_fbsd_fetch_inferior_registers)
10813         (mips_fbsd_store_inferior_registers): Refactor as methods of
10814         mips_fbsd_nat_target.
10815         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10816         add_target.
10817         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10818         (the_mips_nbsd_nat_target): New.
10819         (mipsnbsd_fetch_inferior_registers)
10820         (mipsnbsd_store_inferior_registers): Refactor as methods of
10821         mips_nbsd_nat_target.
10822         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10823         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10824         (the_mips64_obsd_nat_target): New.
10825         (mips64obsd_fetch_inferior_registers)
10826         (mips64obsd_store_inferior_registers): Refactor as methods of
10827         mips64_obsd_nat_target.
10828         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10829         add_target.
10830         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10831         nbsd_nat_target.
10832         * nbsd-nat.h: Include "inf-ptrace.h".
10833         (nbsd_nat_target): New class.
10834         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10835         (obsd_wait): Refactor as methods of obsd_nat_target.
10836         (obsd_add_target): Delete.
10837         * obsd-nat.h: Include "inf-ptrace.h".
10838         (obsd_nat_target): New class.
10839         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10840         (the_ppc_fbsd_nat_target): New.
10841         (ppcfbsd_fetch_inferior_registers)
10842         (ppcfbsd_store_inferior_registers): Refactor as methods of
10843         ppc_fbsd_nat_target.
10844         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10845         add_target.
10846         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10847         (the_ppc_nbsd_nat_target): New.
10848         (ppcnbsd_fetch_inferior_registers)
10849         (ppcnbsd_store_inferior_registers): Refactor as methods of
10850         ppc_nbsd_nat_target.
10851         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10852         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10853         (the_ppc_obsd_nat_target): New.
10854         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10855         methods of ppc_obsd_nat_target.
10856         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10857         add_target.
10858         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10859         (the_sh_nbsd_nat_target): New.
10860         (shnbsd_fetch_inferior_registers)
10861         (shnbsd_store_inferior_registers): Refactor as methods of
10862         sh_nbsd_nat_target.
10863         (_initialize_shnbsd_nat): Adjust to C++ification.
10864         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10865         (inf_ptrace_xfer_partial): Delete.
10866         (sparc_xfer_partial, sparc_target): Delete.
10867         * sparc-nat.h (sparc_fetch_inferior_registers)
10868         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10869         (sparc_target): Delete function declaration.
10870         (sparc_target): New template class.
10871         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10872         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10873         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10874         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10875         add_target.
10876         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10877         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10878         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10879         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10880         add_target.
10881         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10882         (the_vax_bsd_nat_target): New.
10883         (vaxbsd_fetch_inferior_registers)
10884         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10885         methods.
10886         (_initialize_vaxbsd_nat): Adjust to C++ification.
10887
10888         * bsd-kvm.c (bsd_kvm_target): New class.
10889         (bsd_kvm_ops): Now a bsd_kvm_target.
10890         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10891         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10892         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10893         bsd_kvm_target.
10894         (bsd_kvm_return_one): Delete.
10895         (bsd_kvm_add_target): Adjust to C++ification.
10896
10897         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10898         (nto_procfs_target_procfs): New classes.
10899         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10900         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10901         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10902         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10903         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10904         (procfs_remove_hw_breakpoint, procfs_resume)
10905         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10906         (procfs_kill_inferior, procfs_store_registers)
10907         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10908         as methods of nto_procfs_target.
10909         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10910         (nto_native_ops): Delete.
10911         (procfs_open, procfs_native_open): Delete.
10912         (nto_native_ops): Now an nto_procfs_target_native.
10913         (init_procfs_targets): Adjust to C++ification.
10914         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10915         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10916         Refactor as methods of nto_procfs_target.
10917
10918         * go32-nat.c (go32_nat_target): New class.
10919         (the_go32_nat_target): New.
10920         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10921         (go32_store_registers, go32_xfer_partial, go32_files_info)
10922         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10923         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10924         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10925         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10926         (go32_target): Delete.
10927         (_initialize_go32_nat): Adjust to C++ification.
10928
10929         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10930         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10931         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10932         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10933         gnu_nat_target.
10934         (gnu_target): Delete.
10935         * gnu-nat.h (gnu_target): Delete.
10936         (gnu_nat_target): New class.
10937         * i386-gnu-nat.c (gnu_base_target): New.
10938         (i386_gnu_nat_target): New class.
10939         (the_i386_gnu_nat_target): New.
10940         (_initialize_i386gnu_nat): Adjust to C++ification.
10941
10942 2018-05-02  Pedro Alves  <palves@redhat.com>
10943
10944         * bfd-target.c (target_bfd_xclose): Rename to ...
10945         (target_bfd_close): ... this.
10946         (target_bfd_reopen): Adjust.
10947         * target.c (target_close): Remove references to to_xclose.
10948         * target.h (target_ops::to_xclose): Delete.
10949         (target_ops::to_close): Update comments.
10950
10951 2018-05-02  Pedro Alves  <palves@redhat.com>
10952
10953         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10954         "linux-nat.h".
10955         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10956         * inf-ptrace.c (inf_ptrace_register_u_offset)
10957         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10958         (inf_ptrace_store_register, inf_ptrace_store_registers)
10959         (inf_ptrace_trad_target): Move to ...
10960         * linux-nat-trad.c: ... this new file.
10961         * linux-nat-trad.h: New file.
10962         * linux-nat.c (linux_target_install_ops): Make extern.
10963         (linux_trad_target): Delete.
10964         * linux-nat.h (linux_trad_target): Delete declaration.
10965         (linux_target_install_ops): Declare.
10966         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10967         "linux-nat.h".
10968
10969 2018-05-02  Pedro Alves  <palves@redhat.com>
10970
10971         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10972         procfs_target/add_target here.
10973         * procfs.c (procfs_target): Make static.
10974         (_initialize_procfs): Call add_target here.
10975         * procfs.h (struct target_ops): Remove forward declaration.
10976         (procfs_target): Remove declaration.
10977         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10978
10979 2018-05-02  Pedro Alves  <palves@redhat.com>
10980
10981         * procfs.c (procfs_stopped_by_watchpoint)
10982         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10983         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10984         Forward declare.
10985         (procfs_use_watchpoints): Delete, move contents...
10986         (procfs_target): ... here.
10987         * procfs.h (procfs_use_watchpoints): Delete declaration.
10988         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10989         procfs_use_watchpoints.
10990         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10991         procfs_use_watchpoints.
10992
10993 2018-05-02  Tom Tromey  <tom@tromey.com>
10994
10995         PR python/20084:
10996         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10997         and var_zuinteger_unlimited.
10998         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10999         and PARAM_ZUINTEGER_UNLIMITED.
11000         (set_parameter_value): Handle var_zuinteger and
11001         var_zuinteger_unlimited.
11002         (add_setshow_generic): Likewise.
11003         (parmpy_init): Likewise.
11004
11005 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11006
11007         PR rust/23124
11008         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11009         pointer is not null before dereferencing it.
11010
11011 2018-04-30  Tom Tromey  <tom@tromey.com>
11012
11013         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11014         is_mi_like_p.
11015
11016 2018-04-30  Tom Tromey  <tom@tromey.com>
11017
11018         * breakpoint.c (mention): Remove use of is_mi_like_p.
11019         (print_mention_ranged_breakpoint): Likewise.
11020         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11021         of is_mi_like_p.
11022
11023 2018-04-30  Tom Tromey  <tom@tromey.com>
11024
11025         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11026
11027 2018-04-30  Tom Tromey  <tom@tromey.com>
11028
11029         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11030         (info_spu_event_command): Remove some uses of is_mi_like_p.
11031
11032 2018-04-30  Tom Tromey  <tom@tromey.com>
11033
11034         * python/py-framefilter.c (py_print_single_arg)
11035         (enumerate_locals, py_print_args, py_print_frame): Remove some
11036         uses of is_mi_like_p.
11037
11038 2018-04-30  Tom Tromey  <tom@tromey.com>
11039
11040         * ui-out.c: Update.
11041         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11042         * ui-out.h (ui_out::is_mi_like_p): Now const.
11043         (ui_out::do_is_mi_like_p): Now const.
11044         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11045
11046 2018-04-30  Tom Tromey  <tom@tromey.com>
11047
11048         * varobj.c (varobj_set_visualizer): Use new_reference.
11049         * python/python.c (gdbpy_decode_line): Use new_reference.
11050         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11051         new_reference.
11052
11053 2018-04-30  Tom Tromey  <tom@tromey.com>
11054
11055         * varobj.c (install_new_value): Use new_reference.
11056         * value.h (value_incref): Return void.  Swap intro comment with
11057         value_decref.
11058         * value.c (set_value_parent): Use new_reference.
11059         (value_incref): Return void.  Update intro comment.
11060         (release_value): Use new_reference.
11061         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11062
11063 2018-04-30  Tom Tromey  <tom@tromey.com>
11064
11065         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11066         * gdb_bfd.h (new_bfd_ref): Remove.
11067         (gdb_bfd_open): Update comment.
11068         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11069         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11070         (gdb_bfd_fdopenr): Use new_reference.
11071         * exec.c (exec_file_attach): Use new_reference.
11072
11073 2018-04-30  Tom Tromey  <tom@tromey.com>
11074
11075         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11076         method.
11077
11078 2018-04-30  Tom Tromey  <tom@tromey.com>
11079
11080         * jit.c (jit_read_code_entry): Use type_align.
11081         * i386-tdep.c (i386_gdbarch_init): Don't call
11082         set_gdbarch_long_long_align_bit.
11083         * gdbarch.sh: Remove long_long_align_bit.
11084         * gdbarch.c, gdbarch.h: Rebuild.
11085         * arc-tdep.c (arc_type_align): New function.
11086         (arc_gdbarch_init): Use arc_type_align.  Don't call
11087         set_gdbarch_long_long_align_bit.
11088
11089 2018-04-30  Tom Tromey  <tom@tromey.com>
11090
11091         * rust-lang.c (rust_type_alignment): Remove.
11092         (rust_composite_type): Use type_align.
11093
11094 2018-04-30  Tom Tromey  <tom@tromey.com>
11095
11096         * NEWS: Mention Type.align.
11097         * python/py-type.c (typy_get_alignof): New function.
11098         (type_object_getset): Add "alignof".
11099
11100 2018-04-30  Tom Tromey  <tom@tromey.com>
11101
11102         PR exp/17095:
11103         * NEWS: Update.
11104         * std-operator.def (UNOP_ALIGNOF): New operator.
11105         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11106         New.
11107         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11108         * c-lang.c (c_op_print_tab): Add alignof.
11109         * c-exp.y (ALIGNOF): New token.
11110         (exp): Add "ALIGNOF" production.
11111         (ident_tokens): Add _Alignof and alignof.
11112
11113 2018-04-30  Tom Tromey  <tom@tromey.com>
11114
11115         * i386-tdep.c (i386_type_align): New function.
11116         (i386_gdbarch_init): Update.
11117         * gdbarch.sh (type_align): New method.
11118         * gdbarch.c, gdbarch.h: Rebuild.
11119         * arch-utils.h (default_type_align): Declare.
11120         * arch-utils.c (default_type_align): New function.
11121         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11122         (struct type) <align_log2>: New field.
11123         <instance_flags>: Now a bitfield.
11124         (TYPE_RAW_ALIGN): New macro.
11125         (type_align, type_raw_align, set_type_align): Declare.
11126         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11127         functions.
11128         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11129         (get_alignment, maybe_set_alignment): New functions.
11130         (read_structure_type, read_enumeration_type, read_array_type)
11131         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11132         (read_subrange_type, read_base_type): Set type alignment.
11133
11134 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11135
11136         * dwarf2read.c (read_index_from_section): Use bool.
11137
11138 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11139
11140         PR gdb/22950
11141         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11142         with #ifdef.
11143
11144 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11145
11146         PR build/22873
11147         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11148         last step, and do it atomically.
11149
11150 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11151
11152         * compile/compile-c-types.c (convert_int, convert_float):
11153         Update for C FE v1.
11154
11155 2018-04-27  Tom Tromey  <tom@tromey.com>
11156
11157         PR rust/22545:
11158         * rust-lang.c (rust_inclusive_range_type_p): New function.
11159         (rust_range): Handle inclusive ranges.
11160         (rust_compute_range): Likewise.
11161         * rust-exp.y (struct rust_op) <inclusive>: New field.
11162         (DOTDOTEQ): New constant.
11163         (range_expr): Add "..=" productions.
11164         (operator_tokens): Add "..=" token.
11165         (ast_range): Add "inclusive" parameter.
11166         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11167         ranges.
11168         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11169         bounds values.
11170         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11171         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11172         Update comments.
11173         * expprint.c (print_subexp_standard): Handle new bounds values.
11174         (dump_subexp_body_standard): Likewise.
11175
11176 2018-04-27  Tom Tromey  <tom@tromey.com>
11177
11178         * configure: Rebuild.
11179         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11180         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11181         "OVERRIDE".
11182         (class symbol_needs_eval_context): Likewise.
11183         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11184         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11185         "virtual".
11186         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11187         "override".
11188         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11189         * aarch64-tdep.c (instruction_reader::read): Use "override".
11190         (instruction_reader_test::read): Likewise.
11191         * arm-tdep.c (instruction_reader::read): Use "override".
11192         (instruction_reader_thumb::read): Likewise.
11193
11194 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11195
11196         PR remote/9665
11197         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11198         instead of remote_send.
11199         (remote_send): Remove.
11200
11201 2018-04-26  Pedro Alves  <palves@redhat.com>
11202
11203         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11204         find_function_start_sal instead of find_pc_line.
11205
11206 2018-04-26  Pedro Alves  <palves@redhat.com>
11207
11208         * breakpoint.c (set_breakpoint_location_function): Handle
11209         mst_data_gnu_ifunc.
11210         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11211         * elfread.c (elf_symtab_read): Give data symbols with
11212         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11213         (elf_rel_plt_read): Update comment.
11214         * linespec.c (convert_linespec_to_sals): Handle
11215         mst_data_gnu_ifunc.
11216         (minsym_found): Handle mst_data_gnu_ifunc.
11217         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11218         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11219         * parse.c (find_minsym_type_and_address): Handle
11220         mst_data_gnu_ifunc.
11221         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11222         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11223         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11224         comment.
11225         <mst_data_gnu_ifunc>: New enumerator.
11226
11227 2018-04-26  Pedro Alves  <palves@redhat.com>
11228
11229         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11230         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11231         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11232         Handle it.
11233         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11234         (lookup_minimal_symbol_by_pc): Adjust.
11235         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11236         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11237         * minsyms.h (lookup_msym_prefer): New enum.
11238         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11239         parameter by a lookup_msym_prefer parameter.
11240
11241 2018-04-26  Pedro Alves  <palves@redhat.com>
11242
11243         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11244         ends in "@plt" instead of looking at the symbol's section.
11245
11246 2018-04-26  Pedro Alves  <palves@redhat.com>
11247
11248         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11249         all references.
11250         (find_pc_partial_function_gnu_ifunc): Rename to ...
11251         (find_pc_partial_function): ... this, and remove references to
11252         'is_gnu_ifunc_p'.
11253         (find_pc_partial_function): Delete old implementation.
11254         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11255
11256 2018-04-26  Pedro Alves  <palves@redhat.com>
11257
11258         * linespec.c (struct bound_minimal_symbol_search_key): New.
11259         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11260         skip first line if we found a GNU ifunc minimal symbol by name.
11261         (compare_msymbols): Change parameters to work with a destructured
11262         lhs minsym.
11263         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11264         functions.
11265
11266 2018-04-26  Pedro Alves  <palves@redhat.com>
11267
11268         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11269         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11270         address/name.
11271         (add_location_to_breakpoint): Store the minsym and the objfile in
11272         the breakpoint location.
11273         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11274         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11275         Record the minsym in the sal.
11276         * symtab.h (symtab_and_line) <msymbol>: New field.
11277
11278 2018-04-26  Pedro Alves  <palves@redhat.com>
11279
11280         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11281         unless we actually resolved the ifunc.
11282
11283 2018-04-26  Pedro Alves  <palves@redhat.com>
11284
11285         * c-exp.y (variable production): Prefer ifunc minsyms over
11286         regular function symbols.
11287         * symtab.c (find_gnu_ifunc): New function.
11288         * minsyms.h (lookup_msym_prefer): New enum.
11289         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11290         parameter by a lookup_msym_prefer parameter.
11291         * symtab.h (find_gnu_ifunc): New declaration.
11292
11293 2018-04-26  Pedro Alves  <palves@redhat.com>
11294
11295         * blockframe.c (find_gnu_ifunc_target_type): New function.
11296         (find_function_type): New.
11297         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11298         return a value with a memory address.
11299         (eval_call): For calls to GNU ifunc functions, try to find the
11300         type of the target function from the type that the resolver
11301         returns.
11302         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11303         symbols.
11304         * infcall.c (find_function_return_type): Delete.
11305         (find_function_addr): Add 'function_type' parameter.  For calls to
11306         GNU ifunc functions, try to find the type of the target function
11307         from the type that the resolver returns, and return it via
11308         FUNCTION_TYPE.
11309         (call_function_by_hand_dummy): Adjust to use the function type
11310         returned by find_function_addr.
11311         (find_function_addr): Add 'function_type' parameter and move
11312         description here.
11313         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11314         declarations.
11315
11316 2018-04-26  Pedro Alves  <palves@redhat.com>
11317
11318         * c-exp.y (variable production): Skip finding an alias for ifunc
11319         symbols.
11320
11321 2018-04-26  Pedro Alves  <palves@redhat.com>
11322
11323         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11324
11325 2018-04-25  Pedro Alves  <palves@redhat.com>
11326
11327         * infcmd.c (kill_command): Print the pid as string, not the whole
11328         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11329         message.
11330         * remote.c (remote_detach_1): Print the pid as string, not the
11331         whole thread's ptid.
11332
11333 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11334             Sergio Durigan Junior  <sergiodj@redhat.com>
11335             Pedro Alves  <palves@redhat.com>
11336
11337         * infcmd.c (kill_command): Print message when inferior has
11338         been killed.
11339         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11340         '1'.
11341         (add_inferior): Improve message printed when
11342         'print_inferior_events' is on.
11343         (exit_inferior): Remove message printed when
11344         'print_inferior_events' is on.
11345         (detach_inferior): Improve message printed when
11346         'print_inferior_events' is on.
11347         (initialize_inferiors): Use 'add_inferior_silent' to set
11348         'current_inferior_'.
11349         * inferior.h (print_inferior_events): Declare here as
11350         'extern'.
11351         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11352         '[Detaching...]' messages when 'print_inferior_events' is on.
11353         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11354         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11355         'Detaching after fork from child...', replace it by '... from
11356         parent...'.
11357         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11358         prefix/suffix when printing 'Detaching...' messages.  Print
11359         them when 'print_inferior_events' is on.
11360         * remote.c (remote_detach_1): Print message when detaching
11361         from inferior and '!is_fork_parent'.
11362
11363 2018-04-24  Tom Tromey  <tom@tromey.com>
11364
11365         * cli-out.h: Reindent.
11366
11367 2018-04-24  Tom Tromey  <tom@tromey.com>
11368
11369         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11370         (cli_ui_out::do_field_string): Use fputs_filtered.
11371         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11372
11373 2018-04-23  Tom Tromey  <tom@tromey.com>
11374
11375         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11376         gdb::unique_xmalloc_ptr.
11377
11378 2018-04-23  Tom Tromey  <tom@tromey.com>
11379
11380         * configure: Rebuild.
11381
11382 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11383
11384         PR gdb/23095
11385         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11386         prepare_for_testing.  Set normal_bp to r_debug_state if target
11387         is bsd.
11388
11389 2018-04-21  Pedro Alves  <palves@redhat.com>
11390             Rajendra SY  <rajendra.sy@gmail.com>
11391
11392         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11393         * remote.c (extended_remote_attach): In all-stop mode, mark the
11394         thread as executing.
11395
11396 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11397
11398         * thread.c (thread_apply_all_command): Fix comment.
11399         (thread_command): Fix comment.
11400
11401 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11402
11403         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11404         parameter.
11405         * features/aarch64-core.c (create_feature_aarch64_core):
11406         Regenerate.
11407         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11408         Likewise.
11409         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11410         Likewise.
11411         * features/i386/32bit-avx512.c
11412         (create_feature_i386_32bit_avx512): Likewise.
11413         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11414         Likewise.
11415         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11416         Likewise.
11417         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11418         Likewise.
11419         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11420         Likewise.
11421         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11422         Likewise.
11423         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11424         Likewise.
11425         * features/i386/64bit-avx512.c
11426         (create_feature_i386_64bit_avx512): Likewise.
11427         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11428         Likewise.
11429         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11430         Likewise.
11431         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11432         Likewise.
11433         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11434         Likewise.
11435         * features/i386/64bit-segments.c
11436         (create_feature_i386_64bit_segments): Likewise.
11437         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11438         Likewise.
11439         * features/i386/x32-core.c
11440         (create_feature_i386_x32_core): Likewise.
11441         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11442         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11443         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11444         * target-descriptions.c: In generated code, don't pass xml
11445         filename.
11446
11447 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11448
11449         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11450         (print_xml_feature::visit_post): Likewise.
11451         (print_xml_feature::visit): Likewise.
11452         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11453         (print_xml_feature): Add new class.
11454         * regformats/regdat.sh: Null xmltarget on feature targets.
11455         * target-descriptions.c (struct target_desc): Add xmltarget.
11456         (maintenance_check_tdesc_xml_convert): Add unittest function.
11457         (tdesc_get_features_xml): Add function to get xml.
11458         (maintenance_check_xml_descriptions): Test xml generation.
11459         * xml-tdesc.c (string_read_description_xml): Add function.
11460         * xml-tdesc.h (string_read_description_xml): Add declaration.
11461
11462 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11463
11464         * features/Makefile: Add feature marker to targets with new style
11465         target descriptions.
11466         * regformats/aarch64.dat: Regenerate.
11467         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11468         * regformats/i386/amd64-avx-linux.dat: Likewise.
11469         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11470         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11471         * regformats/i386/amd64-linux.dat: Likewise.
11472         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11473         * regformats/i386/amd64.dat: Likewise.
11474         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11475         * regformats/i386/i386-avx-linux.dat: Likewise.
11476         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11477         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11478         * regformats/i386/i386-linux.dat: Likewise.
11479         * regformats/i386/i386-mmx-linux.dat: Likewise.
11480         * regformats/i386/i386-mpx-linux.dat: Likewise.
11481         * regformats/i386/i386.dat: Likewise.
11482         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11483         * regformats/i386/x32-avx-linux.dat: Likewise.
11484         * regformats/i386/x32-linux.dat: Likewise.
11485         * regformats/tic6x-c62x-linux.dat: Likewise.
11486         * regformats/tic6x-c64x-linux.dat: Likewise.
11487         * regformats/tic6x-c64xp-linux.dat: Likewise.
11488         * regformats/regdat.sh: Parse feature marker.
11489
11490 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11491
11492         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11493         (tdesc_osabi_name): Likewise.
11494         * target-descriptions.c (tdesc_architecture_name): Add new
11495         function.
11496         (tdesc_osabi_name): Likewise.
11497
11498 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11499
11500         * common/tdesc.c (tdesc_predefined_type): Move to here.
11501         (tdesc_named_type): Likewise.
11502         (tdesc_create_vector): Likewise.
11503         (tdesc_create_struct): Likewise.
11504         (tdesc_set_struct_size): Likewise.
11505         (tdesc_create_union): Likewise.
11506         (tdesc_create_flags): Likewise.
11507         (tdesc_create_enum): Likewise.
11508         (tdesc_add_field): Likewise.
11509         (tdesc_add_typed_bitfield): Likewise.
11510         (tdesc_add_bitfield): Likewise.
11511         (tdesc_add_flag): Likewise.
11512         (tdesc_add_enum_value): Likewise.
11513         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11514         (struct tdesc_type_vector): Likewise.
11515         (struct tdesc_type_field): Likewise.
11516         (struct tdesc_type_with_fields): Likewise.
11517         (tdesc_create_enum): Add declaration.
11518         (tdesc_add_typed_bitfield): Likewise.
11519         (tdesc_add_enum_value): Likewise.
11520         * target-descriptions.c (tdesc_type_field): Move from here.
11521         (tdesc_type_builtin): Likewise.
11522         (tdesc_type_vector): Likewise.
11523         (tdesc_type_with_fields): Likewise.
11524         (tdesc_predefined_types): Likewise.
11525         (tdesc_named_type): Likewise.
11526         (tdesc_create_vector): Likewise.
11527         (tdesc_create_struct): Likewise.
11528         (tdesc_set_struct_size): Likewise.
11529         (tdesc_create_union): Likewise.
11530         (tdesc_create_flags): Likewise.
11531         (tdesc_create_enum): Likewise.
11532         (tdesc_add_field): Likewise.
11533         (tdesc_add_typed_bitfield): Likewise.
11534         (tdesc_add_bitfield): Likewise.
11535         (tdesc_add_flag): Likewise.
11536         (tdesc_add_enum_value): Likewise.
11537         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11538         (tdesc_add_typed_bitfield): Likewise.
11539         (tdesc_add_enum_value): Likewise.
11540
11541 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11542
11543         * common/tdesc.c (tdesc_feature::accept): Move to here.
11544         (tdesc_feature::operator==): Likewise.
11545         (tdesc_create_reg): Likewise.
11546         * common/tdesc.h (tdesc_type_kind): Likewise.
11547         (struct tdesc_type): Likewise.
11548         (struct tdesc_feature): Likewise.
11549         * regformats/regdat.sh: Create a feature.
11550         * target-descriptions.c (tdesc_type_kind): Move from here.
11551         (tdesc_type): Likewise.
11552         (tdesc_type_up): Likewise.
11553         (tdesc_feature): Likewise.
11554         (tdesc_create_reg): Likewise.
11555
11556 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11557
11558         * Makefile.in: Add arch/tdesc.c
11559         * common/tdesc.c: New file.
11560         * common/tdesc.h (tdesc_element_visitor): Move to here.
11561         (tdesc_element): Likewise.
11562         (tdesc_reg): Likewise.
11563         (tdesc_reg_up): Likewise.
11564         * regformats/regdef.h (reg): Add offset to constructors.
11565         * target-descriptions.c (tdesc_element_visitor): Move from here.
11566         (tdesc_element): Likewise.
11567         (tdesc_reg): Likewise.
11568         (tdesc_reg_up): Likewise.
11569
11570 2018-04-17  Tom Tromey  <tom@tromey.com>
11571
11572         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11573         discriminant field.
11574
11575 2018-04-17  Tom Tromey  <tom@tromey.com>
11576
11577         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11578
11579 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11580
11581         * symtab.c (print_symbol_info): Skip printing filename and line
11582         number when `last' is NULL.
11583         (symtab_symbol_info): Use empty string instead of NULL for first
11584         invocation of print_symbol_info.
11585         (rbreak_command): Pass NULL to `last' parameter of
11586         print_symbol_info.
11587
11588 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11589
11590         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11591         instead of nullptr.
11592
11593 2018-04-16  Pedro Alves  <palves@redhat.com>
11594
11595         * MAINTAINERS (sh): Remove.
11596         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11597         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11598         (ALLDEPFILES): Remove sh64-tdep.c.
11599         * NEWS: Mentions that support for SH-5/SH64 is removed.
11600         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11601         (sh*-*-openbsd*): Ditto.
11602         (sh64-*-elf*): Remove.
11603         (sh*): Remove.
11604         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11605         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11606         * sh-tdep.c: No longer include "sh64-tdep.h".
11607         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11608         * sh64-tdep.c, sh64-tdep.h: Remove files.
11609
11610 2018-04-16  Pedro Alves  <palves@redhat.com>
11611
11612         * MAINTAINERS: Remove m88k.
11613         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11614         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11615         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11616         * NEWS: Mention that support for m88k was removed.
11617         * configure.host (m88*-*-*): Remove support.
11618         * configure.nat (m88k-*-*): Remove support.
11619         * configure.tgt (m88*-*-openbsd*): Remove.
11620         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11621
11622 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11623
11624         * configure.tgt (x86_tobjs): New variable.
11625         (amd64_tobjs, i386_tobjs): Use it.
11626
11627 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11628
11629         * symtab.c (print_symbol_info): Precede the symbol definition by
11630         the line number when available.
11631         * NEWS: Advertise this enhancement.
11632
11633 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11634
11635         * NEWS (New options): announce set/show record btrace cpu.
11636         * btrace.c: Include record-btrace.h.
11637         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11638         the vendor is unknown.
11639         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11640         Maybe overwrite the btrace configuration's cpu.
11641         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11642         (btrace_fetch): Add cpu parameter.  Update callers.
11643         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11644         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11645         errata workarounds if the vendor is unknown.
11646         * python/py-record-btrace.c: Include record-btrace.h.
11647         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11648         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11649         * record-btrace.c (record_btrace_cpu_state_kind): New.
11650         (record_btrace_cpu): New.
11651         (set_record_btrace_cpu_cmdlist): New.
11652         (record_btrace_get_cpu): New.
11653         (require_btrace_thread, record_btrace_info)
11654         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11655         (cmd_set_record_btrace_cpu_none): New.
11656         (cmd_set_record_btrace_cpu_auto): New.
11657         (cmd_set_record_btrace_cpu): New.
11658         (cmd_show_record_btrace_cpu): New.
11659         (_initialize_record_btrace): Initialize set/show record btrace cpu
11660         commands.
11661         * record-btrace.h (record_btrace_get_cpu): New.
11662
11663 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11664
11665         * record.c (set_record_command): Fix typo in message.
11666
11667 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11668
11669         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11670
11671 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11672
11673         * infrun.c (process_event_stop_test): Call
11674         gdbarch_in_indirect_branch_thunk.
11675         * gdbarch.sh (in_indirect_branch_thunk): New.
11676         * gdbarch.c: Regenerated.
11677         * gdbarch.h: Regenerated.
11678         * x86-tdep.h: New.
11679         * x86-tdep.c: New.
11680         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11681         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11682         (ALLDEPFILES): Add x86-tdep.c.
11683         * arch-utils.h (default_in_indirect_branch_thunk): New.
11684         * arch-utils.c (default_in_indirect_branch_thunk): New.
11685         * i386-tdep: Include x86-tdep.h.
11686         (i386_in_indirect_branch_thunk): New.
11687         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11688         function.
11689         * amd64-tdep: Include x86-tdep.h.
11690         (amd64_in_indirect_branch_thunk): New.
11691         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11692
11693 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11694
11695         PR gdb/23053
11696         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11697         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11698         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11699         regression.
11700
11701 2018-04-12  Tom Tromey  <tom@tromey.com>
11702
11703         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11704         (rust_evaluate_subexp): Likewise.
11705
11706 2018-04-12  Pedro Alves  <palves@redhat.com>
11707
11708         * procfs.c (procfs_detach): Make forward declaration's prototype
11709         match definition's protototype.
11710         (proc_get_LDT_entry): Remove stale do_cleanups call.
11711
11712 2018-04-12  Pedro Alves  <palves@redhat.com>
11713
11714         * target.h (target_ops::to_has_exited): Delete.
11715         (target_has_exited): Delete.
11716         * target-delegates.c: Regenerate.
11717
11718 2018-04-11  Pedro Alves  <palves@redhat.com>
11719
11720         * target.c (fileio_fh_t::t): Add comment.
11721         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11722         (target_fileio_close): Handle a NULL target.
11723         (invalidate_fileio_fh): New.
11724         (target_close): Call it.
11725         * remote.c (remote_hostio_send_command): No longer check whether
11726         remote_desc is open.
11727
11728 2018-04-11  Pedro Alves  <palves@redhat.com>
11729
11730         * target.c (fileio_fh_t): Make it a named struct instead of a
11731         typedef.
11732         (fileio_fh_t::is_closed): New method.
11733         (DEF_VEC_O (fileio_fh_t)): Remove.
11734         (fileio_fhandles): Now a std::vector.
11735         (is_closed_fileio_fh): Delete.
11736         (acquire_fileio_fd): Adjust.  Rename parameters.
11737         (release_fileio_fd): Adjust.
11738         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11739         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11740         (target_fileio_close): Adjust.
11741
11742 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11743
11744         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11745         index.
11746
11747 2018-04-10  Pedro Alves  <palves@redhat.com>
11748
11749         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11750         (scoped_finish_thread_state): New class.
11751         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11752         cleanup.
11753         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11754         (fetch_inferior_event, normal_stop): Likewise.
11755         * thread.c (finish_thread_state_cleanup): Delete.
11756
11757 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11758             Pedro Alves  <palves@redhat.com>
11759
11760         * value.c: Include "selftest.h" and "common/array-view.h".
11761         (struct range) <operator ==>: New.
11762         (test_ranges_contain): New.
11763         (check_ranges_vector): New.
11764         (test_insert_into_bit_range_vector): New.
11765         (_initialize_values): Register selftests.
11766         * common/array-view.h (operator==, operator!=): New.
11767
11768 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11769
11770         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11771         an iterator.
11772         * inline-frame.c: Include <algorithm>.
11773         (struct inline_state): Add constructor.
11774         (inline_state_s): Remove.
11775         (DEF_VEC_O(inline_state_s)): Remove.
11776         (inline_states): Change type to std::vector.
11777         (find_inline_frame_state): Adjust to std::vector.
11778         (allocate_inline_frame_state): Remove.
11779         (clear_inline_frame_state): Adjust to std::vector.
11780         (skip_inline_frames): Adjust to std::vector.
11781
11782 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11783
11784         * tracepoint.h (struct trace_state_variable): Add constructor.
11785         <name>: Change type to std::string.
11786         * tracepoint.c (tsv_s): Remove.
11787         (DEF_VEC_O(tsv_s)): Remove.
11788         (tvariables): Change to std::vector.
11789         (create_trace_state_variable): Adjust to std::vector.
11790         (find_trace_state_variable): Likewise.
11791         (find_trace_state_variable_by_number): Likewise.
11792         (delete_trace_state_variable): Likewise.
11793         (trace_variable_command): Adjust to std::string.
11794         (delete_trace_variable_command): Likewise.
11795         (tvariables_info_1): Adjust to std::vector.
11796         (save_trace_state_variables): Likewise.
11797         (start_tracing): Likewise.
11798         (merge_uploaded_trace_state_variables): Adjust to std::vector
11799         and std::string.
11800         * target.h (struct target_ops)
11801         <to_download_trace_state_variable>: Pass reference to
11802         trace_state_variable.
11803         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11804         * target-delegates.c: Re-generate.
11805         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11806         (mi_tsv_deleted): Likewise.
11807         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11808         * remote.c (remote_download_trace_state_variable): Change
11809         pointer to reference and adjust.
11810         * make-target-delegates (parse_argtypes): Handle references.
11811         (write_function_header): Likewise.
11812         (munge_type): Likewise.
11813
11814 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11815
11816         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11817         string_view-selftests.c.
11818         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11819         testsuite.
11820         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11821         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11822         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11823         * unittests/basic_string_view/element_access/char/1.cc:
11824         Likewise.
11825         * unittests/basic_string_view/element_access/char/empty.cc:
11826         Likewise.
11827         * unittests/basic_string_view/element_access/char/front_back.cc:
11828         Likewise.
11829         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11830         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11831         Likewise.
11832         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11833         Likewise.
11834         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11835         Likewise.
11836         * unittests/basic_string_view/operations/compare/char/1.cc:
11837         Likewise.
11838         * unittests/basic_string_view/operations/compare/char/13650.cc:
11839         Likewise.
11840         * unittests/basic_string_view/operations/copy/char/1.cc:
11841         Likewise.
11842         * unittests/basic_string_view/operations/data/char/1.cc:
11843         Likewise.
11844         * unittests/basic_string_view/operations/find/char/1.cc:
11845         Likewise.
11846         * unittests/basic_string_view/operations/find/char/2.cc:
11847         Likewise.
11848         * unittests/basic_string_view/operations/find/char/3.cc:
11849         Likewise.
11850         * unittests/basic_string_view/operations/find/char/4.cc:
11851         Likewise.
11852         * unittests/basic_string_view/operations/rfind/char/1.cc:
11853         Likewise.
11854         * unittests/basic_string_view/operations/rfind/char/2.cc:
11855         Likewise.
11856         * unittests/basic_string_view/operations/rfind/char/3.cc:
11857         Likewise.
11858         * unittests/basic_string_view/operations/substr/char/1.cc:
11859         Likewise.
11860         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11861         * unittests/string_view-selftests.c: New file.
11862
11863 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11864
11865         * unittests/basic_string_view/capacity/1.cc: New file.
11866         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11867         * unittests/basic_string_view/cons/char/1.cc: New file.
11868         * unittests/basic_string_view/cons/char/2.cc: New file.
11869         * unittests/basic_string_view/cons/char/3.cc: New file.
11870         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11871         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11872         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11873         * unittests/basic_string_view/element_access/char/1.cc: New file.
11874         * unittests/basic_string_view/element_access/char/2.cc: New file.
11875         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11876         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11877         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11878         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11879         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11880         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11881         * unittests/basic_string_view/include.cc: New file.
11882         * unittests/basic_string_view/inserters/char/1.cc: New file.
11883         * unittests/basic_string_view/inserters/char/2.cc: New file.
11884         * unittests/basic_string_view/inserters/char/3.cc: New file.
11885         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11886         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11887         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11888         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11889         * unittests/basic_string_view/literals/types.cc: New file.
11890         * unittests/basic_string_view/literals/values.cc: New file.
11891         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11892         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11893         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11894         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11895         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11896         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11897         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11898         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11899         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11900         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11901         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11902         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11903         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11904         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11905         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11906         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11907         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11908         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11909         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11910         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11911         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11912         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11913         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11914         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11915         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11916         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11917         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11918         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11919         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11920         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11921         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11922         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11923         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11924         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11925         * unittests/basic_string_view/operators/char/2.cc: New file.
11926         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11927         * unittests/basic_string_view/range_access/char/1.cc: New file.
11928         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11929         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11930         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11931         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11932         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11933         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11934         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11935         * unittests/basic_string_view/typedefs.cc: New file.
11936         * unittests/basic_string_view/types/1.cc: New file.
11937
11938 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11939
11940         * common/gdb_string_view.h: Remove libstdc++ implementation
11941         details, adjust to gdb reality.
11942         * common/gdb_string_view.tcc: Likewise.
11943         * cli/cli-script.c (struct string_view): Remove.
11944         (user_args) <m_args>: Change element type to gdb::string_view.
11945         (user_args::insert_args): Adjust.
11946
11947 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11948
11949         * common/gdb_string_view.h: New file.
11950         * common/gdb_string_view.tcc: New file.
11951
11952 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11953
11954         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11955         * configure: Re-generate.
11956
11957 2018-04-09  Pedro Alves  <palves@redhat.com>
11958
11959         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11960         (set_target_gdbarch): Call
11961         gdb::observers::architecture_changed.notify instead of
11962         observer_notify_architecture_changed.
11963
11964 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11965
11966         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11967         (do_restore_current_traceframe_cleanup): Remove.
11968         (restore_current_traceframe_cleanup_dtor): Remove.
11969         (make_cleanup_restore_current_traceframe): Remove.
11970         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11971         New.
11972         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11973         * infrun.c (fetch_inferior_event): Use
11974         scoped_restore_current_traceframe.
11975
11976 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11977
11978         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11979         Remove.
11980         <n_allocated_type_units>: Remove.
11981         <all_type_units>: Change to std::vector.
11982         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11983         to std::vector change.
11984         (dwarf2_per_objfile::get_cutu): Likewise.
11985         (dwarf2_per_objfile::get_tu): Likewise.
11986         (create_signatured_type_table_from_index): Likewise.
11987         (create_signatured_type_table_from_debug_names): Likewise.
11988         (dw2_symtab_iter_next): Likewise.
11989         (dw2_print_stats): Likewise.
11990         (dw2_expand_all_symtabs): Likewise.
11991         (dw2_expand_marked_cus): Likewise.
11992         (dw2_debug_names_iterator::next): Likewise.
11993         (dwarf2_initialize_objfile): Likewise.
11994         (add_signatured_type_cu_to_table): Likewise.
11995         (create_all_type_units): Likewise.
11996         (add_type_unit): Likewise.
11997         (struct tu_abbrev_offset): Add constructor.
11998         (build_type_psymtabs_1): Adjust to std::vector change.
11999         (print_tu_stats): Likewise.
12000         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12001         (write_debug_names): Likewise.
12002
12003 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12004
12005         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12006         Make an std::vector.
12007         <n_comp_units>: Remove.
12008         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12009         to std::vector change.
12010         (dwarf2_per_objfile::get_cutu): Likewise.
12011         (dwarf2_per_objfile::get_cu): Likewise.
12012         (create_cus_from_index): Likewise.
12013         (create_addrmap_from_index): Likewise.
12014         (create_addrmap_from_aranges): Likewise.
12015         (dwarf2_read_index): Likewise.
12016         (dw2_find_last_source_symtab): Likewise.
12017         (dw2_map_symtabs_matching_filename): Likewise.
12018         (dw2_symtab_iter_next): Likewise.
12019         (dw2_print_stats): Likewise.
12020         (dw2_expand_all_symtabs): Likewise.
12021         (dw2_expand_symtabs_with_fullname): Likewise.
12022         (dw2_expand_marked_cus): Likewise.
12023         (dw2_map_symbol_filenames): Likewise.
12024         (create_cus_from_debug_names): Likewise.
12025         (dwarf2_read_debug_names): Likewise.
12026         (dw2_debug_names_iterator::next): Likewise.
12027         (dwarf2_initialize_objfile): Likewise.
12028         (set_partial_user): Likewise.
12029         (dwarf2_build_psymtabs_hard): Likewise.
12030         (read_comp_units_from_section): Remove arguments, adjust to
12031         std::vector change.
12032         (create_all_comp_units): Adjust to std::vector and
12033         read_comp_units_from_section changes.
12034         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12035         change.
12036         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12037         (psyms_seen_size): Likewise.
12038         (write_gdbindex): Likewise.
12039         (write_debug_names): Likewise.
12040
12041 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12042
12043         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12044         with dwarf2_per_objfile.
12045         (create_cus_from_index): Likewise.
12046         (create_signatured_type_table_from_index): Likewise.
12047         (dwarf2_read_index): Likewise.
12048         (dwarf2_initialize_objfile): Likewise.
12049         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12050         per_cu rather than get_dwarf2_per_objfile.
12051
12052 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12053
12054         * dwarf2read.h (struct signatured_type): Forward declare.
12055         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12056         New methods.
12057         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12058         (dw2_get_cutu): ...this.
12059         (dwarf2_per_objfile::get_cu): Rename from...
12060         (dw2_get_cu): ...this.
12061         (dwarf2_per_objfile::get_tu): New.
12062         (create_addrmap_from_index): Adjust.
12063         (create_addrmap_from_aranges): Adjust.
12064         (dw2_find_last_source_symtab): Adjust.
12065         (dw2_map_symtabs_matching_filename): Adjust.
12066         (dw2_symtab_iter_next): Adjust.
12067         (dw2_print_stats): Adjust.
12068         (dw2_expand_all_symtabs): Adjust.
12069         (dw2_expand_symtabs_with_fullname): Adjust.
12070         (dw2_expand_marked_cus): Adjust.
12071         (dw_expand_symtabs_matching_file_matcher): Adjust.
12072         (dw2_map_symbol_filenames): Adjust.
12073         (dw2_debug_names_iterator::next): Adjust.
12074         (dwarf2_initialize_objfile): Adjust.
12075         (set_partial_user): Adjust.
12076         (dwarf2_build_psymtabs_hard): Adjust.
12077
12078 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12079
12080         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12081         Remove unused variables.
12082         (dw2_map_symtabs_matching_filename): Likewise.
12083         (dwarf2_record_block_ranges): Likewise.
12084         (dwarf2_read_addr_index): Likewise.
12085         (follow_die_offset): Likewise.
12086
12087 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12088
12089         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12090         to symbol_file_add_main.
12091
12092 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12093
12094         PR mi/22299
12095         * mi/mi-console.c (do_fputc_async_safe): New.
12096         (mi_console_file::write_async_safe): New.
12097         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12098         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12099         New.
12100         * ui-file.c (ui_file::putstrn): Adjust call to
12101         fputstrn_unfiltered.
12102         * utils.c (printchar): Replace do_fputs and do_fprintf
12103         parameters by do_fputc.
12104         (fputstr_filtered): Adjust call to printchar.
12105         (fputstr_unfiltered): Likewise.
12106         (fputstrn_filtered): Likewise.
12107         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12108         printchar.
12109         * utils.h (do_fputc_ftype): New typedef.
12110         (fputstrn_unfiltered): Add do_fputc parameter.
12111
12112 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12113
12114         * regformats/i386/i386-avx.dat: Remove.
12115
12116 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12117
12118         PR gdb/22979
12119         * amd64-tdep.c (amd64_none_init_abi): New function.
12120         (amd64_x32_none_init_abi): New function.
12121         (_initialize_amd64_tdep): Register handlers for x86-64 and
12122         x64_32 with GDB_OSABI_NONE.
12123         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12124         GDB_OSABI_NONE osabi.
12125
12126 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12127
12128         PR gdb/22980
12129         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12130         GDB_OSABI_NONE.
12131         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12132         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12133
12134 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12135
12136         * common/byte-vector.h (char_vector): New type.
12137         * target.h (target_read_alloc): Return
12138         gdb::optional<byte_vector>.
12139         (target_read_stralloc): Return gdb::optional<char_vector>.
12140         (target_get_osdata): Return gdb::optional<char_vector>.
12141         * target.c (target_read_alloc_1): Templatize.  Replacement
12142         manual memory management with vector.
12143         (target_read_alloc): Change return type, adjust.
12144         (target_read_stralloc): Change return type, adjust.
12145         (target_get_osdata): Change return type, adjust.
12146         * auxv.c (struct auxv_info) <length>: Remove.
12147         <data>: Change type to gdb::optional<byte_vector>.
12148         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12149         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12150         (target_auxv_search): Adjust.
12151         (fprint_target_auxv): Adjust.
12152         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12153         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12154         (linux_make_corefile_notes): Adjust.
12155         * osdata.c (get_osdata): Adjust.
12156         * remote.c (remote_get_threads_with_qxfer): Adjust.
12157         (remote_memory_map): Adjust.
12158         (remote_traceframe_info): Adjust.
12159         (btrace_read_config): Adjust.
12160         (remote_read_btrace): Adjust.
12161         (remote_pid_to_exec_file): Adjust.
12162         * solib-aix.c (solib_aix_get_library_list): Adjust.
12163         * solib-dsbt.c (decode_loadmap): Don't free buf.
12164         (dsbt_get_initial_loadmaps): Adjust.
12165         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12166         * solib-target.c (solib_target_current_sos): Adjust.
12167         * tracepoint.c (sdata_make_value): Adjust.
12168         * xml-support.c (xinclude_start_include): Adjust.
12169         (xml_fetch_content_from_file): Adjust.
12170         * xml-support.h (xml_fetch_another): Change return type.
12171         (xml_fetch_content_from_file): Change return type.
12172         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12173         * xml-tdesc.c (file_read_description_xml): Adjust.
12174         (fetch_available_features_from_target): Change return type.
12175         (target_fetch_description_xml): Adjust.
12176         (target_read_description_xml): Adjust.
12177
12178 2018-04-06  Tom Tromey  <tom@tromey.com>
12179
12180         * value.c (~value): Update.
12181         (struct value) <contents>: Now unique_xmalloc_ptr.
12182         (value_contents_bits_eq, allocate_value_contents)
12183         (value_contents_raw, value_contents_all_raw)
12184         (value_contents_for_printing, value_contents_for_printing_const)
12185         (set_value_enclosing_type): Update.
12186
12187 2018-04-06  Tom Tromey  <tom@tromey.com>
12188
12189         * value.c (range_s): Remove typedef, VEC.
12190         (struct range): Add operator<.
12191         (range_lessthan): Remove.
12192         (ranges_contain): Change type.
12193         (~value): Update.
12194         (struct value) <unavailable, optimized_out>: Now std::vector.
12195         (value_entirely_available)
12196         (value_entirely_covered_by_range_vector)
12197         (value_entirely_unavailable, value_entirely_optimized_out):
12198         Update.
12199         (insert_into_bit_range_vector): Change argument type.
12200         (find_first_range_overlap): Likewise.
12201         (struct ranges_and_idx, value_contents_bits_eq)
12202         (require_not_optimized_out, require_available): Update.
12203         (ranges_copy_adjusted): Change argument types.
12204         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12205
12206 2018-04-06  Tom Tromey  <tom@tromey.com>
12207
12208         * value.c (~value): Update.
12209         (struct value) <parent>: Now a value_ref_ptr.
12210         (value_parent, set_value_parent, value_address, value_copy):
12211         Update.
12212
12213 2018-04-06  Tom Tromey  <tom@tromey.com>
12214
12215         * value.c (struct value): Add constructor, destructor, and member
12216         initializers.
12217         (allocate_value_lazy, value_decref): Update.
12218
12219 2018-04-06  Tom Tromey  <tom@tromey.com>
12220
12221         * value.c (struct value) <released, next>: Remove.
12222         (all_values): Now a std::vector.
12223         (allocate_value_lazy): Update.
12224         (value_next): Remove.
12225         (value_mark, value_free_to_mark, release_value)
12226         (value_release_to_mark): Update.
12227
12228 2018-04-06  Tom Tromey  <tom@tromey.com>
12229
12230         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12231         (free_value_chain): Remove.
12232         * value.c (free_value_chain): Remove.
12233         (value_release_to_mark): Return a std::vector.
12234         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12235         std::vector.
12236         (check_condition): Update.
12237         * eval.c (fetch_subexp_value): Change "val_chain" to a
12238         std::vector.
12239         * breakpoint.c (update_watchpoint): Update.
12240         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12241
12242 2018-04-06  Tom Tromey  <tom@tromey.com>
12243
12244         * value.h (free_all_values): Remove.
12245         * value.c (free_all_values): Remove.
12246
12247 2018-04-06  Tom Tromey  <tom@tromey.com>
12248
12249         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12250         (value_history_chain, value_history_count): Remove.
12251         (value_history): New global.
12252         (record_latest_value, access_value_history, show_values)
12253         (preserve_values): Update.
12254
12255 2018-04-06  Tom Tromey  <tom@tromey.com>
12256
12257         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12258         * varobj.c (varobj_set_display_format, varobj_set_value)
12259         (install_default_visualizer, construct_visualizer)
12260         (install_new_value, ~varobj, varobj_get_value_type)
12261         (my_value_of_variable, varobj_editable_p): Update.
12262         * c-varobj.c (c_describe_child, c_value_of_variable)
12263         (cplus_number_of_children, cplus_describe_child): Update.
12264         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12265         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12266         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12267
12268 2018-04-06  Tom Tromey  <tom@tromey.com>
12269
12270         * printcmd.c (last_examine_address): Change type to
12271         value_ref_ptr.
12272         (do_examine, x_command): Update.
12273
12274 2018-04-06  Tom Tromey  <tom@tromey.com>
12275
12276         * value.c (release_value): Update.
12277         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12278         (struct bpstats) <val>: Now a value_ref_ptr.
12279         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12280         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12281         (~watchpoint, print_it_watchpoint, watch_command_1)
12282         (invalidate_bp_value_on_memory_change): Update.
12283
12284 2018-04-06  Tom Tromey  <tom@tromey.com>
12285
12286         * varobj.c (varobj_clear_saved_item)
12287         (update_dynamic_varobj_children, install_new_value, ~varobj):
12288         Update.
12289         * value.h (value_incref): Move declaration earlier.
12290         (value_decref): Rename from value_free.
12291         (struct value_ref_policy): New.
12292         (value_ref_ptr): New typedef.
12293         (struct value_deleter): Remove.
12294         (gdb_value_up): Remove typedef.
12295         (release_value): Change return type.
12296         (release_value_or_incref): Remove.
12297         * value.c (set_value_parent): Update.
12298         (value_incref): Change return type.
12299         (value_decref): Rename from value_free.
12300         (value_free_to_mark, free_all_values, free_value_chain): Update.
12301         (release_value): Return value_ref_ptr.
12302         (release_value_or_incref): Remove.
12303         (record_latest_value, set_internalvar, clear_internalvar):
12304         Update.
12305         * stack.c (info_frame_command): Don't call value_free.
12306         * python/py-value.c (valpy_dealloc, valpy_new)
12307         (value_to_value_object): Update.
12308         * printcmd.c (do_examine): Update.
12309         * opencl-lang.c (lval_func_free_closure): Update.
12310         * mi/mi-main.c (register_changed_p): Don't call value_free.
12311         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12312         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12313         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12314         value_free.
12315         * guile/scm-value.c (vlscm_free_value_smob)
12316         (vlscm_scm_from_value): Update.
12317         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12318         (frame_unwind_register_unsigned, get_frame_register_bytes)
12319         (put_frame_register_bytes): Don't call value_free.
12320         * findvar.c (address_from_register): Don't call value_free.
12321         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12322         * dwarf2loc.c (entry_data_value_free_closure)
12323         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12324         (dwarf2_evaluate_loc_desc_full): Update.
12325         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12326         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12327         (~watchpoint, watch_command_1)
12328         (invalidate_bp_value_on_memory_change): Update.
12329         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12330
12331 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12332
12333         PR gdb/23022
12334         * warning.m4: Add -Wno-error=deprecated-register.
12335         * configure: Re-generate.
12336
12337 2018-04-05  Tom Tromey  <tom@tromey.com>
12338
12339         * linespec.h: Remove include of "vec.h".
12340
12341 2018-04-05  Tom Tromey  <tom@tromey.com>
12342
12343         * linespec.c (typep): Remove typedef.
12344         (find_methods, find_superclass_methods): Take a std::vector.
12345         (find_method): Use std::vector.
12346
12347 2018-04-05  Tom Tromey  <tom@tromey.com>
12348
12349         * utils.c (compare_strings): Remove.
12350         * utils.h (compare_strings): Remove.
12351         * objc-lang.h (find_imps): Update.
12352         * objc-lang.c (find_methods): Take a std::vector.
12353         (uniquify_strings, find_imps): Likewise.
12354         * linespec.c (find_methods): Take a std::vector.
12355         (decode_objc): Use std::vector.
12356         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12357         a std::vector.
12358         (find_method, find_function_symbols): Use std::vector.
12359
12360 2018-04-05  Tom Tromey  <tom@tromey.com>
12361
12362         * completer.c (completion_tracker::completion_tracker): Remove
12363         cast.
12364         (completion_tracker::discard_completions): Likewise.
12365         * breakpoint.c (ambiguous_names_p): Remove cast.
12366         * ada-lang.c (_initialize_ada_language): Remove cast.
12367         * utils.h (streq): Update.
12368         (streq_hash): Add new declaration.
12369         * utils.c (streq): Return bool.
12370         (streq_hash): New function.
12371
12372 2018-04-05  Tom Tromey  <tom@tromey.com>
12373
12374         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12375         Remove a string copy.
12376
12377 2018-04-05  Tom Tromey  <tom@tromey.com>
12378
12379         * linespec.c (filter_results): Use std::vector.
12380         (decode_line_2, decode_line_full): Update.
12381
12382 2018-04-05  Tom Tromey  <tom@tromey.com>
12383
12384         * linespec.c (canonical_to_fullform): Return std::string.
12385         (filter_results): Update.
12386         (struct decode_line_2_item): Add constructor.
12387         <fullform, displayform>: Now std::string.
12388         (decode_line_2_compare_items): Now a std::sort comparator.
12389         (decode_line_2): Update.
12390
12391 2018-04-05  Tom Tromey  <tom@tromey.com>
12392
12393         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12394         (unexpected_linespec_error): Update.
12395         (linespec_parse_basic, parse_linespec): Update.
12396
12397 2018-04-05  Tom Tromey  <tom@tromey.com>
12398
12399         * linespec.c (linespec_parse_basic): Reindent.
12400
12401 2018-04-05  Tom Tromey  <tom@tromey.com>
12402
12403         * minsyms.h (iterate_over_minimal_symbols): Update.
12404         * minsyms.c (iterate_over_minimal_symbols): Take a
12405         gdb::function_view.
12406         * linespec.c (struct collect_minsyms): Remove.
12407         (compare_msyms): Now a std::sort comparator.
12408         (add_minsym): Add parameters.
12409         (search_minsyms_for_name): Update.  Use std::vector.
12410
12411 2018-04-03  Tom Tromey  <tom@tromey.com>
12412
12413         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12414         gdb::byte_vector.
12415
12416 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12417
12418         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12419
12420 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12421
12422         PR gdb/16959
12423         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12424         printing static type.
12425
12426 2018-04-01  Tom Tromey  <tom@tromey.com>
12427
12428         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12429         (rs6000_xfer_shared_libraries): Update.
12430
12431 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12432
12433         * common/gdb_vecs.h (char_ptr): Remove.
12434         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12435
12436 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12437
12438         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12439         with std::vector.
12440         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12441
12442 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12443
12444         * tracepoint.h (struct uploaded_tp): Initialize fields.
12445         <actions, step_actions, cmd_strings>: Change type to
12446         std::vector<char *>.
12447         * tracepoint.c (get_uploaded_tp): Allocate with new.
12448         (free_uploaded_tps): Free with delete.
12449         (parse_tracepoint_definition): Adjust to std::vector change.
12450         * breakpoint.c (read_uploaded_action): Likewise.
12451         (create_tracepoint_from_upload): Likewise.
12452         * ctf.c (ctf_write_uploaded_tp): Likewise.
12453         (SET_ARRAY_FIELD): Likewise.
12454         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12455
12456 2018-03-30  Tom Tromey  <tom@tromey.com>
12457
12458         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12459         std::unique_ptr.
12460         (svr4_keep_data_in_core): Update.
12461         (svr4_read_so_list): Update.
12462
12463 2018-03-30  Tom Tromey  <tom@tromey.com>
12464
12465         * windows-nat.c (handle_output_debug_string, handle_exception):
12466         Update.
12467         * target.h (target_read_string): Update.
12468         * target.c (target_read_string): Change "string" to
12469         unique_xmalloc_ptr.
12470         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12471         Update.
12472         * solib-frv.c (frv_current_sos): Update.
12473         * solib-dsbt.c (dsbt_current_sos): Update.
12474         * solib-darwin.c (darwin_current_sos): Update.
12475         * linux-thread-db.c (inferior_has_bug): Update.
12476         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12477         Update.  Remove alloca.
12478         * ada-lang.c (ada_main_name): Update.
12479
12480 2018-03-30  Tom Tromey  <tom@tromey.com>
12481
12482         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12483         (struct dwo_file_deleter): New.
12484         (dwo_file_up): New typedef.
12485         (open_and_init_dwo_file): Use dwo_file_up.
12486         (free_dwo_file_cleanup): Remove.
12487
12488 2018-03-30  Tom Tromey  <tom@tromey.com>
12489
12490         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12491         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12492
12493 2018-03-30  Tom Tromey  <tom@tromey.com>
12494
12495         * dwarf2read.c (class free_cached_comp_units): New class.
12496         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12497         (free_cached_comp_units): Remove function.
12498
12499 2018-03-30  Tom Tromey  <tom@tromey.com>
12500
12501         * utils.h (make_cleanup_unpush_target): Remove.
12502         * inf-ptrace.c (struct target_unpusher): New.
12503         (target_unpush_up) New typedef.
12504         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12505         target_unpush_up.
12506         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12507
12508 2018-03-27  Tom Tromey  <tom@tromey.com>
12509
12510         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12511
12512 2018-03-27  Pedro Alves  <palves@redhat.com>
12513             Tom Tromey  <tom@tromey.com>
12514
12515         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12516         destructor.  Now a class.
12517         (gdb_readline_wrapper_cleanup): Remove function.
12518         (gdb_readline_wrapper): Remove cleanups.
12519
12520 2018-03-27  Tom Tromey  <tom@tromey.com>
12521
12522         * typeprint.h (struct type_print_options) <local_typedefs,
12523         global_typedefs>: Remove "struct" keyword.
12524         (class typedef_hash_table): New class.
12525         (recursively_update_typedef_hash, add_template_parameters)
12526         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12527         (find_typedef_in_hash): Don't declare.
12528         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12529         (typedef_hash_table::recursively_update): Rename from
12530         recursively_update_typedef_hash.  Now a member.
12531         (typedef_hash_table::add_template_parameters): Rename from
12532         add_template_parameters.  Now a member.
12533         (typedef_hash_table::typedef_hash_table): Now a constructor;
12534         rename from create_typedef_hash.
12535         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12536         rename from free_typedef_hash.
12537         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12538         (do_free_global_table): Remove.
12539         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12540         from copy_type_recursive.
12541         (create_global_typedef_table): Remove.
12542         (typedef_hash_table::find_global_typedef): Now a member of
12543         typedef_hash_table.
12544         (typedef_hash_table::find_typedef): Rename from
12545         find_typedef_in_hash; now a member.
12546         (whatis_exp): Update.
12547         * extension.h (struct ext_lang_type_printers): Add constructor and
12548         destructor.
12549         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12550         declare.
12551         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12552         Now a constructor; rename from start_ext_lang_type_printers.
12553         (ext_lang_type_printers): Now a destructor; rename from
12554         free_ext_lang_type_printers.
12555         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12556         Update.
12557         (c_type_print_base_struct_union): Update.  Remove cleanups.
12558
12559 2018-03-27  Tom Tromey  <tom@tromey.com>
12560
12561         * dwarf-index-write.c: Include <cmath>.
12562
12563 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12564
12565         * NEWS: Add entry describing new "set|show varsize-limit" command.
12566         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12567         command.
12568         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12569         "set variable".
12570
12571 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12572
12573         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12574         dwarf-index-write.c
12575         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12576         * dwarf-index-common.c: New file.
12577         * dwarf-index-common.h: New file.
12578         * dwarf-index-write.c: New file.
12579         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12580         (struct dwarf2_section_info): Move from here.
12581         (dwarf2_section_info_def): Likewise.
12582         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12583         (offset_type): Likewise.
12584         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12585         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12586         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12587         (byte_swap): Likewise.
12588         (MAYBE_SWAP): Likewise.
12589         (dwarf2_per_cu_ptr): Likewise.
12590         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12591         (struct tu_stats): Likewise.
12592         (struct dwarf2_per_objfile): Likewise.
12593         (struct dwarf2_per_cu_data): Likewise.
12594         (struct signatured_type): Likewise.
12595         (sig_type_ptr): Likewise.
12596         (DEF_VEC_P (sig_type_ptr)): Likewise.
12597         (INDEX4_SUFFIX): Likewise.
12598         (INDEX5_SUFFIX): Likewise.
12599         (DEBUG_STR_SUFFIX): Likewise.
12600         (dwarf2_read_section): Make non-static.
12601         (mapped_index_string_hash): Move from here.
12602         (dwarf5_djb_hash): Likewise.
12603         (file_write): Likewise.
12604         (class data_buf): Likewise.
12605         (struct symtab_index_entry): Likewise.
12606         (struct mapped_symtab): Likewise.
12607         (find_slot): Likewise.
12608         (hash_expand): Likewise.
12609         (add_index_entry): Likewise.
12610         (uniquify_cu_indices): Likewise.
12611         (class c_str_view): Likewise.
12612         (class c_str_view_hasher): Likewise.
12613         (class vector_hasher): Likewise.
12614         (write_hash_table): Likewise.
12615         (psym_index_map): Likewise.
12616         (struct addrmap_index_data): Likewise.
12617         (add_address_entry): Likewise.
12618         (add_address_entry_worker): Likewise.
12619         (write_address_map): Likewise.
12620         (symbol_kind): Likewise.
12621         (write_psymbols): Likewise.
12622         (struct signatured_type_index_data): Likewise.
12623         (write_one_signatured_type): Likewise.
12624         (recursively_count_psymbols): Likewise.
12625         (recursively_write_psymbols): Likewise.
12626         (class debug_names): Likewise.
12627         (check_dwarf64_offsets): Likewise.
12628         (psyms_seen_size): Likewise.
12629         (write_gdbindex): Likewise.
12630         (write_debug_names): Likewise.
12631         (assert_file_size): Likewise.
12632         (write_psymtabs_to_index): Likewise.
12633         (save_gdb_index_command): Likewise.
12634         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12635         command.
12636         * dwarf2read.h: New file.
12637
12638 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12639
12640         PR gdb/22670
12641         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12642         symbol name if the CU's language stores symbol names in linkage
12643         format.
12644         * language.h (struct language_defn)
12645         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12646         all instances of this struct.
12647
12648 2018-03-26  Tom Tromey  <tom@tromey.com>
12649
12650         * stack.c (backtrace_command_1): Remove verbose code.
12651
12652 2018-03-26  Tom Tromey  <tom@tromey.com>
12653
12654         * python/py-framefilter.c (py_print_type): Don't catch
12655         exceptions.  Return void.
12656         (py_print_value): Likewise.
12657         (py_print_single_arg): Likewise.
12658         (enumerate_args): Don't catch exceptions.
12659         (py_print_args): Likewise.
12660         (py_print_frame): Likewise.
12661         (gdbpy_apply_frame_filter): Catch exceptions here.
12662
12663 2018-03-26  Tom Tromey  <tom@tromey.com>
12664
12665         * stack.c (_initialize_stack): Remove trailing newlines from help
12666         text.  Add "Usage" line to "backtrace" help.
12667
12668 2018-03-26  Tom Tromey  <tom@tromey.com>
12669
12670         PR python/16486:
12671         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12672
12673 2018-03-26  Tom Tromey  <tom@tromey.com>
12674
12675         * python/py-framefilter.c (py_print_single_arg): Return
12676         EXT_LANG_BT_ERROR from catch.
12677
12678 2018-03-26  Tom Tromey  <tom@tromey.com>
12679
12680         PR backtrace/15584:
12681         * stack.c (backtrace_command_1): Move some code into no-filters
12682         "if".
12683
12684 2018-03-26  Tom Tromey  <tom@tromey.com>
12685
12686         * python/py-framefilter.c (throw_quit_or_print_exception): New
12687         function.
12688         (gdbpy_apply_frame_filter): Use it.
12689
12690 2018-03-26  Tom Tromey  <tom@tromey.com>
12691
12692         PR cli/17716:
12693         * python/py-framefilter.c (py_print_type, py_print_value)
12694         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12695         RETURN_MASK_ERROR.
12696
12697 2018-03-26  Tom Tromey  <tom@tromey.com>
12698
12699         * python/py-framefilter.c (enumerate_args): Use
12700         gdb::unique_xmalloc_ptr.
12701
12702 2018-03-26  Tom Tromey  <tom@tromey.com>
12703
12704         * python/py-framefilter.c (py_print_frame): Return
12705         EXT_LANG_BT_OK.
12706         (gdbpy_apply_frame_filter): Update comment.
12707         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12708         Remove.
12709         <EXT_LANG_BT_NO_FILTERS>: Change value.
12710
12711 2018-03-26  Tom Tromey  <tom@tromey.com>
12712
12713         PR backtrace/15582:
12714         * stack.c (backtrace_command): Parse "hide" argument.
12715         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12716         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12717         constant.
12718
12719 2018-03-26  Tom Tromey  <tom@tromey.com>
12720
12721         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12722         add "flags".
12723         (backtrace_command): Remove "fulltrace", add "flags".
12724
12725 2018-03-26  Tom Tromey  <tom@tromey.com>
12726
12727         * stack.c (backtrace_command): Rewrite command line parsing.
12728
12729 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12730
12731         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12732
12733 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12734
12735         * filename-seen-cache.h: Add include guard.
12736
12737 2018-03-26  Keith Seitz  <keiths@redhat.com>
12738
12739         * symfile.c (place_section): Remove "struct" from section_addr_info
12740         in comment.
12741         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12742         "struct" keyword from section_addr_info.
12743
12744 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12745
12746         * regformats/regdef.h (reg): Add constructors.
12747
12748 2018-03-25  Pedro Alves  <palves@redhat.com>
12749
12750         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12751         if then/else bodies in var_func_name extraction.
12752
12753 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12754
12755         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12756         lookup_minimal_symbol() to find symbol entry.
12757         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12758
12759 2018-03-23  Keith Seitz  <keiths@redhat.com>
12760
12761         PR c++/22968
12762         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12763         nested type definitions for C++, too.
12764
12765 2018-03-23  Tom Tromey  <tom@tromey.com>
12766
12767         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12768         a typedef.
12769         (macho_register_oso): Remove.
12770         (macho_symtab_read): Take a std::vector.
12771         (oso_el_compare_name): Now a std::sort comparator.
12772         (macho_symfile_read_all_oso): Take a std::vector.
12773         (macho_symfile_read): Use std::vector.  Remove cleanups.
12774
12775 2018-03-22  Tom Tromey  <tom@tromey.com>
12776
12777         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12778         (record_full_goto_bookmark): Use std::string.
12779
12780 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12781
12782         PR tdep/18295
12783         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12784         a single mask.
12785
12786 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12787
12788         * rs6000-tdep.c (store_insn_p): New function.
12789         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12790         and cr_reg to their unshifted values. Use store_insn_p to
12791         match LR saves using either R1 or fdata->alloca_reg. Use
12792         store_insn_p to match CR saves. Set alloca_reg_offset
12793         when alloca_reg and framep are set. Remove lr_reg shift
12794         when assigning to fdata->lr_register.
12795
12796 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12797
12798         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12799         command line args instead of emitting a warning.
12800
12801 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12802
12803         * tracepoint.h (struct static_tracepoint_marker): Initialize
12804         fields, define default constructor, move constructor and move
12805         assignment, disable the rest.
12806         <str_id, extra>: Make std::string.
12807         (release_static_tracepoint_marker): Remove.
12808         (free_current_marker): Remove.
12809         * tracepoint.c (free_current_marker): Remove.
12810         (parse_static_tracepoint_marker_definition): Adjust to
12811         std::string, use new hex2str overload.
12812         (release_static_tracepoint_marker): Remove.
12813         (print_one_static_tracepoint_marker): Get marker by reference
12814         and adjust to std::string.
12815         (info_static_tracepoint_markers_command): Adjust to std::vector
12816         changes
12817         * target.h (static_tracepoint_marker_p): Remove typedef.
12818         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12819         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12820         bool.
12821         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12822         * target-debug.h
12823         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12824         (target_debug_print_std_vector_static_tracepoint_marker): New.
12825         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12826         to...
12827         (target_debug_print_static_tracepoint_marker_p): ... this.
12828         * target-delegates.c: Re-generate.
12829         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12830         Make std::string.
12831         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12832         (decode_static_tracepoint_spec): Adjust to std::vector.
12833         (tracepoint_print_one_detail): Adjust to std::string.
12834         (strace_marker_decode_location): Adjust to std::string.
12835         (update_static_tracepoint): Adjust to std::string, remove call
12836         to release_static_tracepoint_marker.
12837         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12838         Adjust to std::vector.
12839         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12840         (remote_static_tracepoint_markers_by_strid): Adjust to
12841         std::vector.
12842         * common/rsp-low.h (hex2str): New overload with explicit count
12843         of bytes.
12844         * common/rsp-low.c (hex2str): New overload with explicit count
12845         of bytes.
12846         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12847         (_initialize_rsp_low_selftests): Add test_hex2str test.
12848         * unittests/tracepoint-selftests.c
12849         (test_parse_static_tracepoint_marker_definition): Adjust to
12850         std::string.
12851
12852 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12853
12854         * tracepoint.c (parse_static_tracepoint_marker_definition):
12855         Consider case where the definition is followed by more
12856         definitions.
12857         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12858         tracepoint-selftests.c.
12859         * unittests/tracepoint-selftests.c: New.
12860
12861 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12862
12863         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12864         Carvalho.
12865
12866 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12867
12868         * symtab.c (find_pc_sect_line): fixed indentation.
12869
12870 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12871
12872         * symtab.c (find_pc_sect_line): now uses binary search.
12873
12874 2018-03-19  Tom Tromey  <tom@tromey.com>
12875
12876         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12877         "IDENT" production.
12878
12879 2018-03-19  Pedro Alves  <palves@redhat.com>
12880             Tom Tromey  <tom@tromey.com>
12881
12882         * unittests/observable-selftests.c: New file.
12883         * common/observable.h: New file.
12884         * observable.h: New file.
12885         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12886         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12887         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12888         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12889         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12890         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12891         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12892         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12893         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12894         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12895         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12896         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12897         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12898         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12899         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12900         tui/tui-interp.c, valops.c: Update all users.
12901         * tui/tui-hooks.c (tui_bp_created_observer)
12902         (tui_bp_deleted_observer, tui_bp_modified_observer)
12903         (tui_inferior_exit_observer, tui_before_prompt_observer)
12904         (tui_normal_stop_observer, tui_register_changed_observer):
12905         Remove.
12906         (tui_observers_token): New global.
12907         (attach_or_detach, tui_attach_detach_observers): New functions.
12908         (tui_install_hooks, tui_remove_hooks): Use
12909         tui_attach_detach_observers.
12910         * record-btrace.c (record_btrace_thread_observer): Remove.
12911         (record_btrace_thread_observer_token): New global.
12912         * observer.sh: Remove.
12913         * observer.c: Rename to observable.c.
12914         * observable.c (namespace gdb_observers): Define new objects.
12915         (observer_debug): Move into gdb_observers namespace.
12916         (struct observer, struct observer_list, xalloc_observer_list_node)
12917         (xfree_observer_list_node, generic_observer_attach)
12918         (generic_observer_detach, generic_observer_notify): Remove.
12919         (_initialize_observer): Update.
12920         Don't include observer.inc.
12921         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12922         (clean mostlyclean): Likewise.
12923         (observer.h, observer.inc): Remove targets.
12924         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12925         (COMMON_SFILES): Use observable.c, not observer.c.
12926         * .gitignore: Remove observer.h.
12927
12928 2018-03-18  Tom Tromey  <tom@tromey.com>
12929
12930         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12931         gdb::def_vector.
12932         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12933
12934 2018-03-17  Tom Tromey  <tom@tromey.com>
12935
12936         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12937
12938 2018-03-17  Tom Tromey  <tom@tromey.com>
12939
12940         * target.c (class scoped_target_fd): New.
12941         (target_fileio_close_cleanup): Remove.
12942         (target_fileio_read_alloc_1): Use scoped_target_fd.
12943
12944 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12945
12946         * silent-rules.mk: New.
12947         * Makefile.in: Include silent-rules.mk
12948         (srcdir, VPATH, top_srcdir): Move up.
12949         (COMPILE): Add ECHO_CXX.
12950         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12951         (init.c): Add ECHO_INIT_C.
12952         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12953         (version.c): Add ECHO_GEN.
12954         (printcmd.o): Add ECHO_CXX.
12955         (target-float.o): Add ECHO_CXX.
12956         (ada-exp.o): Add ECHO_CXX.
12957         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12958         (insight$(EXEEXT)): Add ECHO_CXXLD.
12959         * gnulib/configure.ac: Add AM_SILENT_RULES.
12960         * gnulib/aclocal.m4: Re-generate.
12961         * gnulib/configure: Re-generate.
12962         * gnulib/import/Makefile.in: Re-generate.
12963
12964 2018-03-16  Tom Tromey  <tom@tromey.com>
12965
12966         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12967         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12968         * utils.c (do_free_section_addr_info)
12969         (make_cleanup_free_section_addr_info): Remove.
12970         * symfile.h (struct other_sections): Add constructor.
12971         (struct section_addr_info): Remove.
12972         (section_addr_info): New typedef.
12973         (struct sym_fns) <sym_offsets>: Change type of parameter.
12974         (build_section_addr_info_from_objfile)
12975         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12976         (default_symfile_offsets, symbol_file_add)
12977         (symbol_file_add_from_bfd)
12978         (build_section_addr_info_from_section_table): Update.
12979         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12980         * symfile.c (alloc_section_addr_info): Remove.
12981         (build_section_addr_info_from_section_table): Change return type.
12982         Update.
12983         (build_section_addr_info_from_bfd)
12984         (build_section_addr_info_from_objfile): Likewise.
12985         (free_section_addr_info): Remove.
12986         (relative_addr_info_to_section_offsets): Change type of "addrs".
12987         (addrs_section_compar): Now a std::sort comparator.
12988         (addrs_section_sort): Change return type.
12989         (addr_info_make_relative): Change type of "addrs".  Update.
12990         (default_symfile_offsets, syms_from_objfile_1)
12991         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12992         (symbol_file_add_separate): Update.
12993         (symbol_file_add): Change type of "addrs".  Update.
12994         (add_symbol_file_command): Update.  Remove cleanups.
12995         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12996         cleanups.
12997         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12998         * solib.c (solib_read_symbols): Update.
12999         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13000         * machoread.c (macho_symfile_offsets): Update.
13001         * jit.c (jit_bfd_try_read_symtab): Update.
13002
13003 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13004
13005         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13006         unittests/utils-selftests.c.
13007         * unittests/utils-selftests.c: New file.
13008
13009 2018-03-14  Tom Tromey  <tom@tromey.com>
13010
13011         PR cli/14977:
13012         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13013         for NULL.
13014
13015 2018-03-14  Tom Tromey  <tom@tromey.com>
13016
13017         PR cli/19918:
13018         * printcmd.c (printf_pointer): Allow "-" in format.
13019
13020 2018-03-14  Tom Tromey  <tom@tromey.com>
13021
13022         * printcmd.c (_initialize_printcmd): Add usage to printf.
13023
13024 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13025
13026         * MAINTAINERS: Update my email address.
13027
13028 2018-03-13  Tom Tromey  <tom@tromey.com>
13029
13030         * machoread.c (macho_check_dsym): Change filenamep to a
13031         std::string*.
13032         (macho_symfile_read): Update.
13033         * symfile.c (load_command): Use std::string.
13034
13035 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13036
13037         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13038         to error message string.
13039         (riscv_register_name): Use xsnprintf instead of sprintf.
13040         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13041         internal_error.
13042         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13043         error.
13044         (riscv_push_dummy_call): Likewise.
13045
13046 2018-03-12  Tom Tromey  <tom@tromey.com>
13047
13048         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13049         Use gdb::byte_vector.
13050         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13051
13052 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13053
13054         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13055         parameter type to readable_regcache.
13056         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13057         the declaration.
13058
13059 2018-03-11  Tom Tromey  <tom@tromey.com>
13060
13061         * dwarf2read.c (struct nextfield): Add initializers.
13062         (struct nextfnfield): Remove.
13063         (struct fnfieldlist): Add initializers.  Remove "length" and
13064         "head", use std::vector.
13065         (struct decl_field_list): Remove.
13066         (struct field_info): Add initializers.
13067         <fields, baseclasses>: Now std::vector.
13068         <nbaseclasses, nfnfields, typedef_field_list_count,
13069         nested_types_list_count>: Remove.
13070         (dwarf2_add_field, dwarf2_add_type_defn)
13071         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13072         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13073         (process_structure_scope): Update.
13074
13075 2018-03-11  Tom Tromey  <tom@tromey.com>
13076
13077         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13078         for use by std::sort.
13079         (build_type_psymtabs_1): Use std::vector.
13080
13081 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13082
13083         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13084         and LIBMPFR in the printed configuration.
13085
13086 2018-03-08  Tom Tromey  <tom@tromey.com>
13087
13088         * source.c (get_filename_and_charpos): Use scoped_fd.
13089         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13090         (procfs_pidlist): Likewise.
13091         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13092         (iterate_over_mappings): Likewise.
13093
13094 2018-03-08  Tom Tromey  <tom@tromey.com>
13095
13096         * infcall.c (struct call_return_meta_info)
13097         <stack_temporaries_enabled>: Remove.
13098         (get_call_return_value, call_function_by_hand_dummy): Update.
13099         * thread.c (disable_thread_stack_temporaries): Remove.
13100         (enable_thread_stack_temporaries): Remove.
13101         (thread_stack_temporaries_enabled_p): Return bool.
13102         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13103         (get_last_thread_stack_temporary): Update.
13104         * eval.c (evaluate_subexp): Update.
13105         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13106         class, not a function.
13107         (value_ptr, value_vec): Remove typedefs.
13108         (class thread_info) <stack_temporaries_enabled>: Now bool.
13109         <stack_temporaries>: Now a std::vector.
13110         (thread_stack_temporaries_enabled_p)
13111         (value_in_thread_stack_temporaries): Return bool.
13112
13113 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13114
13115         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13116         (getpkt_or_notif_sane_1): Likewise.
13117
13118 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13119
13120         * build-id.c (build_id_to_debug_bfd): Use std::string.
13121
13122 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13123
13124         * build-id.c (find_separate_debug_file_by_buildid): Return
13125         std::string.
13126         * build-id.h (find_separate_debug_file_by_buildid): Return
13127         std::string.
13128         * coffread.c (coff_symfile_read): Adjust to std::string.
13129         * elfread.c (elf_symfile_read): Adjust to std::string.
13130         * symfile.c (separate_debug_file_exists): Change parameter to
13131         std::string.
13132         (find_separate_debug_file): Return std::string.
13133         (find_separate_debug_file_by_debuglink): Return std::string.
13134         * symfile.h (find_separate_debug_file_by_debuglink): Return
13135         std::string.
13136
13137 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13138
13139         * common/xml-utils.c (xml_escape_text): Move code to...
13140         (xml_escape_text_append): ... this new function.
13141         * common/xml-utils.h (xml_escape_text_append): New declaration.
13142         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13143         New function.
13144         (_initialize_xml_utils): register test_xml_escape_text_append as
13145         a selftest.
13146
13147 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13148
13149         * defs.h: Remove MAX_REGISTER_SIZE.
13150         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13151         asserts.
13152         * python/py-unwind.c (pyuw_sniffer): Likewise.
13153
13154 2018-03-07  Tom Tromey  <tom@tromey.com>
13155
13156         * linux-tdep.c (linux_info_proc): Update.
13157         * target.h (struct target_ops) <to_fileio_readlink>: Return
13158         optional<string>.
13159         (target_fileio_readlink): Return optional<string>.
13160         * remote.c (remote_hostio_readlink): Return optional<string>.
13161         * inf-child.c (inf_child_fileio_readlink): Return
13162         optional<string>.
13163         * target.c (target_fileio_readlink): Return optional<string>.
13164
13165 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13166
13167         * regcache.c (cooked_read_test): Add riscv to the list of
13168         architectures that have a save_reggroup.
13169
13170 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13171
13172         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13173         value is not a dynamic class object.
13174
13175 2018-03-06  Tom Tromey  <tom@tromey.com>
13176
13177         * rust-exp.y: Formatting fixes.
13178
13179 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13180
13181         * riscv-tdep.c (riscv_register_name): Remove target description
13182         support.
13183         (riscv_gdbarch_init): Remove target description check.
13184
13185 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13186
13187         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13188         comment.
13189         * riscv-tdep.h: Likewise.
13190
13191 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13192
13193         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13194         (riscv_pseudo_register_write): Delete.
13195         (riscv_gdbarch_init): Remove all use of pseudo registers.
13196
13197 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13198
13199         * record-btrace.c (btrace_print_lines): Replace cleanup
13200         parameter with RAII equivalents.
13201         (btrace_insn_history): Replace cleanup with RAII equivalents.
13202         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13203         make_cleanup_ui_out_tuple_begin_end): Remove.
13204         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13205         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13206         make_cleanup_ui_out_list_begin_end): Remove.
13207
13208 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13209
13210         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13211         parameter types to std::vector.  Use bool.
13212         (record_btrace_wait): Replace VEC(tp_t) with
13213         std::vector<thread_info *>.
13214         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13215
13216 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13217
13218         * record-btrace.c (record_btrace_disable_callback): Remove.
13219         (struct scoped_btrace_disable): New.
13220         (record_btrace_open): Use scoped_btrace_disable.
13221
13222 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13223
13224         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13225         reading values from registers.
13226
13227 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13228
13229         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13230         where appropriate.
13231
13232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13233
13234         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13235         change parameter type.  Use GDB's print functions, and use
13236         core_addr_to_string where appropriate.
13237         (riscv_push_dummy_call): Use core_addr_to_string where
13238         appropriate, update call to riscv_print_arg_location, and reindent
13239         a few lines.
13240         (riscv_return_value): Update call to riscv_print_arg_location.
13241
13242 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13243             Tim Newsome <tim@sifive.com>
13244             Albert Ou <a0u@eecs.berkeley.edu>
13245             Darius Rad <darius@bluespec.com>
13246
13247         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13248         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13249         (ALLDEPFILES): Add riscv-tdep.c
13250         * configure.tgt: Add riscv support.
13251         * riscv-tdep.c: New file.
13252         * riscv-tdep.h: New file.
13253         * NEWS: Mention new target.
13254         * MAINTAINERS: Add entry for riscv.
13255
13256 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13257
13258         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13259         fields within aggregates.
13260
13261 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13262
13263         * record-btrace.c (btrace_print_lines): Change type of flags to
13264         gdb_disassembly_flags.
13265
13266 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13267
13268         * fbsd-nat.c: Include "inf-ptrace.h".
13269         (USE_SIGTRAP_SIGINFO): Conditionally define.
13270         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13271         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13272         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13273         function.
13274         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13275         Likewise.
13276         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13277         Likewise.
13278         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13279         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13280         "supports_stopped_by_hw_breakpoint" target methods.
13281
13282 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13283
13284         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13285         * fbsd-nat.c (debug_fbsd_nat): New variable.
13286         (show_fbsd_nat_debug): New function.
13287         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13288         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13289
13290 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13291
13292         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13293         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13294         prototype.
13295         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13296         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13297         method.
13298
13299 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13300
13301         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13302         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13303
13304 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13305
13306         * charset.c (struct charset_vector): New.
13307         (charsets): Change type to charset_vector.
13308         (find_charset_names): Adjust.
13309         (add_one): Adjust.
13310         (_initialize_charset): Adjust.
13311
13312 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13313
13314         * progspace.h (struct program_space) <deleted_solibs>: Change
13315         type to std::vector<std::string>.
13316         * progspace.c (clear_program_space_solib_cache): Adjust.
13317         * breakpoint.c (print_solib_event): Adjust.
13318         (check_status_catch_solib): Adjust.
13319         * solib.c (update_solib_list): Adjust.
13320         * ui-out.h (class ui_out) <field_string>: New overload.
13321         * ui-out.c (ui_out::field_string): New overload.
13322
13323 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13324
13325         * progspace.h (struct program_space): Add constructor and
13326         destructor, initialize fields.
13327         (add_program_space): Remove.
13328         * progspace.c (add_program_space): Rename to...
13329         (program_space::program_space): ... this.
13330         (release_program_space): Rename to...
13331         (program_space::~program_space): ... this.
13332         (delete_program_space): Use delete to delete program_space.
13333         (initialize_progspace): Use new to allocate program_space.
13334         * inferior.c (add_inferior_with_spaces): Likewise.
13335         (clone_inferior_command): Likewise.
13336         * infrun.c (follow_fork_inferior): Likewise.
13337         (handle_vfork_child_exec_or_exit): Likewise.
13338
13339 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13340
13341         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13342         (delim_string_to_char_ptr_vec): Return std::vector of
13343         gdb::unique_xmalloc_ptr.
13344         (dirnames_to_char_ptr_vec_append): Take std::vector of
13345         gdb::unique_xmalloc_ptr.
13346         (dirnames_to_char_ptr_vec): Return std::vector of
13347         gdb::unique_xmalloc_ptr.
13348         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13349         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13350         (delim_string_to_char_ptr_vec): Return an std::vector of
13351         gdb::unique_xmalloc_ptr, adjust the code.
13352         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13353         gdb::unique_xmalloc_ptr, adjust the code.
13354         (dirnames_to_char_ptr_vec): Return an std::vector of
13355         gdb::unique_xmalloc_ptr, adjust the code.
13356         * auto-load.c (auto_load_safe_path_vec): Change type to
13357         std::vector of gdb::unique_xmalloc_ptr.
13358         (auto_load_expand_dir_vars): Return an std::vector of
13359         gdb::unique_xmalloc_ptr, adjust the code.
13360         (auto_load_safe_path_vec_update): Adjust.
13361         (filename_is_in_auto_load_safe_path_vec): Adjust.
13362         (auto_load_objfile_script_1): Adjust.
13363         * build-id.c (build_id_to_debug_bfd): Adjust.
13364         * linux-thread-db.c (thread_db_load_search): Adjust.
13365         * source.c (add_path): Adjust.
13366         (openp): Adjust.
13367         * symfile.c (find_separate_debug_file): Adjust.
13368         * utils.c (do_free_char_ptr_vec): Remove.
13369         (make_cleanup_free_char_ptr_vec): Remove.
13370
13371 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13372
13373         PR gdb/22907
13374         * common/pathstuff.c: Conditionally include "<windows.h>".
13375
13376 2018-03-01  Georg Sauthoff  <mail@georg.so>
13377
13378         PR gdb/22888
13379         * gcore.in: Quote variables and switch interpreter to bash.
13380
13381 2018-03-01  Tom Tromey  <tom@tromey.com>
13382
13383         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13384         assertion.  Add assertion for discriminant_index.
13385         (quirk_rust_enum): Use correct base type name in univariant case.
13386
13387 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13388
13389         * record.c (get_call_history_modifiers): Return a
13390         record_print_flags.
13391         (cmd_record_call_history): Adjust.
13392         * record-btrace.c (record_btrace_call_history): Adjust.
13393         (record_btrace_call_history_range): Adjust.
13394         (record_btrace_call_history_from): Adjust.
13395         * target-debug.h (target_debug_print_record_print_flags): New.
13396         * target-delegates.c: Re-generate.
13397         * target.c (target_call_history): Change flags type.
13398         (target_call_history_from): Likewise.
13399         (target_call_history_range): Likewise.
13400         * target.h (struct target_ops) <target_call_history>: Likewise.
13401         (target_call_history_from): Likewise.
13402         (target_call_history_range): Likewise.
13403
13404 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13405             Simon Marchi  <simon.marchi@polymtl.ca>
13406
13407         * common/common-utils.c: Include "sys/stat.h".
13408         (is_regular_file): Move here from "source.c"; change return
13409         type to "bool".
13410         * common/common-utils.h (is_regular_file): New prototype.
13411         * common/pathstuff.c (contains_dir_separator): New function.
13412         * common/pathstuff.h (contains_dir_separator): New prototype.
13413         * source.c: Don't include "sys/stat.h".
13414         (is_regular_file): Move to "common/common-utils.c".
13415
13416 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13417
13418         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13419         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13420         * auto-load.c: Include "common/pathstuff.h".
13421         * common/common-def.h (current_directory): Move here.
13422         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13423         function.
13424         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13425         prototype.
13426         * common/pathstuff.c: New file.
13427         * common/pathstuff.h: New file.
13428         * compile/compile.c: Include "common/pathstuff.h".
13429         * defs.h (current_directory): Move to "common/common-defs.h".
13430         * dwarf2read.c: Include "common/pathstuff.h".
13431         * exec.c: Likewise.
13432         * guile/scm-safe-call.c: Likewise.
13433         * linux-thread-db.c: Likewise.
13434         * main.c: Likewise.
13435         * nto-tdep.c: Likewise.
13436         * objfiles.c: Likewise.
13437         * source.c: Likewise.
13438         * symtab.c: Likewise.
13439         * utils.c: Include "common/pathstuff.h".
13440         (gdb_realpath): Move to "common/pathstuff.c".
13441         (gdb_realpath_keepfile): Likewise.
13442         (gdb_abspath): Likewise.
13443         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13444         (gdb_realpath_keepfile): Likewise.
13445         (gdb_abspath): Likewise.
13446
13447 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13448
13449         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13450         wildcard process pid for super_resume for kernels with a
13451         specific bug.
13452
13453 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13454
13455         * compile/compile.c (get_args): Add additional comments
13456         explaining function.
13457
13458 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13459             Tom Tromey  <tom@tromey.com>
13460
13461         * target.h (memory_write_request_s): Remove typedef.  Don't define
13462         VEC.
13463         (target_write_memory_blocks): Change argument to std::vector.
13464         (struct memory_write_request): Add constructor.
13465         * target-memory.c (compare_block_starting_address): Return bool.
13466         Change argument types.
13467         (claim_memory): Change arguments to use std::vector.
13468         (split_regular_and_flash_blocks, blocks_to_erase)
13469         (compute_garbled_blocks): Likewise.
13470         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13471         (target_write_memory_blocks): Change argument to std::vector.
13472         * symfile.c (struct load_section_data): Add constructor and
13473         destructor.  Use std::vector for "requests".
13474         (struct load_progress_data): Add initializers.
13475         (load_section_callback): Update.  Use "new".
13476         (clear_memory_write_data): Remove.
13477         (generic_load): Update.
13478
13479 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13480
13481         * arch/aarch64.h: Use common/tdesc.h.
13482
13483 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13484
13485         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13486         architecture with a 64-bit ABI.
13487
13488 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13489
13490         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13491         ahead of target description loading.
13492
13493 2018-02-26  Tom Tromey  <tom@tromey.com>
13494
13495         * stack.c (backtrace_command_1): Update.
13496         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13497         of "flags".
13498         * python/py-framefilter.c (py_print_frame)
13499         (gdbpy_apply_frame_filter): Change type of "flags".
13500         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13501         of "flags".
13502         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13503         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13504         * extension.h (enum frame_filter_flag): Rename from
13505         frame_filter_flags.
13506         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13507         (apply_ext_lang_frame_filter): Change type of "flags".
13508         * extension.c (apply_ext_lang_frame_filter): Change type of
13509         "flags".
13510         * extension-priv.h (struct extension_language_ops)
13511         <apply_frame_filter>: Change type of "flags".
13512
13513 2018-02-26  Tom Tromey  <tom@tromey.com>
13514
13515         PR python/16497:
13516         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13517         off-by-one in py_end computation.
13518         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13519         PRINT_MORE_FRAMES.
13520         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13521         constant.
13522
13523 2018-02-26  Tom Tromey  <tom@tromey.com>
13524
13525         * dwarf2read.c (struct variant_field): New.
13526         (struct nextfield) <variant>: New field.
13527         (dwarf2_add_field): Handle DW_TAG_variant_part.
13528         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13529         discriminated union.
13530         (read_structure_type): Handle DW_TAG_variant_part.
13531         (handle_struct_member_die): New function, extracted from
13532         process_structure_scope.  Handle DW_TAG_variant.
13533         (process_structure_scope): Handle discriminated unions.  Call
13534         handle_struct_member_die.
13535
13536 2018-02-26  Tom Tromey  <tom@tromey.com>
13537
13538         * rust-lang.h (rust_last_path_segment): Declare.
13539         * rust-lang.c (rust_last_path_segment): Now public.  Change
13540         contract.
13541         (struct disr_info): Remove.
13542         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13543         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13544         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13545         (rust_enum_p, rust_enum_variant): New function.
13546         (rust_underscore_fields): Remove "offset" parameter.
13547         (rust_print_enum): New function.
13548         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13549         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13550         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13551         enums.
13552         (rust_internal_print_type): New function, from rust_print_type.
13553         Remove enum code.
13554         (rust_print_type): Call rust_internal_print_type.
13555         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13556         Update enum handling.
13557         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13558         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13559         (rust_union_quirks): New functions.
13560         (process_full_comp_unit, process_full_type_unit): Call
13561         rust_union_quirks.
13562         (process_structure_scope): Update rust_unions if necessary.
13563
13564 2018-02-26  Tom Tromey  <tom@tromey.com>
13565
13566         * value.h (value_union_variant): Declare.
13567         * valops.c (value_union_variant): New function.
13568         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13569         (struct discriminant_info): New.
13570         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13571         enumerator.
13572         (struct main_type) <flag_discriminated_union>: New field.
13573
13574 2018-02-26  Tom Tromey  <tom@tromey.com>
13575
13576         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13577         unittests/unpack-selftests.c.
13578         * unittests/unpack-selftests.c: New file.
13579         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13580
13581 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13582
13583         * dwarf2read.c (struct partial_die_info) <read>: New method.
13584         (read_partial_die): Remove the declaration.
13585         (load_partial_dies): Update.
13586         (partial_die_info::partial_die_info):
13587         (read_partial_die): Change it to partial_die_info::read.
13588
13589 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13590
13591         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13592         (fixup_partial_die): Remove declaration.
13593         (scan_partial_symbols): Update.
13594         (partial_die_parent_scope): Likewise.
13595         (partial_die_full_name): Likewise.
13596         (fixup_partial_die): Change it to partial_die_info::fixup.
13597
13598 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13599
13600         * dwarf2read.c (read_partial_die): Update the declaration.
13601         (load_partial_dies): Caller update.
13602         (read_partial_die): Remove one argument abbrev_len.
13603
13604 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13605
13606         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13607         assignment operator.
13608         (load_partial_dies): Use ctor and copy ctor.
13609         (read_partial_die): Update.
13610         (dwarf2_cu::find_partial_die): Use ctor.
13611
13612 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13613
13614         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13615         (find_partial_die_in_comp_unit): Change it to
13616         dwarf2_cu::find_partial_die.
13617         (find_partial_die): Update.
13618
13619 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13620
13621         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13622         is NULL.
13623
13624 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13625
13626         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13627
13628 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13629
13630         * arch/amd64.h: Use common/tdesc.h.
13631         * arch/i386.c: Likewise.
13632         * arch/i386.h: Likewise.
13633         * arch/tic6x.c: Likewise.
13634         * arch/tdesc.h: Move file from here...
13635         * common/tdesc.h: ...to here.
13636         * features/aarch64-core.c: Regenerate.
13637         * features/aarch64-fpu.c: Regenerate.
13638         * features/i386/32bit-avx.c: Regenerate.
13639         * features/i386/32bit-avx512.c: Regenerate.
13640         * features/i386/32bit-core.c: Regenerate.
13641         * features/i386/32bit-linux.c: Regenerate.
13642         * features/i386/32bit-mpx.c: Regenerate.
13643         * features/i386/32bit-pkeys.c: Regenerate.
13644         * features/i386/32bit-sse.c: Regenerate.
13645         * features/i386/64bit-avx.c: Regenerate.
13646         * features/i386/64bit-avx512.c: Regenerate.
13647         * features/i386/64bit-core.c: Regenerate.
13648         * features/i386/64bit-linux.c: Regenerate.
13649         * features/i386/64bit-mpx.c: Regenerate.
13650         * features/i386/64bit-pkeys.c: Regenerate.
13651         * features/i386/64bit-segments.c: Regenerate.
13652         * features/i386/64bit-sse.c: Regenerate.
13653         * features/i386/x32-core.c: Regenerate.
13654         * features/tic6x-c6xp.c: Regenerate.
13655         * features/tic6x-core.c: Regenerate.
13656         * features/tic6x-gp.c: Regenerate.
13657         * target-descriptions.c: Use common/tdesc.h.
13658         * target-descriptions.h: Likewise.
13659
13660 2018-02-24  Tom Tromey  <tom@tromey.com>
13661
13662         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13663         (try_thread_db_load_from_dir, thread_db_load_search): Use
13664         std::string.
13665         (info_auto_load_libthread_db_compare): Return bool.  Change
13666         argument types.
13667         (info_auto_load_libthread_db): Use std::vector, std::string.
13668         Remove cleanups.
13669
13670 2018-02-24  Tom Tromey  <tom@tromey.com>
13671
13672         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13673         std::string.
13674         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13675         std::string*.
13676         * gdbarch.c: Rebuild.
13677         * gdbarch.h: Rebuild.
13678         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13679         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13680         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13681         std::string*.
13682
13683 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13684
13685         * gdbtypes.h (sect_offset): Change type to uint64_t.
13686         (sect_offset_str): New function.
13687         * dwarf2read.c (create_addrmap_from_aranges): Use
13688         sect_offset_str.
13689         (error_check_comp_unit_head): Likewise.
13690         (create_debug_type_hash_table): Likewise.
13691         (read_cutu_die_from_dwo): Likewise.
13692         (init_cutu_and_read_dies): Likewise.
13693         (init_cutu_and_read_dies_no_follow): Likewise.
13694         (process_psymtab_comp_unit_reader): Likewise.
13695         (partial_die_parent_scope): Likewise.
13696         (peek_die_abbrev): Likewise.
13697         (process_queue): Likewise.
13698         (dwarf2_physname): Likewise.
13699         (read_namespace_alias): Likewise.
13700         (read_import_statement): Likewise.
13701         (create_dwo_cu_reader): Likewise.
13702         (create_cus_hash_table): Likewise.
13703         (lookup_dwo_cutu): Likewise.
13704         (inherit_abstract_dies): Likewise.
13705         (read_func_scope): Likewise.
13706         (read_call_site_scope): Likewise.
13707         (dwarf2_add_member_fn): Likewise.
13708         (read_common_block): Likewise.
13709         (read_module_type): Likewise.
13710         (read_typedef): Likewise.
13711         (read_subrange_type): Likewise.
13712         (load_partial_dies): Likewise.
13713         (read_partial_die): Likewise.
13714         (find_partial_die): Likewise.
13715         (read_str_index): Likewise.
13716         (dwarf2_string_attr): Likewise.
13717         (build_error_marker_type): Likewise.
13718         (lookup_die_type): Likewise.
13719         (dump_die_shallow): Likewise.
13720         (follow_die_ref): Likewise.
13721         (dwarf2_fetch_die_loc_sect_off): Likewise.
13722         (dwarf2_fetch_constant_bytes): Likewise.
13723         (follow_die_sig): Likewise.
13724         (get_signatured_type): Likewise.
13725         (get_DW_AT_signature_type): Likewise.
13726         (dwarf2_find_containing_comp_unit): Likewise.
13727         (set_die_type): Likewise.
13728
13729 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13730
13731         * arch/aarch64.c: Include "common-defs.h".
13732         * arch/amd64.c: Likewise.
13733         * arch/i386.c: Likewise.
13734
13735 2018-02-21  Tom Tromey  <tom@tromey.com>
13736
13737         * value.h: (extract_field_op): Update.
13738         * eval.c (extract_field_op): Return a const char *.
13739         * expression.h (parse_expression_for_completion): Update.
13740         * completer.c (complete_expression): Update.
13741         (add_struct_fields): Make fieldname const.
13742         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13743         (mark_completion_tag, parse_exp_in_context_1): Update.
13744         (parse_expression_for_completion): Change "name" to
13745         unique_xmalloc_ptr*.
13746
13747 2018-02-21  Tom Tromey  <tom@tromey.com>
13748
13749         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13750
13751 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13752
13753         * avr-tdep.c (avr_read_pc): Change parameter type to
13754         readable_regcache.
13755         * gdbarch.sh (read_pc): Likewise.
13756         * gdbarch.c: Re-generated.
13757         * gdbarch.h: Re-generated.
13758         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13759         readable_regcache.
13760         * ia64-tdep.c (ia64_read_pc): Likewise.
13761         * mips-tdep.c (mips_read_pc): Likewise.
13762         * spu-tdep.c (spu_read_pc): Likewise.
13763
13764 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13765
13766         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13767         * regcache-dump.c: New file.
13768         * regcache.c: Move register_dump to regcache-dump.c.
13769         (maintenance_print_registers): Likewise.
13770         (maintenance_print_raw_registers): Likewise.
13771         (maintenance_print_cooked_registers): Likewise.
13772         (maintenance_print_register_groups): Likewise.
13773         (maintenance_print_remote_registers): Likewise.
13774         (_initialize_regcache): Likewise.
13775         * regcache.h (register_dump): Moved from regcache.c.
13776
13777 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13778
13779         * regcache.c (regcache::regcache): Update.
13780         (regcache::invalidate): Move it to detached_regcache::invalidate.
13781         (get_thread_arch_aspace_regcache): Update.
13782         (regcache::raw_update): Update.
13783         (regcache::cooked_read): Remove some code.
13784         (regcache::cooked_read_value): Likewise.
13785         (regcache::raw_write): Remove assert on m_readonly_p.
13786         (regcache::raw_supply_integer): Move it to
13787         detached_regcache::raw_supply_integer.
13788         (regcache::raw_supply_zeroed): Likewise.
13789         * regcache.h (detached_regcache) <raw_supply_integer>: New
13790         declaration.
13791         <raw_supply_zeroed, invalidate>: Likewise.
13792         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13793         <invalidate>: Likewise.
13794         <m_readonly_p>: Removed.
13795
13796 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13797
13798         * infcmd.c (get_return_value): Let stop_regs point to
13799         get_current_regcache.
13800         * regcache.c (regcache::regcache): Remove.
13801         (register_dump_reg_buffer): New class.
13802         (regcache_print): Adjust.
13803         * regcache.h (regcache): Remove constructors.
13804
13805 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13806
13807         * regcache.c (class register_dump): New class.
13808         (register_dump_regcache, register_dump_none): New class.
13809         (register_dump_remote, register_dump_groups): New class.
13810         (regcache_print): Update.
13811         * regcache.h (regcache_dump_what): Move it to regcache.c.
13812         (regcache) <dump>: Remove.
13813
13814 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13815
13816         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13817          reg_buffer_rw *.
13818         (jit_unwind_reg_set_impl): Call raw_supply.
13819         (jit_frame_sniffer): Use reg_buffer_rw.
13820         * record-full.c (record_full_core_regbuf): Change its type.
13821         (record_full_core_open_1): Use reg_buffer_rw.
13822         (record_full_close): Likewise.
13823         (record_full_core_fetch_registers): Use regcache->raw_supply.
13824         (record_full_core_store_registers): Likewise.
13825         * regcache.c (regcache::get_register_status): Move it to
13826         reg_buffer.
13827         (regcache_raw_set_cached_value): Remove.
13828         (regcache::raw_set_cached_value): Remove.
13829         (regcache::raw_write): Call raw_supply.
13830         (regcache::raw_supply): Move it to reg_buffer_rw.
13831         * regcache.h (regcache_raw_set_cached_value): Remove.
13832         (reg_buffer_rw): New class.
13833
13834 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13835
13836         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13837         readonly_detached_regcache.
13838         (dummy_frame_prev_register): Use regcache->cooked_read.
13839         * frame.c (frame_save_as_regcache): Change return type.
13840         (frame_pop): Update.
13841         * frame.h (frame_save_as_regcache): Update declaration.
13842         * inferior.h (get_infcall_suspend_state_regcache): Update
13843         declaration.
13844         * infrun.c (infcall_suspend_state) <registers>: use
13845         readonly_detached_regcache.
13846         (save_infcall_suspend_state): Don't use regcache_dup.
13847         (get_infcall_suspend_state_regcache): Change return type.
13848         * linux-fork.c (struct fork_info) <savedregs>: Change to
13849         readonly_detached_regcache.
13850         <pc>: New field.
13851         (fork_save_infrun_state): Don't use regcache_dup.
13852         (info_checkpoints_command): Adjust.
13853         * mi/mi-main.c (register_changed_p): Update declaration.
13854         (mi_cmd_data_list_changed_registers): Use
13855         readonly_detached_regcache.
13856         (register_changed_p): Change parameter type to
13857         readonly_detached_regcache.
13858         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13859         readonly_detached_regcache.
13860         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13861         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13862         New.
13863         (regcache::save): Move it to reg_buffer.
13864         (regcache::restore): Change parameter type.
13865         (regcache_dup): Remove.
13866         * regcache.h (reg_buffer) <save>: New method.
13867         (readonly_detached_regcache): New class.
13868         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13869         readonly_detached_regcache.
13870         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13871
13872 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13873
13874         * frame.c (frame_save_as_regcache): Use regcache method save.
13875         (frame_pop): Use regcache method restore.
13876         * infrun.c (restore_infcall_suspend_state): Likewise.
13877         * linux-fork.c (fork_load_infrun_state): Likewise.
13878         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13879         save.
13880         * regcache.c (regcache_save): Remove.
13881         (regcache::restore): More asserts.
13882         (regcache_cpy): Remove.
13883         * regcache.h (regcache_save): Remove the declaration.
13884         (regcache::restore): Move from private to public.
13885         Remove the friend declaration of regcache_cpy.
13886         (regcache_cpy): Remove declaration.
13887
13888 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13889
13890         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13891         parameter type to 'readable_regcache *'.
13892         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13893         * arm-tdep.c (arm_neon_quad_read): Likewise.
13894         (arm_pseudo_read): Likewise.
13895         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13896         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13897         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13898         * gdbarch.c: Re-generated.
13899         * gdbarch.h: Re-generated.
13900         * gdbarch.sh (pseudo_register_read): Change parameter type to
13901         'readable_regcache *'.
13902         (pseudo_register_read_value): Likewise.
13903         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13904         (h8300_pseudo_register_read): Likewise.
13905         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13906         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13907         (i386_pseudo_register_read_into_value): Likewise.
13908         (i386_pseudo_register_read_value): Likewise.
13909         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13910         declaration.
13911         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13912         * m32c-tdep.c (m32c_raw_read): Likewise.
13913         (m32c_read_flg): Likewise.
13914         (m32c_banked_register): Likewise.
13915         (m32c_banked_read): Likewise.
13916         (m32c_sb_read): Likewise.
13917         (m32c_part_read): Likewise.
13918         (m32c_cat_read): Likewise.
13919         (m32c_r3r2r1r0_read): Likewise.
13920         (m32c_pseudo_register_read): Likewise.
13921         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13922         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13923         (mep_pseudo_cr64_read): Likewise.
13924         (mep_pseudo_register_read): Likewise.
13925         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13926         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13927         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13928         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13929         (regcache::cooked_read): Likewise.
13930         (regcache::cooked_read_value): Likewise.
13931         (regcache_cooked_read_signed):
13932         (regcache::cooked_read): Likewise.
13933         * regcache.h (readable_regcache): New class.
13934         (regcache): Inherit readable_regcache.  Move some methods to
13935         readable_regcache.
13936         * rl78-tdep.c (rl78_pseudo_register_read): Change
13937         parameter type to 'readable_regcache *'.
13938         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13939         (e500_pseudo_register_read): Change parameter type to
13940         'readable_regcache *'.
13941         (dfp_pseudo_register_read): Likewise.
13942         (vsx_pseudo_register_read): Likewise.
13943         (efpr_pseudo_register_read): Likewise.
13944         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13945         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13946         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13947         (sh64_pseudo_register_read): Likewise.
13948         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13949         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13950         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13951         (spu_pseudo_register_read): Likewise.
13952         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13953         (xtensa_pseudo_register_read): Likewise.
13954
13955 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13956
13957         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13958         (regcache::arch): Move it to reg_buffer::arch.
13959         (regcache::register_buffer): Likewise.
13960         (regcache::assert_regnum): Likewise.
13961         (regcache::num_raw_registers): Likewise.
13962         * regcache.h (reg_buffer): New class.
13963         (regcache): Inherit reg_buffer.
13964
13965 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13966
13967         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13968         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13969
13970 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13971
13972         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13973
13974 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13975
13976         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13977         (SFILES): Remove common/*.c files.
13978         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13979         * common/common.host: Add common reference.
13980         * configure.ac: Likewise.
13981         * configure: Regenerate.
13982
13983 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13984
13985         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13986         (block_initialize_namespace): Use new.
13987         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13988         (dwarf2_free_objfile): Use delete.
13989         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13990         (copy_type_recursive): Use new.
13991         * gdb_obstack.h (allocate_on_obstack): New.
13992
13993 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13994
13995         PR gdb/22849
13996         * inferior.c (exit_inferior_1): Reset inf->control.
13997
13998 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13999
14000         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14001         declaration.
14002
14003 2018-02-14  Pedro Alves  <palves@redhat.com>
14004
14005         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14006         frame_cleanup_after_sniffer on exception.
14007
14008 2018-02-14  Tom Tromey  <tom@tromey.com>
14009
14010         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14011         const.
14012         (solib_bfd_open): Make pathname const.
14013         * solib.c (solib_bfd_open): Make pathname const.
14014         * solib-spu.c (spu_bfd_fopen): Make name const.
14015         (spu_bfd_open): Make pathname const.
14016         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14017         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14018
14019 2018-02-14  Tom Tromey  <tom@tromey.com>
14020
14021         * symfile.c (symfile_bfd_open): Update.
14022         * source.h (openp, source_full_path_of, find_and_open_source):
14023         Change argument type to unique_xmalloc_ptr.
14024         * source.c (openp): Take a unique_xmalloc_ptr.
14025         (source_full_path_of, find_and_open_source): Likewise.
14026         (open_source_file, symtab_to_fullname): Update.
14027         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14028         unique_xmalloc_ptr.
14029         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14030         (exec_file_find): Update.
14031         * psymtab.c (psymtab_to_fullname): Update.
14032         * nto-tdep.h (nto_find_and_open_solib): Update.
14033         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14034         unique_xmalloc_ptr.
14035         * exec.c (exec_file_attach): Update.
14036         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14037         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14038
14039 2018-02-14  Tom Tromey  <tom@tromey.com>
14040
14041         * solib.c: Include source.h.
14042         * nto-tdep.c: Include source.h.
14043         * mi/mi-cmd-env.c: Include source.h.
14044         * infcmd.c: Include source.h.
14045         * exec.c: Include source.h.
14046         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14047         (add_path, directory_switch, source_path, init_source_path): Move
14048         declarations...
14049         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14050         (add_path, directory_switch, source_path, init_source_path):
14051         ...here.
14052
14053 2018-02-14  Tom Tromey  <tom@tromey.com>
14054
14055         * solist.h (exec_file_find, solib_find): Return
14056         unique_xmalloc_ptr.
14057         (solib_bfd_fopen): Take a const char *.
14058         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14059         (exec_file_find, solib_find): Likewise.
14060         (solib_bfd_fopen): Do not take ownership of "pathname".
14061         (solib_bfd_open): Use unique_xmalloc_ptr.
14062         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14063         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14064         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14065         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14066
14067 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14068
14069         * ada-lang.c (name_match_type_from_name): Remove reference to
14070         ada_name_for_lookup in function's documentation.
14071         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14072
14073 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14074
14075         * defs.h (enum openp_flags): New enum.
14076         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14077         Move to enum openp_flags.
14078         (openp_flags): New enum flags.
14079         (openp): Change parameter type to openp_flags.
14080         * source.c (openp): Change parameter type to openp_flags.
14081         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14082         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14083
14084 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14085
14086         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14087         per-command.
14088
14089 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14090
14091         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14092         into...
14093         (class dwarf2_queue_guard): ...the destructor of this new class.
14094         (dw2_do_instantiate_symtab): Create instance of the new class
14095         dwarf2_queue_guard, remove cleanup.
14096
14097 2018-02-09  Tom Tromey  <tom@tromey.com>
14098
14099         * source.c (find_source_lines): Don't reference past the end of
14100         the vector.
14101
14102 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14103
14104         * remote.c (remote_btrace_maybe_reopen): Change error message.
14105         * btrace.c (btrace_enable): Likewise.
14106         (parse_xml_btrace): Likewise.
14107         (parse_xml_btrace_conf): Likewise.
14108
14109 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14110
14111         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14112         (linux_enable_pt, linux_enable_bts): Call
14113         diagnose_perf_event_open_fail.
14114
14115 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14116
14117         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14118         Remove parameter and change return type.  Update callers.  Move it.
14119         (linux_enable_bts, linux_enable_pt): Improve error message.
14120         (linux_enable_pt): Remove zero buffer size check.
14121         (linux_enable_btrace): Improve error messages.  Remove NULL return
14122         check.
14123
14124 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14125
14126         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14127         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14128         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14129         (linux_supports_pt, linux_supports_btrace): Remove.
14130         (linux_enable_bts): Call cpu_supports_bts.
14131         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14132         * remote.c (remote_supports_btrace): Remove.
14133         (init_remote_ops): Remove remote_supports_btrace.
14134         * target-delegates.c: Regenerated.
14135         * target.c (target_supports_btrace): Remove.
14136         * target.h (target_ops) <to_supports_btrace>: Remove
14137         (target_supports_btrace): Remove.
14138         * x86-linux-nat.c (x86_linux_create_target): Remove
14139         linux_supports_btrace.
14140
14141 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14142
14143         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14144         btrace failed.
14145         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14146         exception and use message in own exception.
14147
14148 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14149
14150         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14151         (perf_event_pt_event_type): Use gdb_file_up.
14152         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14153         scoped_fd, and scoped_mmap.
14154
14155 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14156
14157         * common/scoped_mmap.h: New.
14158         * unittests/scoped_mmap-selftest.c: New.
14159         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14160         unittests/scoped_mmap-selftest.c.
14161
14162 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14163
14164         * common/scoped_fd.h: New.
14165         * unittests/scoped_fd-selftest.c: New.
14166         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14167         unittests/scoped_fd-selftest.c.
14168
14169 2018-02-09  Tom Tromey  <tom@tromey.com>
14170
14171         * auto-load.c (auto_load_section_scripts): Use
14172         gdb::unique_xmalloc_ptr.
14173
14174 2018-02-09  Tom Tromey  <tom@tromey.com>
14175
14176         * auto-load.c (execute_script_contents): Use std::string.
14177
14178 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14179
14180         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14181         Python function, rather than a new command.
14182
14183 2018-02-08  Tom Tromey  <tom@tromey.com>
14184
14185         * solib.c (solib_find_1): Use std::string.
14186         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14187
14188 2018-02-08  Tom Tromey  <tom@tromey.com>
14189
14190         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14191
14192 2018-02-08  Tom Tromey  <tom@tromey.com>
14193
14194         * source.c (find_source_lines): Use gdb::def_vector.
14195
14196 2018-02-08  Tom Tromey  <tom@tromey.com>
14197
14198         * macrocmd.c (struct temporary_macro_definition): New.
14199         (macro_define_command): Use temporary_macro_definition.  Remove
14200         cleanups.
14201         (free_macro_definition_ptr): Remove.
14202
14203 2018-02-08  Tom Tromey  <tom@tromey.com>
14204
14205         * macroexp.c (maybe_expand): Use std::string.
14206
14207 2018-02-08  Tom Tromey  <tom@tromey.com>
14208
14209         * macroexp.c (struct macro_buffer): Add initializers for some
14210         members.
14211         (init_buffer, init_shared_buffer, free_buffer)
14212         (free_buffer_return_text): Remove.
14213         (macro_buffer): New constructors.
14214         (~macro_buffer): New destructor.
14215         (macro_buffer::set_shared): New method.
14216         (macro_buffer::resize_buffer, macro_buffer::appendc)
14217         (macro_buffer::appendmem): Now methods, not free functions.
14218         (set_token, append_tokens_without_splicing, stringify)
14219         (macro_stringify): Update.
14220         (gather_arguments): Change return type.  Remove argc_p argument,
14221         add args_ptr argument.  Use std::vector.
14222         (substitute_args): Remove argc argument.  Accept std::vector.
14223         (expand): Update.  Use std::vector.
14224         (scan, macro_expand, macro_expand_next): Update.
14225
14226 2018-02-08  Tom Tromey  <tom@tromey.com>
14227
14228         * symtab.c (default_collect_symbol_completion_matches_break_on):
14229         Use unique_xmalloc_ptr.
14230         * macroscope.h: (sal_macro_scope, user_macro_scope)
14231         (default_macro_scope): Return unique_xmalloc_ptr.
14232         * macroscope.c (sal_macro_scope, user_macro_scope)
14233         (default_macro_scope): Return unique_xmalloc_ptr.
14234         * macroexp.h (macro_expand, macro_expand_once): Return
14235         unique_xmalloc_ptr.
14236         * macroexp.c (macro_expand, macro_expand_once): Return
14237         unique_xmalloc_ptr.
14238         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14239         (info_macro_command, info_macros_command): Use
14240         unique_xmalloc_ptr.
14241         * compile/compile-c-support.c (write_macro_definitions): Use
14242         unique_xmalloc_ptr.
14243         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14244
14245 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14246
14247         * value.c (value_static_field): Assign field type instead of
14248         containing type when returning an optimized out value.
14249
14250 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14251
14252         * ft32-tdep.c (ft32_read_pc): Remove.
14253         (ft32_write_pc): Remove.
14254         (ft32_gdbarch_init): Update.
14255         * m32r-tdep.c (m32r_read_pc): Remove.
14256         (m32r_gdbarch_init): Update.
14257         * mep-tdep.c (mep_read_pc): Remove.
14258         (mep_gdbarch_init): Update.
14259         * microblaze-tdep.c (microblaze_write_pc): Remove.
14260         (microblaze_gdbarch_init): Update.
14261         * mn10300-tdep.c (mn10300_read_pc): Remove.
14262         (mn10300_write_pc): Remove.
14263         (mn10300_gdbarch_init): Update.
14264         * moxie-tdep.c (moxie_read_pc): Remove.
14265         (moxie_write_pc): Remove.
14266         (moxie_gdbarch_init): Update.
14267
14268 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14269
14270         * expprint.c (print_subexp_standard): Handle
14271         OP_F77_UNDETERMINED_ARGLIST.
14272         (dump_subexp_body_standard): Likewise.
14273
14274 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14275
14276         * target-descriptions.c (tdesc_element_visitor) Add empty
14277         implementations.
14278         (tdesc_type): Move make_gdb_type from here.
14279         (tdesc_type_builtin): Likewise.
14280         (tdesc_type_vector): Likewise.
14281         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14282         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14283         (make_gdb_type_union): Likewise.
14284         (make_gdb_type_flags): Likewise.
14285         (make_gdb_type_enum): Likewise.
14286         (make_gdb_type): New function.
14287         (tdesc_register_type): Use static make_gdb_type.
14288
14289 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14290
14291         * infcmd.c (default_print_one_register_info): Align natural-format
14292         column values consistently one under another.
14293         (pad_to_column): New function.
14294
14295 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14296
14297         * dwarf2read.c (dwarf2_physname): Move commment.
14298
14299 2018-02-01  Leszek Swirski  <leszeks@google.com>
14300
14301         * varobj.c (varobj_formatted_print_options): Allow recursive
14302         pretty printing if pretty printing is enabled.
14303
14304 2018-02-01  Leszek Swirski  <leszeks@google.com>
14305
14306         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14307         names after a structop as a filename.
14308
14309 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14310
14311         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14312         (arm_record_coproc_data_proc): Likewise.
14313
14314 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14315
14316         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14317
14318 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14319
14320         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14321         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14322
14323 2018-01-31  Pedro Alves  <palves@redhat.com>
14324
14325         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14326         * inflow.c (child_terminal_save_inferior): Wrap reference to
14327         tcgetpgrp in HAVE_TERMIOS_H.
14328         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14329         _WIN32.
14330         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14331         always iterate over all inferiors.
14332         (gdbsim_cntrl_c): Adjust.
14333         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14334
14335 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14336
14337         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14338         index type is objfile-owned if the element type is as well.
14339
14340 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14341
14342         GDB 8.1 released.
14343
14344 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14345
14346         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14347         "features/s390x-linux64.c".
14348         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14349         s390_linux32 and s390x_linux64.
14350         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14351         default tdesc.
14352         * s390-tdep.c: Include "features/s390-linux32.c" and
14353         "features/s390x-linux64.c".
14354         (s390_tdesc_valid): Add check for tdesc_has_registers.
14355         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14356         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14357         tdesc_s390x_linux64.
14358         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14359         tdesc_s390x_linux64 to...
14360         * s390-tdep.h: ...here.
14361
14362 2018-01-30  Pedro Alves  <palves@redhat.com>
14363
14364         PR gdb/13211
14365         * config.in, configure: Regenerate.
14366         * configure.ac: Check for getpgid.
14367         * go32-nat.c (go32_pass_ctrlc): New.
14368         (go32_target): Install it.
14369         * inf-child.c (inf_child_target): Install
14370         child_terminal_save_inferior, child_pass_ctrlc and
14371         child_interrupt.
14372         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14373         (inf_ptrace_target): No longer install it.
14374         * infcmd.c (interrupt_target_1): Adjust.
14375         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14376         (child_interrupt): Declare.
14377         (inferior::terminal_state): New.
14378         * inflow.c (struct terminal_info): Update comments.
14379         (inferior_process_group): Delete.
14380         (terminal_is_ours): Delete.
14381         (gdb_tty_state): New.
14382         (child_terminal_init): Adjust.
14383         (is_gdb_terminal, sharing_input_terminal_1)
14384         (sharing_input_terminal): New functions.
14385         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14386         Set the process's actual process group in the foreground if
14387         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14388         mark terminal as the inferior's if not sharing GDB's terminal.
14389         Don't check attach_flag.
14390         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14391         pass down a target_terminal_state.
14392         (child_terminal_save_inferior): New, factored out from ...
14393         (child_terminal_ours_1): ... this.  Handle
14394         target_terminal_state::is_ours_for_output.
14395         (child_interrupt, child_pass_ctrlc): New.
14396         (inflow_inferior_exit): Clear the inferior's terminal_state.
14397         (copy_terminal_info): Copy the inferior's terminal state.
14398         (_initialize_inflow): Remove reference to terminal_is_ours.
14399         * inflow.h (inferior_process_group): Delete.
14400         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14401         * procfs.c (procfs_target): Don't install procfs_interrupt.
14402         (procfs_interrupt): Delete.
14403         * remote.c (remote_serial_quit_handler): Adjust.
14404         (remote_interrupt): Remove ptid parameter.  Adjust.
14405         * target-delegates.c: Regenerate.
14406         * target.c: Include "terminal.h".
14407         (target_terminal::terminal_state): Rename to ...
14408         (target_terminal::m_terminal_state): ... this.
14409         (target_terminal::init): Adjust.
14410         (target_terminal::inferior): Adjust to per-inferior
14411         terminal_state.
14412         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14413         (target_terminal::ours, target_terminal::ours_for_output): Use
14414         target_terminal_is_ours_kind.
14415         (target_interrupt): Remove ptid parameter.  Adjust.
14416         (default_target_pass_ctrlc): Adjust.
14417         * target.h (target_ops::to_terminal_save_inferior): New field.
14418         (target_ops::to_interrupt): Remove ptid_t parameter.
14419         (target_interrupt): Remove ptid_t parameter.  Update comment.
14420         (target_pass_ctrlc): Update comment.
14421         * target/target.h (target_terminal_state): New scoped enum,
14422         factored out of ...
14423         (target_terminal::terminal_state): ... here.
14424         (target_terminal::inferior): Update comments.
14425         (target_terminal::restore_inferior): New.
14426         (target_terminal::is_inferior, target_terminal::is_ours)
14427         (target_terminal::is_ours_for_output): Adjust.
14428         (target_terminal::scoped_restore_terminal_state): Adjust to
14429         rename, and call restore_inferior() instead of inferior().
14430         (target_terminal::scoped_restore_terminal_state::m_state): Change
14431         type.
14432         (target_terminal::terminal_state): Rename to ...
14433         (target_terminal::m_terminal_state): ... this and change type.
14434
14435 2018-01-30  Pedro Alves  <palves@redhat.com>
14436
14437         * linux-nat.c (wait_for_signal): New function.
14438         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14439         directly.
14440         (async_terminal_is_ours)
14441         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14442         (linux_nat_add_target): Don't override
14443         to_terminal_inferior/to_terminal_ours.
14444
14445 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14446
14447         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14448
14449 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14450
14451         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14452         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14453         dwarf2_per_objfile_free here.
14454         (dwarf2_per_objfile_free): Remove.
14455         (_initialize_dwarf2_read): Don't register
14456         dwarf2_per_objfile_free as a registry cleanup.
14457
14458 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14459
14460         Avoid compilation errors in MinGW native builds
14461
14462         The error is triggered by including python-internal.h, and the
14463         error message is:
14464
14465              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14466                       from build-gnulib/import/math.h:27,
14467                       from d:/usr/Python26/include/pyport.h:235,
14468                       from d:/usr/Python26/include/Python.h:58,
14469                       from python/python-internal.h:94,
14470                       from python/py-arch.c:24:
14471              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14472         using ::hypot;
14473                 ^~~~~
14474
14475         This happens because Python headers define 'hypot' to expand t
14476         '_hypot' in the Windows builds.
14477         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14478         'hypoth'.  This avoids a compilation error.
14479
14480 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14481
14482         * MAINTAINERS (Write After Approval): Fix ordering.
14483
14484 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14485
14486         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14487
14488 2018-01-26  Alan Modra  <amodra@gmail.com>
14489
14490         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14491         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14492         Remove nop.  Make const.  Comment.
14493         (powerpc32_plt_stub_so_2): New.
14494         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14495         Correct count.  Update uses.
14496         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14497         Move common code reading PLT entry word.  Correct
14498         powerpc32_plt_stub PLT address calculation.
14499         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14500         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14501         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14502         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14503         (ppc64_standard_linkage8): Likewise.
14504         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14505         Correct insns description.
14506         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14507
14508 2018-01-24  Pedro Alves  <palves@redhat.com>
14509
14510         GCC PR libstdc++/83906
14511         * gdbtypes.c (operator==(const dynamic_prop &,
14512         const dynamic_prop &)): New.
14513         (operator==(const range_bounds &, const range_bounds &)): New.
14514         (check_types_equal): Use them instead of memcmp.
14515         * gdbtypes.h (operator==(const dynamic_prop &,
14516         const dynamic_prop &)): Declare.
14517         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14518         (operator==(const range_bounds &, const range_bounds &)): Declare.
14519         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14520
14521 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14522
14523         * s390-linux-tdep.c (s390_record_address_mask)
14524         (s390_record_calc_disp_common, s390_record_calc_disp)
14525         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14526         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14527         (s390_process_record): Move to s390-tdep.c.
14528         (s390_linux_init_abi_any): Adjust.
14529         * s390-tdep.c (s390_record_address_mask)
14530         (s390_record_calc_disp_common, s390_record_calc_disp)
14531         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14532         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14533         (s390_process_record): Moved from s390-linux-tdep.c
14534         (s390_gdbarch_init): Adjust.
14535
14536 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14537
14538         * s390-linux-nat.c (s390-tdep.h): New include.
14539         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14540         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14541         (ALLDEPFILES): Add s390-tdep.c.
14542         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14543         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14544         * s390-tdep.h: ...this.  New file.
14545         * s390-linux-tdep.c (s390-tdep.h): New include.
14546         (_initialize_s390_tdep): Rename to...
14547         (_initialize_s390_linux_tdep): ...this and adjust.
14548         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14549         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14550         s390-tdep.h.
14551         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14552         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14553         (s390_is_partial_instruction, s390_software_single_step)
14554         (is_non_branch_ril, s390_displaced_step_copy_insn)
14555         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14556         (s390_prologue_data, s390_addr, s390_store, s390_load)
14557         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14558         (s390_register_call_saved, s390_guess_tracepoint_registers)
14559         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14560         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14561         (s390_pseudo_register_name, s390_pseudo_register_type)
14562         (s390_pseudo_register_read, s390_pseudo_register_write)
14563         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14564         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14565         (s390_addr_bits_remove, s390_address_class_type_flags)
14566         (s390_address_class_type_flags_to_name)
14567         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14568         (s390_function_arg_float, s390_function_arg_vector)
14569         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14570         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14571         (s390_frame_align, s390_register_return_value, s390_return_value)
14572         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14573         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14574         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14575         (s390_trad_frame_prev_register, s390_unwind_cache)
14576         (s390_prologue_frame_unwind_cache)
14577         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14578         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14579         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14580         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14581         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14582         (s390_frame_base_address, s390_local_base_address)
14583         (s390_frame_base, s390_gcc_target_options)
14584         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14585         (s390_validate_reg_range, s390_tdesc_valid)
14586         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14587         * s390-tdep.c: ...this.  New file.
14588
14589 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14590
14591         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14592         (s390_process_record, s390_gdbarch_tdep_alloc)
14593         (s390_linux_init_abi_any): Use/set new hook.
14594
14595 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14596
14597         * s390-linux-tdep.c (osabi.h): New include.
14598         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14599         (s390_linux_init_abi_any): New functions.
14600         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14601
14602 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14603
14604         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14605         tdesc_has_registers check
14606
14607 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14608
14609         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14610         (s390_validate_reg_range): New macro.
14611         (s390_gdbarch_init): Adjust.
14612
14613 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14614
14615         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14616         (s390_gdbarch_tdep_alloc): Adjust.
14617         (s390_gdbarch_init): Adjust.
14618
14619 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14620
14621         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14622         <have_tdb>: Change type to bool.
14623         (s390_gdbarch_tdep_alloc): Adjust.
14624         (s390_gdbarch_init): Adjust.
14625
14626 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14627
14628         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14629         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14630         (s390_gdbarch_tdep_alloc): New function.
14631         (s390_gdbarch_init): Allocate tdep at start and use its fields
14632         instead of separate variables.
14633
14634 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14635
14636         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14637         when looking for cached gdbarch and add comment for remaining.
14638
14639 2018-01-22  Pedro Alves  <palves@redhat.com>
14640             Sergio Durigan Junior  <sergiodj@redhat.com>
14641
14642         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14643         case.
14644
14645 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14646
14647         * MAINTAINERS: Update my company e-mail address.
14648
14649 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14650
14651         * regcache.c (cooked_write_test): New function.
14652         (_initialize_regcache): Register the test.
14653
14654 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14655
14656         * ia64-tdep.c (ia64_pseudo_register_read): Call
14657         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14658         * m32c-tdep.c (m32c_cat_read): Likewise.
14659         (m32c_r3r2r1r0_read): Likewise.
14660         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14661         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14662
14663 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14664
14665         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14666         method raw_read instead of regcache_raw_read.
14667         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14668         * arm-tdep.c (arm_neon_quad_read): Likewise.
14669         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14670         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14671         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14672         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14673         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14674         (i386_pseudo_register_read_into_value): Likewise.
14675         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14676         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14677         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14678         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14679         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14680         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14681         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14682         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14683         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14684
14685 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14686
14687         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14688         * configure.tgt: Remove target mt.
14689         * mt-tdep.c: Remove.
14690         * regcache.c (cooked_read_test): Remove the check for mt.
14691
14692 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14693
14694         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14695         instead of gdbarch_pseudo_register_read_value.
14696
14697 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14698
14699         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14700         language is Ada.
14701
14702 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14703
14704         * linespec.c (create_sals_line_offset): Remove code that preserved
14705         the symtab_and_line's line number.
14706
14707 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14708
14709         * varobj.c (varobj_create): Don't set valid_block when creating a
14710         floating varobj.
14711
14712 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14713
14714         * varobj.c (varobj_create): Remove out of date comment.
14715
14716 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14717
14718         PR mi/20395
14719         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14720         updating innermost block.
14721         * parse.c (innermost_block_tracker::update): Take extra type
14722         parameter, and check types match before updating innermost block.
14723         (write_dollar_variable): Update innermost block for registers.
14724         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14725         (innermost_block_tracker::innermost_block_tracker): Initialise
14726         m_types member.
14727         (innermost_block_tracker::reset): Take type parameter.
14728         (innermost_block_tracker::update): Take type parameter, and pass
14729         type through as needed.
14730         (innermost_block_tracker::m_types): New member.
14731         * varobj.c (varobj_create): Pass type when reseting innermost
14732         block.
14733
14734 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14735
14736         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14737         * ada-lang.c (resolve_subexp): Likewise.
14738         * breakpoint.c (set_breakpoint_condition) Likewise.
14739         (watch_command_1) Likewise.
14740         * c-exp.y (variable): Likewise.
14741         * d-exp.y (PrimaryExpression): Likewise.
14742         * f-exp.y (variable): Likewise.
14743         * go-exp.y (variable): Likewise.
14744         * m2-exp.y (variable): Likewise.
14745         * objfiles.c (objfile::~objfile): Likewise.
14746         * p-exp.y (variable): Likewise.
14747         * parse.c (innermost_block): Change type.
14748         * parser-defs.h (class innermost_block_tracker): New.
14749         (innermost_block): Change to innermost_block_tracker.
14750         * printcmd.c (display_command): Switch to innermost_block API.
14751         (do_one_display): Likewise.
14752         * rust-exp.y (do_one_display): Likewise.
14753         * symfile.c (clear_symtab_users): Likewise.
14754         * varobj.c (varobj_create): Switch to innermost_block API, replace
14755         use of innermost_block with block stored on varobj object.
14756
14757 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14758
14759         * expression.h (innermost_block): Remove declaration.
14760         * varobj.c: Add 'parser-defs.h' include.
14761
14762 2018-01-19  Tom Tromey  <tom@tromey.com>
14763
14764         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14765         symbols in the static and global blocks.
14766
14767 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14768
14769         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14770         gdb_ptrace.h, and move including gdb_wait.h ...
14771         * nat/linux-ptrace.h: ... to here.
14772
14773 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14774
14775         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14776         inf_ptrace_detach_success.
14777         (inf_ptrace_detach_success): Add inferior parameter, use it
14778         instead of inferior_ptid, pass it to detach_inferior.
14779         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14780         parameter.
14781         * inferior.c (detach_inferior): Add overload that takes an
14782         inferior object.
14783         * inferior.h (detach_inferior): Likewise.
14784         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14785         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14786         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14787
14788 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14789
14790         * target.h (struct target_ops) <to_detach>: Add inferior
14791         parameter.
14792         (target_detach): Likewise.
14793         * target.c (dispose_inferior): Pass inferior down.
14794         (target_detach): Pass inferior down.  Assert that it is equal to
14795         the current inferior.
14796         * aix-thread.c (aix_thread_detach): Pass inferior down.
14797         * corefile.c (core_file_command): Pass current_inferior() down.
14798         * corelow.c (core_detach): Add inferior parameter.
14799         * darwin-nat.c (darwin_detach): Likewise.
14800         * gnu-nat.c (gnu_detach): Likewise.
14801         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14802         * infcmd.c (detach_command): Pass current_inferior() down to
14803         target_detach.
14804         * infrun.c (follow_fork_inferior): Pass parent_inf to
14805         target_detach.
14806         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14807         target_detach.
14808         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14809         * linux-thread-db.c (thread_db_detach): Likewise.
14810         * nto-procfs.c (procfs_detach): Likewise.
14811         * procfs.c (procfs_detach): Likewise.
14812         * record.c (record_detach): Likewise.
14813         * record.h (struct inferior): Forward-declare.
14814         (record_detach): Add inferior parameter.
14815         * remote-sim.c (gdbsim_detach): Likewise.
14816         * remote.c (remote_detach_1): Likewise.
14817         (remote_detach): Likewise.
14818         (extended_remote_detach): Likewise.
14819         * sol-thread.c (sol_thread_detach): Likewise.
14820         * target-debug.h (target_debug_print_inferior_p): New macro.
14821         * target-delegates.c: Re-generate.
14822         * top.c (kill_or_detach): Pass inferior down to target_detach.
14823         * windows-nat.c (windows_detach): Add inferior parameter.
14824
14825 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14826
14827         * target.h (struct target_ops) <to_detach>: Remove args
14828         parameter.
14829         (target_detach): Likewise.
14830         * target.c (dispose_inferior): Adjust.
14831         (target_detach): Remove args parameter, adjust.
14832         * aix-thread.c (aix_thread_detach): Adjust.
14833         * corefile.c (core_file_command): Adjust.
14834         * corelow.c (core_detach): Adjust.
14835         * darwin-nat.c (darwin_detach): Adjust.
14836         * gnu-nat.c (gnu_detach): Adjust.
14837         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14838         * infcmd.c (detach_command): Adjust
14839         * infrun.c (follow_fork_inferior): Adjust.
14840         (handle_vfork_child_exec_or_exit): Adjust.
14841         * linux-fork.c (linux_fork_detach): Remove args parameter.
14842         * linux-fork.h (linux_fork_detach): Likewise.
14843         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14844         * linux-thread-db.c (thread_db_detach): Likewise.
14845         * nto-procfs.c (procfs_detach): Likewise.
14846         * procfs.c (procfs_detach): Likewise.
14847         (do_detach): Remove signo parameter.
14848         * record.c (record_detach): Remove args parameter.
14849         * record.h (record_detach): Likewise.
14850         * remote-sim.c (gdbsim_detach): Likewise.
14851         * remote.c (remote_detach_1): Likewise.
14852         (remote_detach): Likewise.
14853         (extended_remote_detach): Likewise.
14854         * sol-thread.c (sol_thread_detach): Likewise.
14855         * target-delegates.c: Re-generate.
14856         * top.c (struct qt_args) <args>: Remove field.
14857         (kill_or_detach): Don't pass args.
14858         (quit_force): Don't set args.
14859         * windows-nat.c (windows_detach): Remove args parameter.
14860
14861 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14862
14863         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14864         (arm_linux_init_abi): Install it.
14865
14866 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14867
14868         * osabi.c (gdb_osabi_names): Extend the regexp for
14869         arm-linux-gnueabihf.
14870
14871 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14872
14873         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14874         m_abbrevs.
14875         (abbrev_table::add_abbrev): Update.
14876         (abbrev_table::lookup_abbrev): Update.
14877
14878 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14879
14880         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14881
14882 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14883
14884         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14885         to "std::string".
14886
14887 2018-01-17  Tom Tromey  <tom@tromey.com>
14888
14889         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14890
14891 2018-01-17  Tom Tromey  <tom@tromey.com>
14892
14893         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14894         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14895         (create_array_type_with_stride): Update.
14896         * dwarf2read.c (set_die_type): Update.
14897
14898 2018-01-17  Tom Tromey  <tom@tromey.com>
14899
14900         * dwarf2read.c (delayed_method_info): Remove typedef.
14901         (dwarf2_cu::method_info): Now a std::vector.
14902         (add_to_method_list): Update.
14903         (free_delayed_list): Remove.
14904         (compute_delayed_physnames): Update.
14905         (process_full_comp_unit, process_full_type_unit): Clear the method
14906         list.  Remove cleanups.
14907         (psymtab_include_file_name): Add name_holder parameter.  Use
14908         unique_xmalloc_ptr.
14909         (dwarf_decode_lines): Update.
14910
14911 2018-01-17  Tom Tromey  <tom@tromey.com>
14912             Simon Marchi  <simon.marchi@ericsson.com>
14913
14914         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14915         (dwarf2_per_objfile::free_cached_comp_units)
14916         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14917         (init_cutu_and_read_dies_no_follow): Update.
14918         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14919         (dwarf2_cu::~dwarf2_cu): New.
14920         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14921         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14922
14923 2018-01-17  Tom Tromey  <tom@tromey.com>
14924             Simon Marchi  <simon.marchi@ericsson.com>
14925
14926         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14927         (struct die_reader_specs) <abbrev_table>: New member.
14928         (struct abbrev_table): Add constructor.
14929         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14930         <abbrev_obstack>: Now an auto_obstack.
14931         (abbrev_table_up): New typedef.
14932         (init_cu_die_reader): Add abbrev_table parameter.
14933         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14934         Add result_dwo_abbrev_table.
14935         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14936         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14937         Update.
14938         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14939         parameter.
14940         (skip_children): Update.
14941         (abbrev_table::alloc_abbrev): Rename from
14942         abbrev_table_alloc_abbrev.
14943         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14944         (abbrev_table::lookup_abbrev): Rename from
14945         abbrev_table_lookup_abbrev.
14946         (abbrev_table_read_table): Return abbrev_table_up.
14947         (abbrev_table_free, abbrev_table_free_cleanup)
14948         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14949         (load_partial_dies): Update.
14950
14951 2018-01-17  Tom Tromey  <tom@tromey.com>
14952
14953         * dwarf2read.c (dwarf2_compute_name): Update comment.
14954         (read_func_scope, read_variable): Update.
14955         (new_symbol): Remove.
14956         (new_symbol_full): Rename to new_symbol.
14957
14958 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14959
14960         PR gdb/16577
14961         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14962         a warning instead of throwing an error, set section size to 0 and return
14963         NULL.
14964         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14965
14966 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14967
14968         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14969         std::string.
14970         (linux_ptrace_attach_fail_reason_string): Likewise.
14971         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14972         Likewise.
14973         (linux_ptrace_attach_fail_reason_string): Likewise.
14974         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14975
14976 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14977
14978         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14979
14980 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14981
14982         PR gdb/21559
14983         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14984         checking for fs_base/gs_base fields in struct user_regs_struct.
14985         * configure: Regenerate.
14986
14987 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14988
14989         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14990         function.
14991         (aarch64_linux_init_abi): Install it to gdbarch hook
14992         gcc_target_options.
14993
14994 2018-01-15  Pedro Alves  <palves@redhat.com>
14995
14996         * common/signals-state-save-restore.c
14997         (save_original_signals_state): Fix typos.
14998
14999 2017-01-12  Tom Tromey  <tom@tromey.com>
15000             Sergio Durigan Junior  <sergiodj@redhat.com>
15001
15002         * Makefile.in (install-only): Install gdb-add-index.
15003
15004 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15005
15006         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15007
15008 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15009
15010         * infrun.c (keep_going_pass_signal): Clear step-over info when
15011         insert_breakpoints fails.
15012
15013 2018-01-11  Pedro Alves  <palves@redhat.com>
15014
15015         PR gdb/22583
15016         * infrun.c (resume): Rename to ...
15017         (resume_1): ... this.
15018         (resume): Reimplement as wrapper around resume_1.
15019
15020 2018-01-11  Pedro Alves  <palves@redhat.com>
15021
15022         PR remote/22597
15023         * remote.c (remote_parse_stop_reply): Default to the last-set
15024         general thread instead of to 'magic_null_ptid'.
15025
15026 2018-01-10  Pedro Alves  <palves@redhat.com>
15027
15028         * language.h (language_get_symbol_name_matcher): Rename ...
15029         (get_symbol_name_matcher): ... this.
15030         * language.c (language_get_symbol_name_matcher): Ditto.
15031         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15032         callers adjusted.
15033
15034 2018-01-10  Pedro Alves  <palves@redhat.com>
15035
15036         PR gdb/22670
15037         * dwarf2read.c
15038         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15039         Adjust to use language_get_symbol_name_matcher instead of
15040         language_defn::la_get_symbol_name_matcher.
15041         * language.c (language_get_symbol_name_matcher): If in Ada mode
15042         and the lookup name is a verbatim match, return Ada's matcher.
15043         * language.h (language_get_symbol_name_matcher): Adjust comment.
15044         (ada_lookup_name_info::verbatim_p):: New method.
15045
15046 2018-01-10  Pedro Alves  <palves@redhat.com>
15047
15048         PR gdb/22670
15049         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15050         minsym's language is language_auto or language_cplus, pass down
15051         language_ada instead.
15052         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15053
15054 2018-01-10  Pedro Alves  <palves@redhat.com>
15055
15056         PR gdb/22670
15057         * minsyms.c (linkage_name_str): New function.
15058         (iterate_over_minimal_symbols): Use it.
15059
15060 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15061
15062         * NEWS: Document that 'info proc' now works on FreeBSD.
15063
15064 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15065
15066         * configure.ac: Check for kinfo_getfile in libutil.
15067         * configure: Regenerate.
15068         * config.in: Regenerate.
15069         * fbsd-nat.c: Include "fbsd-tdep.h".
15070         (fbsd_fetch_cmdline): New.
15071         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15072         rather than calling error.
15073         (fbsd_info_proc): New.
15074         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15075         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15076         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15077
15078 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15079
15080         * fbsd-nat.c (struct free_deleter): Remove.
15081         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15082
15083 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15084
15085         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15086         NULL for an empty pathname.
15087
15088 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15089
15090         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15091         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15092         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15093         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15094         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15095         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15096         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15097         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15098         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15099         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15100         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15101         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15102         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15103         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15104         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15105
15106 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15107
15108         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15109         (gnu_xfer_auxv): New function.
15110         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15111         TARGET_OBJECT_AUXV.
15112
15113 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15114             Simon Marchi  <simon.marchi@ericsson.com>
15115
15116         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15117         common/selftest.c.
15118         (COMMON_OBS): Remove selftest.o.
15119         * configure.ac: Append selftest-arch.c and common/selftest.c to
15120         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15121         * configure: Re-generated.
15122         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15123         GDB_SELF_TEST.
15124         (maintenance_info_selftests): Likewise.
15125
15126 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15127
15128         * ada-valprint.c (val_print_packed_array_elements): Use
15129         proper number of elements when printing an array indexed
15130         by an enumeration type.
15131
15132 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15133
15134         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15135         (dw2_get_file_names_reader): Adjust.
15136         (lookup_dwo_signatured_type): Adjust.
15137         (lookup_dwp_signatured_type): Adjust.
15138         (lookup_signatured_type): Adjust.
15139         (create_type_unit_group): Adjust.
15140         (get_type_unit_group): Adjust.
15141         (process_psymtab_comp_unit_reader): Adjust.
15142         (build_type_psymtabs_reader): Adjust.
15143         (scan_partial_symbols): Adjust.
15144         (add_partial_symbol): Adjust.
15145         (add_partial_subprogram): Adjust.
15146         (peek_die_abbrev): Adjust.
15147         (fixup_go_packaging): Adjust.
15148         (process_imported_unit_die): Adjust.
15149         (dwarf2_compute_name): Adjust.
15150         (dwarf2_physname): Adjust.
15151         (read_import_statement): Adjust.
15152         (handle_DW_AT_stmt_list): Adjust.
15153         (read_file_scope): Adjust.
15154         (read_func_scope): Adjust.
15155         (read_lexical_block_scope): Adjust.
15156         (read_call_site_scope): Adjust.
15157         (read_variable): Adjust.
15158         (dwarf2_rnglists_process): Adjust.
15159         (dwarf2_ranges_process): Adjust.
15160         (dwarf2_ranges_read): Adjust.
15161         (dwarf2_get_pc_bounds): Adjust.
15162         (dwarf2_record_block_ranges): Adjust.
15163         (dwarf2_add_field): Adjust.
15164         (dwarf2_add_member_fn): Adjust.
15165         (read_structure_type): Adjust.
15166         (process_structure_scope): Adjust.
15167         (read_enumeration_type): Adjust.
15168         (read_array_type): Adjust.
15169         (mark_common_block_symbol_computed): Adjust.
15170         (read_common_block): Adjust.
15171         (read_namespace_type): Adjust.
15172         (read_namespace): Adjust.
15173         (read_module_type): Adjust.
15174         (read_tag_pointer_type): Adjust.
15175         (read_tag_ptr_to_member_type): Adjust.
15176         (read_tag_string_type): Adjust.
15177         (read_subroutine_type): Adjust.
15178         (read_typedef): Adjust.
15179         (read_base_type): Adjust.
15180         (attr_to_dynamic_prop): Adjust.
15181         (read_subrange_type): Adjust.
15182         (read_unspecified_type): Adjust.
15183         (dwarf2_read_abbrevs): Adjust.
15184         (load_partial_dies): Adjust.
15185         (read_partial_die): Adjust.
15186         (find_partial_die): Adjust.
15187         (guess_partial_die_structure_name): Adjust.
15188         (fixup_partial_die): Adjust.
15189         (read_attribute_value): Adjust.
15190         (read_addr_index): Adjust.
15191         (read_addr_index_from_leb128): Adjust.
15192         (read_str_index): Adjust.
15193         (dwarf2_string_attr): Adjust.
15194         (get_debug_line_section): Adjust.
15195         (dwarf_decode_line_header): Adjust.
15196         (lnp_state_machine::check_line_address): Adjust.
15197         (dwarf_decode_lines_1): Adjust.
15198         (dwarf_decode_lines): Adjust.
15199         (dwarf2_start_symtab): Adjust.
15200         (var_decode_location): Adjust.
15201         (new_symbol_full): Adjust.
15202         (dwarf2_const_value_data): Adjust.
15203         (dwarf2_const_value_attr): Adjust.
15204         (dwarf2_const_value): Adjust.
15205         (die_type): Adjust.
15206         (die_containing_type): Adjust.
15207         (build_error_marker_type): Adjust.
15208         (lookup_die_type): Adjust.
15209         (guess_full_die_structure_name): Adjust.
15210         (anonymous_struct_prefix): Adjust.
15211         (determine_prefix): Adjust.
15212         (dwarf2_name): Adjust.
15213         (follow_die_ref_or_sig): Adjust.
15214         (follow_die_offset): Adjust.
15215         (follow_die_ref): Adjust.
15216         (follow_die_sig_1): Adjust.
15217         (follow_die_sig): Adjust.
15218         (get_signatured_type): Adjust.
15219         (get_DW_AT_signature_type): Adjust.
15220         (decode_locdesc): Adjust.
15221         (dwarf_decode_macros): Adjust.
15222         (cu_debug_loc_section): Adjust.
15223         (fill_in_loclist_baton): Adjust.
15224         (dwarf2_symbol_mark_computed): Adjust.
15225         (init_one_comp_unit): Don't assign
15226         dwarf2_cu::dwarf2_per_objfile.
15227         (set_die_type): Adjust.
15228
15229 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15230
15231         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15232         <dwarf2_per_objfile>: New field.
15233         (dwarf2_per_objfile): Remove global.
15234         (get_dwarf2_per_objfile): New function.
15235         (set_dwarf2_per_objfile): New function.
15236         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15237         dwarf2_per_objfile.
15238         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15239         (read_abbrev_offset): Likewise.
15240         (read_indirect_string): Likewise.
15241         (read_indirect_line_string): Likewise.
15242         (read_indirect_string_at_offset): Likewise.
15243         (read_indirect_string_from_dwz): Likewise.
15244         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15245         dwarf2_per_objfile.
15246         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15247         (create_all_comp_units): Change objfile parameter to
15248         dwarf2_per_objfile.
15249         (create_all_type_units): Likewise.
15250         (process_queue): Add dwarf2_per_objfile parameter.
15251         (read_and_check_comp_unit_head): Likewise.
15252         (lookup_dwo_unit_in_dwp): Likewise.
15253         (get_dwp_file): Likewise.
15254         (process_cu_includes): Likewise.
15255         (struct free_dwo_file_cleanup_data): New struct.
15256         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15257         set_dwarf2_per_objfile.
15258         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15259         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15260         context, adjust calls.
15261         (dw2_instantiate_symtab): Likewise.
15262         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15263         (dw2_get_cu): Likewise.
15264         (create_cu_from_index_list): Change objfile parameter to
15265         dwarf2_per_objfile.
15266         (create_cus_from_index_list): Get dwarf2_per_objfile from
15267         context, adjust calls.
15268         (create_cus_from_index): Likewise.
15269         (create_signatured_type_table_from_index): Change objfile
15270         parameter to dwarf2_per_objfile.
15271         (create_signatured_type_table_from_debug_names): Change objfile
15272         parameter to dwarf2_per_objfile.
15273         (create_addrmap_from_index): Likewise.
15274         (create_addrmap_from_aranges): Likewise.
15275         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15276         (dw2_setup): Remove.
15277         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15278         context.
15279         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15280         get_dwarf2_per_objfile.
15281         (dw2_forget_cached_source_info): Likewise.
15282         (dw2_map_symtabs_matching_filename): Likewise.
15283         (struct dw2_symtab_iterator) <index>: Remove.
15284         <dwarf2_per_objfile>: New field.
15285         (dw2_symtab_iter_init): Replace index parameter with
15286         dwarf2_per_objfile.
15287         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15288         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15289         (dw2_print_stats): Likewise.
15290         (dw2_dump): Likewise.
15291         (dw2_expand_symtabs_for_function): Likewise.
15292         (dw2_expand_all_symtabs): Likewise.
15293         (dw2_expand_symtabs_with_fullname): Likewise.
15294         (dw2_expand_marked_cus): Replace index and objfile parameters
15295         with dwarf2_per_objfile.
15296         (dw_expand_symtabs_matching_file_matcher): Add
15297         dwarf2_per_objfile parameter and adjust calls.
15298         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15299         adjust calls.
15300         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15301         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15302         adjust calls.
15303         (create_cus_from_debug_names_list): Replace objfile parameter
15304         with dwarf2_per_objfile and adjust calls.
15305         (create_cus_from_debug_names): Likewise.
15306         (dwarf2_read_debug_names): Likewise.
15307         (mapped_debug_names::namei_to_name): Adjust call.
15308         (dw2_debug_names_iterator::next): Likewise.
15309         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15310         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15311         (dw2_debug_names_dump): Likewise.
15312         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15313         (dw2_debug_names_expand_symtabs_matching): Likewise.
15314         (dwarf2_initialize_objfile): Likewise.
15315         (dwarf2_build_psymtabs): Likewise.
15316         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15317         this_cu.
15318         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15319         (read_and_check_comp_unit_head): Likewise.
15320         (read_abbrev_offset): Likewise.
15321         (create_debug_type_hash_table): Likewise.
15322         (create_debug_types_hash_table): Likewise.
15323         (create_all_type_units): Replace objfile parameter with
15324         dwarf2_per_objfile.
15325         (add_type_unit): Add dwarf2_per_objfile parameter.
15326         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15327         with dwarf2_per_objfile.
15328         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15329         (lookup_dwp_signatured_type): Likewise.
15330         (lookup_signatured_type): Likewise.
15331         (read_cutu_die_from_dwo): Likewise.
15332         (init_tu_and_read_dwo_dies): Likewise.
15333         (init_cutu_and_read_dies): Likewise.
15334         (init_cutu_and_read_dies_no_follow): Likewise.
15335         (allocate_type_unit_groups_table): Add objfile parameter.
15336         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15337         (get_type_unit_group): Likewise.
15338         (process_psymtab_comp_unit): Update call.
15339         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15340         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15341         (print_tu_stats): Likewise.
15342         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15343         in void* parameter.
15344         (build_type_psymtabs): Change objfile parameter to
15345         dwarf2_per_objfile.
15346         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15347         passed in void* parameter.
15348         (process_skeletonless_type_units): Change objfile parameter to
15349         dwarf2_per_objfile.
15350         (set_partial_user): Likewise.
15351         (dwarf2_build_psymtabs_hard): Likewise.
15352         (read_comp_units_from_section): Likewise.
15353         (create_all_comp_units): Likewise.
15354         (scan_partial_symbols): Update calls.
15355         (add_partial_symbol): Likewise.
15356         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15357         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15358         (process_queue): Add dwarf2_per_objfile parameter.
15359         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15360         (compute_compunit_symtab_includes): Likewise.
15361         (process_cu_includes): Add dwarf2_per_objfile parameter.
15362         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15363         (process_full_type_unit): Likewise.
15364         (process_imported_unit_die): Update call.
15365         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15366         (read_file_scope): Likewise.
15367         (allocate_dwo_file_hash_table): Add objfile parameter.
15368         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15369         (create_cus_hash_table): Likewise.
15370         (create_dwp_hash_table): Likewise.
15371         (create_dwo_unit_in_dwp_v1): Likewise.
15372         (create_dwp_v2_section): Likewise.
15373         (create_dwo_unit_in_dwp_v2): Likewise.
15374         (lookup_dwo_unit_in_dwp): Likewise.
15375         (try_open_dwop_file): Likewise.
15376         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15377         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15378         cleanup to include a reference to dwarf2_per_objfile.
15379         (open_dwp_file): Add dwarf2_per_objfile parameter.
15380         (open_and_init_dwp_file): Likewise.
15381         (get_dwp_file): Likewise.
15382         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15383         (queue_and_load_all_dwo_tus): Update call.
15384         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15385         data.
15386         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15387         (dwarf2_ranges_process): Likewise.
15388         (dwarf2_get_pc_bounds): Likewise.
15389         (mark_common_block_symbol_computed): Likewise.
15390         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15391         (dwarf2_read_abbrevs): Update call.
15392         (read_partial_die): Use dwarf2_per_objfile from cu.
15393         (find_partial_die): Likewise.
15394         (fixup_partial_die): Likewise.
15395         (read_attribute_value): Likewise.
15396         (read_indirect_string_at_offset_from): Add objfile parameter.
15397         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15398         parameter.
15399         (read_indirect_string_from_dwz): Add objfile parameter.
15400         (read_indirect_string): Add objfile parameter.
15401         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15402         (read_addr_index): Use dwarf2_per_objfile from cu.
15403         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15404         call dw2_setup.
15405         (read_str_index): Use dwarf2_per_objfile from cu.
15406         (get_debug_line_section): Likewise.
15407         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15408         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15409         (new_symbol_full): Use dwarf2_per_objfile from cu.
15410         (build_error_marker_type): Likewise.
15411         (lookup_die_type): Likewise.
15412         (determine_prefix): Likewise.
15413         (follow_die_offset): Likewise.
15414         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15415         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15416         (dwarf2_fetch_die_type_sect_off): Likewise.
15417         (dwarf2_get_die_type): Likewise.
15418         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15419         (get_signatured_type): Likewise.
15420         (get_DW_AT_signature_type): Likewise.
15421         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15422         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15423         (cu_debug_loc_section): Likewise.
15424         (fill_in_loclist_baton): Likewise.
15425         (dwarf2_symbol_mark_computed): Likewise.
15426         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15427         dwarf2_per_objfile.
15428         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15429         parameter.
15430         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15431         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15432         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15433         (set_die_type): Use dwarf2_free_objfile from cu.
15434         (get_die_type_at_offset): Likewise.
15435         (dwarf2_per_objfile_free): Don't assign global variable.
15436         (debug_names) <constructor>: Add dwarf2_per_objfile
15437         parameter, update m_debugstrlookup construction.
15438         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15439         parameter.
15440         <m_dwarf2_per_objfile>: New field.
15441         <lookup>: Use m_dwarf2_per_objfile.
15442         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15443         (psyms_seen_size): Likewise.
15444         (write_gdbindex): Replace objfile parameter with
15445         dwarf2_per_objfile.
15446         (write_debug_names): Likewise.
15447         (write_psymtabs_to_index): Likewise.
15448         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15449         calls.
15450
15451 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15452
15453         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15454         <dwarf2_per_objfile>: New field.
15455         (struct dwarf2_per_cu_data) <objfile>: Remove.
15456         <dwarf2_per_objfile>: New field.
15457         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15458         of objfile.
15459         (create_signatured_type_table_from_index): Likewise.
15460         (create_debug_type_hash_table): Likewise.
15461         (fill_in_sig_entry_from_dwo_entry): Likewise.
15462         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15463         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15464         objfile.
15465         (create_partial_symtab): Access objfile through
15466         dwarf2_per_objfile.
15467         (process_psymtab_comp_unit_reader): Likewise.
15468         (read_comp_units_from_section): Likewise.
15469         (scan_partial_symbols): Likewise.
15470         (add_partial_symbol): Likewise.
15471         (add_partial_subprogram): Likewise.
15472         (peek_die_abbrev): Likewise.
15473         (fixup_go_packaging): Likewise.
15474         (process_full_comp_unit): Likewise.
15475         (process_full_type_unit): Likewise.
15476         (process_imported_unit_die): Likewise.
15477         (dwarf2_compute_name): Likewise.
15478         (dwarf2_physname): Likewise.
15479         (read_import_statement): Likewise.
15480         (create_cus_hash_table): Assign dwarf2_physname instead of
15481         objfile.
15482         (read_func_scope): Access objfile through dwarf2_per_objfile.
15483         (read_lexical_block_scope): Likewise.
15484         (read_call_site_scope): Likewise.
15485         (read_variable): Likewise.
15486         (dwarf2_rnglists_process): Likewise.
15487         (dwarf2_ranges_process): Likewise.
15488         (dwarf2_ranges_read): Likewise.
15489         (dwarf2_record_block_ranges): Likewise.
15490         (dwarf2_add_field): Likewise.
15491         (dwarf2_add_member_fn): Likewise.
15492         (read_structure_type): Likewise.
15493         (process_structure_scope): Likewise.
15494         (read_enumeration_type): Likewise.
15495         (read_array_type): Likewise.
15496         (read_common_block): Likewise.
15497         (read_namespace_type): Likewise.
15498         (read_namespace): Likewise.
15499         (read_module_type): Likewise.
15500         (read_tag_pointer_type): Likewise.
15501         (read_tag_ptr_to_member_type): Likewise.
15502         (read_tag_string_type): Likewise.
15503         (read_subroutine_type): Likewise.
15504         (read_typedef): Likewise.
15505         (read_base_type): Likewise.
15506         (attr_to_dynamic_prop): Likewise.
15507         (read_subrange_type): Likewise.
15508         (read_unspecified_type): Likewise.
15509         (load_partial_dies): Likewise.
15510         (read_partial_die): Likewise.
15511         (find_partial_die): Likewise.
15512         (guess_partial_die_structure_name): Likewise.
15513         (fixup_partial_die): Likewise.
15514         (read_attribute_value): Likewise.
15515         (read_addr_index_from_leb128): Likewise.
15516         (dwarf2_read_addr_index): Likewise.
15517         (dwarf2_string_attr): Likewise.
15518         (lnp_state_machine::check_line_address): Likewise.
15519         (dwarf_decode_lines_1): Likewise.
15520         (dwarf_decode_lines): Likewise.
15521         (dwarf2_start_symtab): Likewise.
15522         (var_decode_location): Likewise.
15523         (new_symbol_full): Likewise.
15524         (dwarf2_const_value_data): Likewise.
15525         (dwarf2_const_value_attr): Likewise.
15526         (dwarf2_const_value): Likewise.
15527         (die_type): Likewise.
15528         (die_containing_type): Likewise.
15529         (lookup_die_type): Likewise.
15530         (guess_full_die_structure_name): Likewise.
15531         (anonymous_struct_prefix): Likewise.
15532         (dwarf2_name): Likewise.
15533         (follow_die_ref_or_sig): Likewise.
15534         (follow_die_offset): Likewise.
15535         (follow_die_ref): Likewise.
15536         (dwarf2_fetch_die_loc_sect_off): Likewise.
15537         (dwarf2_fetch_constant_bytes): Likewise.
15538         (dwarf2_fetch_die_type_sect_off): Likewise.
15539         (dwarf2_get_die_type): Likewise.
15540         (follow_die_sig): Likewise.
15541         (decode_locdesc): Likewise.
15542         (dwarf2_per_cu_objfile): Likewise.
15543         (dwarf2_per_cu_text_offset): Likewise.
15544         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15545         objfile.
15546         (set_die_type): Access objfile through
15547         dwarf2_per_objfile.
15548
15549 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15550
15551         * valprint.c (converted_character_d): Remove typedef.
15552         (DEF_VEC_O (converted_character_d)): Remove.
15553         (count_next_character): Use std::vector.
15554         (print_converted_chars_to_obstack): Likewise.
15555         (generic_printstr): Likewise.
15556
15557 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15558
15559         * xml-support.h (struct gdb_xml_value): Add constructor.
15560         <value>: Change type to unique_xmalloc_ptr.
15561         (gdb_xml_value_s): Remove typedef.
15562         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15563         (gdb_xml_element_start_handler): Change parameter type to
15564         std::vector.
15565         (xml_find_attribute): Likewise.
15566         * xml-support.c (xml_find_attribute): Change parameter type to
15567         std::vector and adjust.
15568         (gdb_xml_values_cleanup): Remove.
15569         (gdb_xml_parser::start_element): Adjust to std::vector.
15570         (xinclude_start_include): Change paraeter type to std::vector
15571         and adjust.
15572         * btrace.c (check_xml_btrace_version): Likewise.
15573         (parse_xml_btrace_block): Likewise.
15574         (parse_xml_btrace_pt_config_cpu): Likewise.
15575         (parse_xml_btrace_pt): Likewise.
15576         (parse_xml_btrace_conf_bts): Likewise.
15577         (parse_xml_btrace_conf_pt): Likewise.
15578         * memory-map.c (memory_map_start_memory): Likewise.
15579         (memory_map_start_property): Likewise.
15580         * osdata.c (osdata_start_osdata): Likewise.
15581         (osdata_start_item): Likewise.
15582         (osdata_start_column): Likewise.
15583         * remote.c (start_thread): Likewise.
15584         * solib-aix.c (library_list_start_library): Likewise.
15585         (library_list_start_list): Likewise.
15586         * solib-svr4.c (library_list_start_library): Likewise.
15587         (svr4_library_list_start_list): Likewise.
15588         * solib-target.c (library_list_start_segment): Likewise.
15589         (library_list_start_section): Likewise.
15590         (library_list_start_library): Likewise.
15591         (library_list_start_list): Likewise.
15592         * tracepoint.c (traceframe_info_start_memory): Likewise.
15593         (traceframe_info_start_tvar): Likewise.
15594         * xml-syscall.c (syscall_start_syscall): Likewise.
15595         * xml-tdesc.c (tdesc_start_target): Likewise.
15596         (tdesc_start_feature): Likewise.
15597         (tdesc_start_reg): Likewise.
15598         (tdesc_start_union): Likewise.
15599         (tdesc_start_struct): Likewise.
15600         (tdesc_start_flags): Likewise.
15601         (tdesc_start_enum): Likewise.
15602         (tdesc_start_field): Likewise.
15603         (tdesc_start_enum_value): Likewise.
15604         (tdesc_start_vector): Likewise.
15605
15606 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15607
15608         * extension.h (struct xmethod_worker) <clone>: Remove.
15609         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15610         Remove.
15611         (python_xmethod_worker::clone): Remove.
15612         * valops.c (find_overload_match): Use std::move instead of
15613         clone.
15614
15615 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15616
15617         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15618         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15619         <free_xmethod_worker_data>: Remove.
15620         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15621         <get_xmethod_arg_types>: Remove.
15622         <get_xmethod_result_type>: Remove.
15623         <invoke_xmethod>: Remove.
15624         * extension.c (new_xmethod_worker): Remove.
15625         (clone_xmethod_worker): Remove.
15626         (get_matching_xmethod_workers): Return void, pass std::vector by
15627         pointer.
15628         (get_xmethod_arg_types): Rename to...
15629         (xmethod_worker::get_arg_types): ... this, and adjust.
15630         (get_xmethod_result_type): Rename to...
15631         (xmethod_worker::get_result_type): ... this, and adjust.
15632         (invoke_xmethod): Remove.
15633         (free_xmethod_worker): Remove.
15634         (free_xmethod_worker_vec): Remove.
15635         * extension.h (enum ext_lang_rc): Move here from
15636         extension-priv.h.
15637         (struct xmethod_worker): Add constructor and destructor.
15638         <data>: Remove.
15639         <value>: Remove.
15640         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15641         virtual pure methods.
15642         <get_arg_types, get_result_type>: New methods.
15643         (xmethod_worker_ptr): Remove typedef.
15644         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15645         (xmethod_worker_vec): Remove typedef.
15646         (xmethod_worker_up): New typedef.
15647         (invoke_xmethod): Remove.
15648         (clone_xmethod_worker): Remove.
15649         (free_xmethod_worker): Remove.
15650         (free_xmethod_worker_vec): Remove.
15651         (get_xmethod_arg_types): Remove.
15652         (get_xmethod_result_type): Remove.
15653         * valops.c (find_method_list): Use std::vector, don't use
15654         intermediate vector.
15655         (value_find_oload_method_list): Use std::vector.
15656         (find_overload_match): Use std::vector.
15657         (find_oload_champ): Use std::vector.
15658         * value.c (value_free): Use operator delete.
15659         (value_of_xmethod): Rename to...
15660         (value_from_xmethod): ... this.  Don't assign
15661         xmethod_worker::value, take rvalue-reference.
15662         (result_type_of_xmethod): Adjust.
15663         (call_xmethod): Adjust.
15664         * value.h: Include extension.h.
15665         (struct xmethod_worker): Don't forward-declare.
15666         (value_of_xmethod): Rename to...
15667         (value_from_xmethod): ... this, take rvalue-reference.
15668         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15669         (struct python_xmethod_worker): ... this, add constructor and
15670         destructor.
15671         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15672         (gdbpy_free_xmethod_worker_data): Rename to...
15673         (python_xmethod_worker::~python_xmethod_worker): ... this and
15674         adjust.
15675         (gdbpy_clone_xmethod_worker_data): Rename to...
15676         (python_xmethod_worker::clone): ... this and adjust.
15677         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15678         temporary vector.
15679         (gdbpy_get_xmethod_arg_types): Rename to...
15680         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15681         (gdbpy_get_xmethod_result_type): Rename to...
15682         (python_xmethod_worker::do_get_result_type): ... this and
15683         adjust.
15684         (gdbpy_invoke_xmethod): Rename to...
15685         (python_xmethod_worker::invoke): ... this and adjust.
15686         (new_python_xmethod_worker): Rename to...
15687         (python_xmethod_worker::python_xmethod_worker): ... this and
15688         adjust.
15689         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15690         Remove.
15691         (gdbpy_free_xmethod_worker_data): Remove.
15692         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15693         (gdbpy_get_xmethod_arg_types): Remove.
15694         (gdbpy_get_xmethod_result_type): Remove.
15695         (gdbpy_invoke_xmethod): Remove.
15696         * python/python.c (python_extension_ops): Remove obsolete
15697         callbacks.
15698
15699 2018-01-05  Pedro Alves  <palves@redhat.com>
15700
15701         PR gdb/18653
15702         * common/signals-state-save-restore.c
15703         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15704         find a custom handler preinstalled, instead of internal erroring.
15705         But only warn if !quiet.
15706         * common/signals-state-save-restore.h
15707         (save_original_signals_state): New parameter 'quiet'.
15708         * main.c (captured_main_1): Move save_original_signals_state call
15709         after option handling, and pass QUIET.
15710
15711 2018-01-05  Pedro Alves  <palves@redhat.com>
15712
15713         * spu-tdep.c (spu_catch_start): Pass
15714         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15715
15716 2018-01-05  Pedro Alves  <palves@redhat.com>
15717
15718         PR gdb/22670
15719         * ada-lang.c (literal_symbol_name_matcher): New function.
15720         (ada_get_symbol_name_matcher): Use it for
15721         symbol_name_match_type::SEARCH_NAME.
15722         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15723         it down instead of assuming symbol_name_match_type::FULL.
15724         * block.h (block_lookup_symbol): New parameter 'match_type'.
15725         * c-valprint.c (print_unpacked_pointer): Use
15726         lookup_symbol_search_name instead of lookup_symbol.
15727         * compile/compile-object-load.c (get_out_value_type): Pass down
15728         symbol_name_match_type::SEARCH_NAME.
15729         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15730         symbol_name_match_type::FULL.
15731         * cp-support.c (cp_get_symbol_name_matcher): Handle
15732         symbol_name_match_type::SEARCH_NAME.
15733         * infrun.c (insert_exception_resume_breakpoint): Use
15734         lookup_symbol_search_name.
15735         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15736         * psymtab.c (maintenance_check_psymtabs): Use
15737         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15738         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15739         SYMBOL_SEARCH_NAME.
15740         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15741         if symbol_name_match_type::SEARCH_NAME.
15742         (lookup_symbol_in_language): Pass down
15743         symbol_name_match_type::FULL.
15744         (lookup_symbol_search_name): New.
15745         (lookup_language_this): Pass down
15746         symbol_name_match_type::SEARCH_NAME.
15747         (lookup_symbol_aux, lookup_local_symbol): New parameter
15748         'match_type'.  Pass it down.
15749         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15750         (lookup_symbol_search_name): New declaration.
15751         (lookup_symbol_in_block): New 'match_type' parameter.
15752
15753 2018-01-05  Pedro Alves  <palves@redhat.com>
15754
15755         PR gdb/22670
15756         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15757         ada_lookup_symbol.
15758         (ada_lookup_symbol): Reimplement in terms of
15759         ada_lookup_symbol_list, bits factored out from
15760         ada_lookup_encoded_symbol.
15761
15762 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15763
15764         * ada-exp.y (write_object_renaming): When subscripting an array
15765         using a symbol as the index, pass the block in call to
15766         ada_lookup_encoded_symbol when looking that symbol up.
15767
15768 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15769
15770         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15771         TYPE_INDEX_TYPE.
15772
15773 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15774
15775         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15776         the case where VALUE_LVAL (val0) is not lval_memory.
15777
15778 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15779
15780         * ada-valprint.c (print_optional_low_bound): Handle
15781         character-indexed array printing like boolean-indexed array
15782         printing.
15783
15784 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15785
15786         * NEWS: Create a new section for the next release branch.
15787         Rename the section of the current branch, now that it has
15788         been cut.
15789
15790 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15791
15792         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15793         * version.in: Bump version to 8.1.50.DATE-git.
15794
15795 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15796
15797         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15798         Add field.
15799         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15800         Add field.
15801         (default_exception_support_info) <catch_handlers_sym>: Add field.
15802         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15803         (ada_exception_name_addr_1): Add "catch handlers" handling.
15804         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15805         Update all callers.
15806         (create_excep_cond_exprs) <ex>: Add parameter.
15807         (re_set_exception): Update create_excep_cond_exprs call.
15808         (print_it_exception, print_one_exception, print_mention_exception)
15809         (print_recreate_exception): Add "catch handler" handling.
15810         (allocate_location_catch_handlers, re_set_catch_handlers)
15811         (check_status_catch_handlers, print_it_catch_handlers)
15812         (print_one_catch_handlers, print_mention_catch_handlers)
15813         (print_recreate_catch_handlers): New function.
15814         (catch_handlers_breakpoint_ops): New variable.
15815         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15816         Add parameter.  Add "catch handler" handling.
15817         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15818         Add "catch handler" handling.
15819         (ada_exception_catchpoint_cond_string): Add "catch handler"
15820         handling.
15821         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15822         call.
15823         (catch_ada_handlers_command): New function.
15824         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15825         operations structure.
15826         (_initialize_ada_language): Add "catch handlers" command entry.
15827         * NEWS: Document "catch handlers" feature.
15828
15829 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15830
15831         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15832         account when creating the array type of the slice.
15833         (ada_value_slice): Likewise.
15834
15835 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15836
15837         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15838         New enum value.
15839         (create_array_type_with_stride): Add byte_stride_prop parameter.
15840         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15841         New parameter.  Update all callers in this file.
15842         (array_type_has_dynamic_stride): New function.
15843         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15844         of arrays with dynamic byte strides.
15845         * dwarf2read.c (read_array_type): Add support for dynamic
15846         DW_AT_byte_stride attributes.
15847
15848 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15849
15850         * dwarf2read.c (read_unspecified_type): Treat
15851         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15852
15853 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15854
15855         Update copyright year range in all GDB files.
15856
15857 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15858
15859         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15860         and gdb/testsuite/gdb.base/step-line.c.
15861
15862 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15863
15864         * copyright.py (main): Dump the contents of
15865         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15866         even if BY_HAND is empty.
15867
15868 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15869
15870         * top.c (print_gdb_version): Update Copyright year in version
15871         message.
15872
15873 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15874
15875         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15876
15877 For older changes see ChangeLog-2017.
15878 \f
15879 Local Variables:
15880 mode: change-log
15881 left-margin: 8
15882 fill-column: 74
15883 version-control: never
15884 coding: utf-8
15885 End: