Fix regression 'info variables' does not show minimal symbols.
[external/binutils.git] / gdb / ChangeLog
1 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2
3         * symtab.c (search_symbols): Properly check absence of type regexp
4         before entering the loop scanning the minimal symbols.
5
6 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
7
8         * s12z-tdep.c (s12z_extract_return_value): New function.
9         (inv_reg_perm) New array.
10         (s12z_return_value): Populate readbuf if non-null.
11
12 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
13
14         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
15         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
16         to MinGW fixed by Gnulib.
17         (O_NOINHERIT): Define if not defined.
18
19 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
20
21         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
22
23 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
24
25         * infrun.c (displaced_step_inferior_state) <next>: Remove.
26
27 2018-11-19  Tom Tromey  <tom@tromey.com>
28
29         * source.c (get_filename_and_charpos): Return void.
30
31 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
32
33         * skip.c (_initialize_step_skip): Fix "info skip" help.
34
35 2018-11-16  Tom Tromey  <tom@tromey.com>
36
37         PR rust/23625:
38         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
39
40 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
41
42         * infrun.c (displaced_step_inferior_states): Change type to
43         std::forward_list.
44         (get_displaced_stepping_state): Adjust.
45         (displaced_step_in_progress_any_inferior): Adjust.
46         (add_displaced_stepping_state): Adjust.
47         (remove_displaced_stepping_state): Adjust.
48
49 2018-11-18  Tom Tromey  <tom@tromey.com>
50
51         PR build/23814:
52         * target-delegates.c: Rebuild.
53         * ia64-linux-nat.c (class ia64_linux_nat_target)
54         <have_steppable_watchpoint>: Use override.  Return true, not 1.
55         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
56         "self" argument.
57         (ia64_linux_nat_target::low_new_thread): Rename.
58         (class ia64_linux_nat_target) <read_description>: Don't declare.
59         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
60         bool.
61
62 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
63
64         PR gdb/22736:
65         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
66         lang_struct_return code.
67
68 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
69
70         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
71         return_method.
72         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
73         * amd64-tdep.c (amd64_push_arguments): Likewise.
74         (amd64_push_dummy_call): Likewise.
75         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
76         * arc-tdep.c (arc_push_dummy_call): Likewise.
77         * arm-tdep.c (arm_push_dummy_call): Likewise.
78         * avr-tdep.c (avr_push_dummy_call): Likewise.
79         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
80         * cris-tdep.c (cris_push_dummy_call): Likewise.
81         * csky-tdep.c (csky_push_dummy_call): Likewise.
82         * frv-tdep.c (frv_push_dummy_call): Likewise.
83         * gdbarch.c: Regenerate.
84         * gdbarch.h: Regenerate.
85         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
86         return_method.
87         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
88         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
89         (hppa64_push_dummy_call): Likewise.
90         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
91         * i386-tdep.c (i386_push_dummy_call): Likewise.
92         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
93         * infcall.c (call_function_by_hand_dummy): Likewise.
94         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
95         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
96         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
97         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
98         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
99         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
100         * mep-tdep.c (mep_push_dummy_call): Likewise.
101         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
102         (mips_n32n64_push_dummy_call): Likewise.
103         (mips_o32_push_dummy_call): Likewise.
104         (mips_o64_push_dummy_call): Likewise.
105         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
106         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
107         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
108         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
109         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
110         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
111         (ppc64_sysv_abi_push_dummy_call): Likewise.
112         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
113         (ppc64_sysv_abi_push_dummy_call): Likewise.
114         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
115         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
116         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
117         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
118         * rx-tdep.c (rx_push_dummy_call): Likewise.
119         * s390-tdep.c (s390_push_dummy_call): Likewise.
120         * score-tdep.c (score_push_dummy_call): Likewise.
121         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
122         (sh_push_dummy_call_nofpu): Likewise.
123         * sparc-tdep.c (sparc32_store_arguments): Likewise.
124         (sparc32_push_dummy_call): Likewise.
125         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
126         (sparc64_push_dummy_call): Likewise.
127         * spu-tdep.c (spu_push_dummy_call): Likewise.
128         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
129         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
130         * v850-tdep.c (v850_push_dummy_call): Likewise.
131         * vax-tdep.c (vax_push_dummy_call): Likewise.
132         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
133         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
134
135 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
136
137         * gdbarch.sh (enum function_call_return_method): Add enum.
138         * gdbarch.h: Regenerate.
139         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
140
141 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
142
143         * unittests/copy_bitwise-selftests.c: New file.
144         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
145         (selftests::copy_bitwise_tests): Delete, moving this code to
146         unittests/copy_bitwise-selftests.c instead.
147         (_initialize_utils): Do not register copy_bitwise tests.
148         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
149         unittests/copy_bitwise-selftests.c.
150
151 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
152
153         * ada-lang.c (move_bits): Delete. Update all callers to use
154         copy_bitwise instead.
155         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
156         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
157         Move from here to utils.c.
158         (_initialize_dwarf2loc): Remove call to register copy_bitwise
159         selftests.
160         * utils.h (copy_bitwise): Add declaration.
161         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
162         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
163         Moved here from dwarf2loc.c.
164         (_initialize_utils): Register copy_bitwise selftests.
165
166 2018-11-14  Jim Wilson  <jimw@sifive.com>
167
168         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
169         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
170         then increment next_regnum if odd.
171         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
172         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
173         function type.  Pass new arg to riscv_arg_location based on function
174         type.
175         (riscv_return_value): Pass new arg to riscv_arg_location.
176
177         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
178         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
179         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
180
181         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
182         setting len.  New local align, set to max of arg align and xlen,
183         and pass to first riscv_assign_stack_location call.
184
185 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
186
187         * skip.c (complete_skip_number): New function.
188         (_initialize_step_skip): Add completers to some skip commands.
189
190 2018-11-09  Tom Tromey  <tom@tromey.com>
191
192         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
193         (struct remote_g_packet_data): Derive from allocate_on_obstack.
194         <guesses>: Now a std::vector.
195         (remote_g_packet_data_init, register_remote_g_packet_guess):
196         Update.
197         (remote_read_description_p): Update.  Return bool.
198         (remote_target::read_description): Update.
199         (struct remote_g_packet_guess): Add constructor.
200
201 2018-11-09  Tom Tromey  <tom@tromey.com>
202
203         * common/scoped_fd.h (class scoped_fd): Add move constructor and
204         move assignment operator.
205         * psymtab.c (psymtab_to_fullname): Update.
206         * source.h (open_source_file): Return scoped_fd.
207         (find_and_open_source): Likewise.
208         * source.c (open_source_file): Return scoped_fd.
209         (get_filename_and_charpos): Update.
210         (print_source_lines_base): Update.  Use scoped_fd::to_file.
211         (forward_search_command): Likewise.
212         (reverse_search_command): Likewise.
213         (find_and_open_source): Return scoped_fd.
214         * tui/tui-source.c (tui_set_source_content): Update.  Use
215         gdb_file_up.
216
217 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
218
219         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
220         overflow.
221
222 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
223
224         * configure: Regenerate.
225
226 2018-11-09  Tom de Vries  <tdevries@suse.de>
227
228         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
229         unconditionally, to set the language of the symbol.  Manage freeing
230         returned pointer using gdb::unique_xmalloc_ptr.
231
232 2018-11-08  Tom Tromey  <tom@tromey.com>
233
234         * record.c (require_record_target): Upper-case "<TAB>".
235
236 2018-11-08  Tom Tromey  <tom@tromey.com>
237
238         * python/lib/gdb/command/pretty_printers.py
239         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
240
241 2018-11-08  Tom Tromey  <tom@tromey.com>
242
243         PR gdb/23555:
244         PR gdb/23838:
245         * target.h (target_supports_terminal_ours): Return bool.
246         * target.c (target_supports_terminal_ours): Handle case where
247         current_top_target returns nullptr.  Return bool.
248
249 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
250
251         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
252         return the correct count for potential HFAs.
253
254 2018-11-08  Jan Beulich  <jbeulich@suse.com>
255
256         * i387-tdep.c (i387_supply_xsave): Split handling of
257         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
258         (i387_collect_xsave): Likewise.
259
260 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
261
262         * riscv-tdep.c (riscv_insn::decode): Update header comment.
263         (riscv_frame_this_id): Catch errors thrown while building the
264         frame cache, leave the frame id as the default, which is the outer
265         frame id.
266
267 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
268
269         * ada-lang.c (read_atcb): Only set task_info->called_task if
270         task_info->state == Entry_Caller_Sleep.
271         (print_ada_task_info): Do not check task_info->state before
272         checking task_info->called_task.
273         (info_task): Likewise.
274
275 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
276
277         * ada-tasks.c (read_atcb): Clear task_info before computing
278         the value of each of its fields.
279
280 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
281
282         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
283         NULL before dereferencing it.
284
285 2018-11-06  Tom de Vries  <tdevries@suse.de>
286
287         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
288         program headers.
289
290 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
291
292         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
293         so that it applies to uclinux as well.
294
295 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
296
297         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
298         when on AAPCS.
299
300 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
301
302         * riscv-fbsd-nat.c (getregs_supplies): Return true for
303         RISCV_CSR_SSTATUS_REGNUM.
304
305 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
306
307         * source.c (open_source_file): Fix leak by transferring the
308         current s->fullname to the unique_xmalloc_ptr fullname given
309         to find_and_open_source.
310
311 2018-11-04  Tom Tromey  <tom@tromey.com>
312
313         * varobj.c (install_default_visualizer): Update.
314         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
315         Return gdbpy_ref.
316         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
317         (find_pretty_printer_from_progspace)
318         (find_pretty_printer_from_gdb, find_pretty_printer)
319         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
320         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
321         Update.
322
323 2018-11-04  Tom Tromey  <tom@tromey.com>
324
325         * python/python.c (gdbpy_parameter_value): Update.
326         * python/python-internal.h (python_string_to_unicode)
327         (python_string_to_target_python_string)
328         (host_string_to_python_string): Return gdbpy_ref.
329         * python/py-utils.c (python_string_to_unicode)
330         (unicode_to_encoded_python_string)
331         (unicode_to_target_python_string)
332         (python_string_to_target_string)
333         (python_string_to_target_python_string): Return gdbpy_ref.
334         (python_string_to_host_string): Update.
335         (host_string_to_python_string): Return gdbpy_ref.
336         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
337         (stpy_fullname): Update.
338         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
339         Update.
340         * python/py-prettyprint.c (print_string_repr): Update.
341         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
342         (objfpy_get_build_id): Update.
343         * python/py-breakpoint.c (bppy_get_location)
344         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
345         Update.
346
347 2018-11-04  Tom Tromey  <tom@tromey.com>
348
349         * python/python-internal.h (gdb_py_object_from_longest)
350         (gdb_py_object_from_ulongest): Return gdbpy_ref.
351         * python/py-value.c (valpy_int): Update.
352         * python/py-utils.c (gdb_py_object_from_longest): Return
353         gdbpy_ref.
354         (gdb_py_object_from_ulongest): Likewise.
355         * python/py-type.c (typy_get_alignof): Update.
356         * python/py-linetable.c (ltpy_get_all_source_lines)
357         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
358         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
359
360 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
361
362         * ada-lang.c (_initialize_ada_language): Fix typo.
363
364 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
365
366         * language.c (type): Remove.
367         (_initialize_language): Remove assignment to type.
368
369 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
370
371         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
372         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
373         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
374         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
375         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
376         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
377         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
378         and aarch64-ravenscar-thread.o.
379         * NEWS: Add entry documenting Ravenscar tasking support
380         on AArch64 ELF.
381
382 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
383
384         * symtab.c (info_functions_command): Initialize quiet flag.
385         * stack.c (info_args_command): Likewise.
386
387 2018-11-01  Jim Wilson  <jimw@sifive.com>
388
389         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
390         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
391         debugging messages.
392
393 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
394
395         * ada-lang.c (ada_watch_location_expression): New function.
396         (ada_language_defn): Set la_watch_location_expression to
397         ada_watch_location_expression.
398
399 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
400
401         * print-utils.c (int_string): Remove unnecessary trailing spaces.
402
403 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
404
405         * rs6000-tdep.c (skip_prologue): Fix potential negative left
406         shifting.
407
408 2018-11-01  Jerome Guitton  <guitton@adacore.com>
409             Joel Brobecker  <brobecker@adacore.com>
410
411         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
412         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
413         * arm-pikeos-tdep.c: New file.
414         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
415         embedded system.
416         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
417
418 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
419
420         * common/pathstuff.c (get_standard_temp_dir): New.
421         * common/pathstuff.h (get_standard_temp_dir): New.
422         * config.in: Re-generate.
423         * configure: Re-generate.
424         * configure.ac: Don't check for mkdtemp.
425         * gnulib/aclocal-m4-deps.mk: Re-generate.
426         * gnulib/aclocal.m4: Re-generate.
427         * gnulib/config.in: Re-generate.
428         * gnulib/configure: Re-generate.
429         * gnulib/import/Makefile.am: Re-generate.
430         * gnulib/import/Makefile.in: Re-generate.
431         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
432         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
433         * gnulib/import/m4/mkdtemp.m4: New file.
434         * gnulib/import/mkdtemp.c: New file.
435         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
436         Add mkdtemp module.
437         * unittests/mkdir-recursive-selftests.c (test): Use
438         get_standard_temp_dir.
439         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
440         ifdef.
441         * compile/compile.c (get_compile_file_tempdir): Likewise.
442
443 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
444
445         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
446         (SIG_FRAME_LR_OFFSET64): New define.
447         (SIG_FRAME_FP_OFFSET64): New define.
448         (aix_sighandle_frame_cache): New Function.
449         (aix_sighandle_frame_this_id): New Function.
450         (aix_sighandle_frame_prev_register): New Function.
451         (aix_sighandle_frame_sniffer): New Function.
452         (aix_sighandle_frame_unwind): New global variable.
453         (rs6000_aix_init_osabi): Install new frame unwinder.
454
455 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
456
457         PR gdb/23835
458         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
459         already defined.
460
461 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
462
463         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
464
465 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
466
467         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
468         (producer_is_icc): New function.
469         (check_producer): Set producer_is_icc field on dwarf2_cu.
470         (dwarf2_init_integer_type): New function.
471         (read_base_type): Call dwarf2_init_integer_type instead of
472         init_integer_type in all cases.
473         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
474         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
475         LEN is greater than 0.
476
477 2018-10-30  Tom Tromey  <tom@tromey.com>
478
479         * main.c (captured_main_1): Check return value of bfd_init.
480
481 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
482
483         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
484         Adjust comments.
485
486 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
487
488         * procfs.c: Include common/pathstuff.h.
489
490 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
491
492         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
493         Add missing braces.  No functional change.
494
495 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
496
497         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
498         to report a bad option and fix indentation.
499         * demangle.c (demangle_command): Use report_unrecognized_option_error
500         to report a bad option and correctly report the bad option.
501
502 2018-10-27  Tom Tromey  <tom@tromey.com>
503
504         PR cli/23364:
505         * darwin-nat.c (copied_shell): New global.
506         (may_have_sip): Rename from should_disable_startup_with_shell.
507         (copy_shell_to_cache, maybe_cache_shell): New functions.
508         (darwin_nat_target::create_inferior): Update.  Use
509         copied_shell.
510
511 2018-10-27  Tom Tromey  <tom@tromey.com>
512
513         * unittests/scoped_fd-selftests.c (test_to_file): New function.
514         (run_tests): Call test_to_file.
515         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
516         temporary files.
517         * common/scoped_fd.h (scoped_fd::to_file): New method.
518
519 2018-10-27  Tom Tromey  <tom@tromey.com>
520
521         * unittests/scoped_mmap-selftests.c (test_normal): Use
522         gdb_mkostemp_cloexec.
523         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
524         Use gdb_mkostemp_cloexec.
525         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
526         gnulib/config.in, gnulib/configure,
527         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
528         gnulib/import/m4/gnulib-cache.m4,
529         gnulib/import/m4/gnulib-comp.m4: Update.
530         * gnulib/import/m4/mkostemp.m4: New file.
531         * gnulib/import/m4/mkstemp.m4: Remove.
532         * gnulib/import/mkostemp.c: New file.
533         * gnulib/import/mkstemp.m4: Remove.
534         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
535         mkstemp, add mkostemp.  Apply new patch.
536         * gnulib/import/stdlib.in.h: Apply patch.
537         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
538         New file.
539         * dwarf-index-write.c (write_psymtabs_to_index): Use
540         gdb_mkostemp_cloexec.
541         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
542
543 2018-10-27  Tom Tromey  <tom@tromey.com>
544
545         * unittests/mkdir-recursive-selftests.c: New file.
546         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
547         unittests/mkdir-recursive-selftests.c.
548         * dwarf-index-cache.c (mkdir_recursive): Move to
549         common/filestuff.c.
550         (index_cache::store): Check return value of mkdir_recursive.
551         (create_dir_and_check, test_mkdir_recursive): Move to new file.
552         (_initialize_index_cache): Don't register test.
553         * common/filestuff.h (mkdir_recursive): Declare.
554         * common/filestuff.c (mkdir_recursive): Move from
555         dwarf-index-cache.c.  Return bool.
556
557 2018-10-27  Tom Tromey  <tom@tromey.com>
558
559         * dwarf-index-write.c (write_psymtabs_to_index): Move
560         make_temp_filename to common/pathstuff.c.
561         * common/pathstuff.h (make_temp_filename): Declare.
562         * common/pathstuff.c (make_temp_filename): New function, moved
563         from dwarf-index-write.c.
564
565 2018-10-27  Tom Tromey  <tom@tromey.com>
566
567         * procfs.c (procfs_target::create_inferior): Use get_shell.
568         * cli/cli-cmds.c (shell_escape): Use get_shell.
569         * windows-nat.c (windows_nat_target::create_inferior): Use
570         get_shell.
571         * common/pathstuff.c (get_shell): New function.
572         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
573         (fork_inferior): Use get_shell.
574         * common/pathstuff.h (get_shell): Declare.
575
576 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
577
578         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
579
580 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
581
582         * stack.c (print_variable_and_value_data): Add preg and treg.
583         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
584         and update callers.
585         (print_frame_arg_vars): Likewise.
586         (prepare_reg): New function.
587         (info_locals_command): Extract info print args and use them.
588         (info_args_command): Likewise.
589         (_initialize_stack): Modify on-line help.
590         * symtab.c (treg_matches_sym_type_name): New function.
591         (search_symbols): New arg t_regexp.
592         (symtab_symbol_info): New args quiet, regexp, t_regexp.
593         (info_variables_command): Extract info print args and use them.
594         (info_functions_command): Likewise.
595         (info_types_command): Update call to symtab_symbol_info.
596         (_initialize_symtab): Modify on-line help.
597         * symtab.h (treg_matches_sym_type_name): New function.
598         (search_symbols): New t_regexp arg.
599
600 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
601
602         * cli-utils.c (extract_arg_maybe_quoted): New function.
603         (extract_info_print_args): New function.
604         (info_print_args_help): New function.
605         (report_unrecognized_option_error): New function.
606         * cli-utils.h (extract_arg_maybe_quoted): New function.
607         (extract_info_print_args): New function.
608         (info_print_args_help): New function.
609         (report_unrecognized_option_error): New function.
610
611 2018-10-26  Tom Tromey  <tom@tromey.com>
612
613         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
614         (compute_compunit_symtab_includes): Update.
615         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
616         (compunit_symtab_ptr): Likewise.
617
618 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
619
620         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
621         default_print_auxv_entry for specific tag values.
622
623 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
624
625         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
626
627 2018-10-26  Jim Wilson  <jimw@sifive.com>
628
629         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
630         (riscv_linux_sigframe_init): Declare.
631         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
632         (riscv_linux_sigframe): New.
633         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
634         (riscv_linux_sigframe_init): Define.
635         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
636
637         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
638         (riscv_isa_flen): Likewise.  Drop static.
639         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
640         (riscv_isa_flen): Likewise.  Declare.
641
642 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
643             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
644
645         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
646         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
647         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
648         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
649         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
650         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
651         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
652         Define.
653         (struct ppc_linux_features) <htm>: New field.
654         (ppc_linux_no_features): Add initializer for htm field.
655         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
656         new tdescs.
657         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
658         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
659         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
660         Define if not already defined.
661         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
662         and rs6000/powerpc-isa207-htm-vsx64l.
663         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
664         rs6000/powerpc-isa207-htm-vsx64l.xml.
665         * features/rs6000/power-htm-spr.xml: New file.
666         * features/rs6000/power-htm-core.xml: New file.
667         * features/rs6000/power64-htm-core.xml: New file.
668         * features/rs6000/power-htm-fpu.xml: New file.
669         * features/rs6000/power-htm-altivec.xml: New file.
670         * features/rs6000/power-htm-vsx.xml: New file.
671         * features/rs6000/power-htm-ppr.xml: New file.
672         * features/rs6000/power-htm-dscr.xml: New file.
673         * features/rs6000/power-htm-tar.xml: New file.
674         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
675         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
676         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
677         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
678         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
679         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
680         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
681         fetch_regset with HTM regsets.
682         (store_register, store_ppc_registers): Call store_regset with HTM
683         regsets.
684         (ppc_linux_nat_target::read_description): Set htm field in the
685         features struct if needed.
686         * ppc-linux-tdep.c: Include
687         features/rs6000/powerpc-isa207-htm-vsx32l.c and
688         features/rs6000/powerpc-isa207-htm-vsx64l.c.
689         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
690         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
691         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
692         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
693         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
694         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
695         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
696         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
697         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
698         (ppc32_linux_ctarregset): New globals.
699         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
700         (ppc_linux_collect_core_cpgrregset): New function.
701         (ppc_linux_iterate_over_regset_sections): Call back with the htm
702         regsets.
703         (ppc_linux_core_read_description): Check if the tm spr section is
704         present and set htm in the features struct.
705         (_initialize_ppc_linux_tdep): Call
706         initialize_tdesc_powerpc_isa207_htm_vsx32l and
707         initialize_tdesc_powerpc_isa207_htm_vsx64l.
708         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
709         Declare.
710         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
711         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
712         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
713         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
714         New fields.
715         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
716         Likewise.
717         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
718         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
719         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
720         New enum fields.
721         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
722         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
723         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
724         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
725         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
726         <PPC_CTAR_REGNUM>: Likewise.
727         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
728         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
729         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
730         (IS_CEFP_PSEUDOREG): Define.
731         (rs6000_register_name): Hide the upper halves of checkpointed VSX
732         registers.  Return names for the checkpointed DFP, VSX, and EFP
733         pseudo registers.
734         (rs6000_pseudo_register_type): Remove initial assert and raise an
735         internal error in the else clause instead.  Return types for the
736         checkpointed DFP, VSX, and EFP pseudo registers.
737         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
738         checkpointed DFP pseudo registers.
739         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
740         checkpointed VSX pseudo registers.
741         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
742         from efpr_pseudo_register_read and
743         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
744         registers.
745         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
746         Handle checkpointed DFP, VSX, and EFP registers.
747         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
748         (efp_ax_pseudo_register_collect): New functions.
749         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
750         register logic to new functions.  Handle checkpointed DFP, VSX,
751         and EFP pseudo registers.
752         (rs6000_gdbarch_init): Look for and validate the htm features.
753         Include checkpointed DFP, VSX and EFP pseudo-registers.
754         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
755         HTM registers.
756
757 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
758
759         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
760         without altivec or fpu.
761
762 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
763             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
764
765         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
766         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
767         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
768         Define if not already defined.
769         * features/rs6000/power-ebb.xml: New file.
770         * features/rs6000/power-linux-pmu.xml: New file.
771         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
772         features.
773         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
774         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
775         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
776         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
777         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
778         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
779         fetch_regset with ebb and pmu regsets.
780         (store_register, store_ppc_registers): Call store_regset with ebb
781         and pmu regsets.
782         (ppc_linux_nat_target::read_description): Set isa207 field in the
783         features struct if ebb and pmu are avaiable.
784         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
785         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
786         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
787         and pmu regsets.
788         (ppc_linux_core_read_description): Check if the pmu section is
789         present and set isa207 in the features struct.
790         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
791         (ppc32_linux_pmuregset): Declare.
792         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
793         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
794         <ppc_sier_regnum>: New field.
795         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
796         New enum values.
797         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
798         values.
799         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
800         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
801         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
802         ebb and pmu features.
803
804 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
805             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
806
807         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
808         (tdesc_powerpc_isa207_vsx64l): Declare.
809         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
810         (struct ppc_linux_features) <isa207>: New field.
811         (ppc_linux_no_features): Add initializer for isa207 field.
812         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
813         new tdescs.
814         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
815         (NT_PPC_TAR): Define if not already defined.
816         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
817         rs6000/powerpc-isa207-vsx64l.
818         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
819         rs6000/powerpc-isa207-vsx64l.xml.
820         * features/rs6000/power-tar.xml: New file.
821         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
822         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
823         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
824         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
825         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
826         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
827         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
828         fetch_regset with the TAR regset.
829         (store_register, store_ppc_registers): Call store_regset with the
830         TAR regset.
831         (ppc_linux_nat_target::read_description): Set isa207 field in the
832         features struct if needed.
833         * ppc-linux-tdep.c: Include
834         features/rs6000/powerpc-isa207-vsx32l.c and
835         features/rs6000/powerpc-isa207-vsx64l.c.
836         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
837         (ppc_linux_iterate_over_regset_sections): Call back with the tar
838         regset.
839         (ppc_linux_core_read_description): Check if the tar section is
840         present and set isa207 in the features struct.
841         (_initialize_ppc_linux_tdep): Call
842         initialize_tdesc_powerpc_isa207_vsx32l and
843         initialize_tdesc_powerpc_isa207_vsx64l.
844         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
845         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
846         (enum) <PPC_TAR_REGNUM>: New enum value.
847         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
848         feature.
849         (ppc_process_record_op31): Record changes to TAR.
850
851 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
852             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
853
854         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
855         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
856         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
857         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
858         (struct ppc_linux_features) <ppr_dscr>: New field.
859         (ppc_linux_no_features): Add initializer for ppr_dscr field.
860         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
861         new tdescs.
862         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
863         Define if not already defined.
864         * features/Makefile (WHICH): Add
865         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
866         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
867         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
868         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
869         * features/rs6000/power-dscr.xml: New file.
870         * features/rs6000/power-ppr.xml: New file.
871         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
872         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
873         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
874         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
875         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
876         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
877         * ppc-linux-nat.c: Include <sys/uio.h>.
878         (fetch_regset, store_regset, check_regset): New functions.
879         (fetch_register, fetch_ppc_registers): Call fetch_regset with
880         DSCR and PPR regsets.
881         (store_register, store_ppc_registers): Call store_regset with
882         DSCR and PPR regsets.
883         (ppc_linux_get_hwcap2): New function.
884         (ppc_linux_nat_target::read_description): Call
885         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
886         features struct if needed.
887         * ppc-linux-tdep.c: Include
888         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
889         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
890         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
891         (ppc32_linux_dscrregset): New globals.
892         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
893         and dscr regsets.
894         (ppc_linux_core_read_description): Check if the ppr and dscr
895         sections are present and set ppr_dscr in the features struct.
896         (_initialize_ppc_linux_tdep): Call
897         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
898         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
899         * ppc-linux-tdep.h (ppc32_linux_pprregset)
900         (ppc32_linux_dscrregset): Declare.
901         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
902         <ppc_dscr_regnum>: New field.
903         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
904         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
905         and dscr features.
906         (ppc_process_record_op31): Record changes to PPR and DSCR.
907
908 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
909
910         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
911         second initializer line for the have_* variables.  Initialize
912         have_fpu to 0 instead of 1.
913
914 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
915
916         * arch/ppc-linux-common.c (ppc_linux_match_description):
917         Parenthesize tdesc assignements and indent them properly.
918
919 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
920
921         * ppc-linux-nat.c (fetch_register): Change if statement to else
922         if.
923         (store_register): Likewise.
924
925 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
926
927         * rs6000-tdep.c: Remove reggroups.h include.
928         (rs6000_pseudo_register_reggroup_p): Remove.
929         (rs6000_gdbarch_init): Remove call to
930         set_tdesc_pseudo_register_reggroup_p.
931
932 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
933
934         * reggroups.c (default_register_reggroup_p): Return true for
935         decfloat registers and float_reggroup.
936
937 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
938
939         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
940         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
941         ppc_linux_collect_vrregset by regcache_collect_regset.
942
943 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
944
945         * linux-tdep.c (linux_collect_regset_section_cb): Use
946         std::vector<gdb_byte> instead of char * and malloc for buf.
947         Remove xfree.
948
949 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
950
951         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
952         symtab_start instead of always using language_unknown.
953
954 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
955
956         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
957         READ_P parameter, catch and ignore register access errors from
958         either the old or new MISA location.
959         (riscv_has_feature): Update call to riscv_read_misa_reg.
960
961 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
962
963         * python/py-function.c (convert_values_to_python): Return
964         gdbpy_ref<>.  Add header comment.
965         (fnpy_call): Adjust.
966
967 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
968
969         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
970         (cmdpy_completer_handle_brkchars): Adjust.
971         (cmdpy_completer): Adjust.
972
973 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
974
975         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
976         Pass correct regnum to raw_supply_zeroed.
977
978 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
979
980         * regcache.c (cooked_read_test): Add CSKY to the list of
981         architectures with a save_reggroup
982
983 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
984
985         PR gdb/23368
986         * infrun.c (follow_exec): In the follow_exec_mode_new case,
987         transfer terminal state from old new new inferior.
988         * terminal.h (swap_terminal_info): New function.
989         * inflow.c (swap_terminal_info): New function.
990
991 2018-10-23  Tom Tromey  <tom@tromey.com>
992
993         * record-btrace.c (get_thread_current_frame_id): Rename from
994         get_thread_current_frame.  Return a frame_id.
995         (record_btrace_start_replaying): Update.
996
997 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
998
999         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1000         for CSRs.
1001
1002 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1003
1004         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1005         have_nonsteppable_watchpoint attribute to 1.
1006
1007 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1008
1009         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1010         register names.
1011         (struct register_alias): Rename to...
1012         (struct riscv_register_alias): ...this, and update comment.
1013         (riscv_register_aliases): Update type, and alias names.  Remove
1014         CSR names from this list.
1015         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1016         register names.  Add an extra assertion.
1017         (riscv_is_regnum_a_named_csr): New function.
1018         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1019
1020 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1021
1022         * configure.tgt: Add configuration for s12z.
1023         * s12z-tdep.c:  New file.
1024         * NEWS: Mention new target.
1025
1026 2018-10-22  Jim Wilson  <jimw@sifive.com>
1027
1028         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1029         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1030
1031         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1032         (riscv_register_type): Use them.
1033         (riscv_print_one_register_info): Handle union of floats same as float.
1034         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1035         riscv_fpreg_q_type fields.
1036
1037 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1038
1039         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1040         * gdbarch.h: Re-generate.
1041         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1042         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1043         * eval.c (evaluate_subexp_standard): Likewise.
1044         * findvar.c (value_of_register): Likewise.
1045         (value_of_register_lazy): Likewise.
1046         (address_from_register): Likewise.
1047         * frame.c (get_frame_register_bytes): Likewise.
1048         * gdbarch-selftests.c (register_to_value_test): Likewise.
1049         * h8300-tdep.c (h8300_register_type): Likewise.
1050         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1051         (i386_svr4_reg_to_regnum): Likewise.
1052         * infcmd.c (default_print_registers_info): Likewise.
1053         (registers_info): Likewise.
1054         (print_vector_info): Likewise.
1055         (default_print_float_info): Likewise.
1056         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1057         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1058         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1059         (mi_cmd_data_list_changed_registers): Likewise.
1060         (mi_cmd_data_list_register_values): Likewise.
1061         (mi_cmd_data_write_register_values): Likewise.
1062         (mi_cmd_trace_frame_collected): Likewise.
1063         * mips-tdep.c (print_gp_register_row): Likewise.
1064         (mips_print_registers_info): Likewise.
1065         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1066         * regcache.c (init_regcache_descr): Likewise.
1067         (register_size): Likewise.
1068         (register_dump::dump): Likewise.
1069         (cooked_read_test): Likewise.
1070         (cooked_write_test): Likewise.
1071         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1072         (rs6000_gdbarch_init): Likewise.
1073         * stabsread.c (stab_reg_to_regnum): Likewise.
1074         * stack.c (info_frame_command): Likewise.
1075         * target-descriptions.c (tdesc_register_name): Likewise.
1076         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1077         * tui/tui-regs.c (tui_show_register_group): Likewise.
1078         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1079         (user_reg_map_regnum_to_name): Likewise.
1080         (value_of_user_reg): Likewise.
1081         (maintenance_print_user_registers): Likewise.
1082         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1083         (xtensa_register_name): Likewise.
1084         (xtensa_register_type): Likewise.
1085         (xtensa_reg_to_regnum): Likewise.
1086         (xtensa_pseudo_register_read): Likewise.
1087         (xtensa_pseudo_register_write): Likewise.
1088
1089 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1090
1091         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1092         correctly-sized buffer with raw_read.
1093         (amd64_pseudo_register_write): Use correctly-sized buffer for
1094         raw_read/raw_write.
1095
1096 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1097
1098         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1099         in add_prefix_cmd of set print type.
1100
1101 2018-10-19  Tom Tromey  <tom@tromey.com>
1102
1103         PR tui/18388:
1104         * NEWS: Mention tabset deprecation.
1105         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1106         (update_tab_width): New function.
1107         (tui_set_tab_width, tui_show_tab_width): New functions.
1108         (tui_set_tab_width_command): Use update_tab_width.
1109         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1110         Add new "set tui tab-width" command.
1111         * tui/tui-source.c (tui_set_source_content): Update.
1112         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1113         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1114         Don't declare.
1115         (tui_tab_width): Declare.
1116         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1117         (tui_set_default_tab_len): Remove.
1118
1119 2018-10-19  Tom Tromey  <tom@tromey.com>
1120
1121         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1122         (key_is_backspace, tui_getc): Don't declare.
1123         * tui/tui-io.c (key_is_start_sequence): Now static.
1124         (key_is_end_sequence, key_is_backspace): Remove.
1125         (tui_getc): Now static.
1126
1127 2018-10-19  Tom Tromey  <tom@tromey.com>
1128
1129         * symfile.c (reread_symbols): Clear "static_links".
1130
1131 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1132
1133         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1134         define.
1135         (aarch64_linux_sigframe_init): Extra boundary checks.
1136
1137 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1138
1139         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1140         the possibly non-existent tdesc type 'vec128', but the type of raw
1141         register v16 instead.
1142
1143 2018-10-19  Gary Benson <gbenson@redhat.com>
1144
1145         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1146
1147 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1148
1149         PR cli/23785
1150         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1151         NULL.
1152
1153 2018-10-17  Paul Koning  <paul_koning@dell.com>
1154
1155         * charset.c (convert_between_encodings): Fix unsigned overflow.
1156
1157 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1158
1159         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1160         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1161         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1162         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1163         New functions.
1164         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1165         and fbsd_info_proc_mappings_header.
1166         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1167         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1168         New.
1169
1170 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1171
1172         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1173         Solaris Maintainer.
1174
1175 2018-10-15  Tom Tromey  <tom@tromey.com>
1176
1177         * tui/tui.c (strcat_to_buf): Remove casts.
1178         * tui/tui-winsource.c (tui_show_source_line)
1179         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1180         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1181         * tui/tui-windata.c (tui_first_data_item_displayed)
1182         (tui_delete_data_content_windows, tui_erase_data_content)
1183         (tui_display_all_data, tui_display_data_from)
1184         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1185         * tui/tui-win.c (tui_set_win_height)
1186         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1187         casts.
1188         * tui/tui-win.c (tui_resize_all): Remove casts.
1189         (tui_scroll_backward_command, tui_set_focus)
1190         (tui_set_tab_width_command): Likewise.
1191         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1192         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1193         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1194         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1195         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1196         Remove casts.
1197
1198 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1199
1200         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1201         AArch64/ARM maintainer.
1202
1203 2018-10-11  Gary Benson <gbenson@redhat.com>
1204
1205         * interps.h (interp::m_name): Make private and mutable.
1206         * interps.c (interp::~interp): Free m_name.
1207
1208 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1209             Simon Marchi <simark@simark.ca>
1210
1211         * README (`configure' options): Add documentation for new
1212         "--enable-unit-tests" option.
1213         * acinclude.m4: Include "selftest.m4".
1214         * configure: Regenerate.
1215         * configure.ac: Use "GDB_AC_SELFTEST".
1216         * maint.c (maintenance_selftest): Update message informing
1217         that selftests have been disabled.
1218         (maintenance_info_selftests): Likewise.
1219         * selftest.m4: New file.
1220
1221 2018-10-10  Gary Benson <gbenson@redhat.com>
1222
1223         * remote.c (remote_target::remote_send_printf): Add
1224         missing va_end found by Coverity.
1225
1226 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1227
1228         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1229
1230 2018-10-09  Tom Tromey  <tom@tromey.com>
1231
1232         * configure: Rebuild.
1233         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1234         * NEWS: Update --enable-ubsan documentation.
1235
1236 2018-10-09  Gary Benson <gbenson@redhat.com>
1237
1238         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1239         found by Coverity.
1240
1241 2018-10-08  Tom Tromey  <tom@tromey.com>
1242
1243         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1244         variable.
1245         (riscv_fbsd_init_abi): Likewise.
1246
1247 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1248         * valops.c (value_struct_elt_for_reference): Rename local variable
1249         to work around the shadowing a previous local warning.
1250
1251 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1252
1253         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1254         * NEWS: Mention new FreeBSD/riscv native configuration.
1255         * configure.host: Add riscv*-*-freebsd*.
1256         * configure.nat: Likewise.
1257         * riscv-fbsd-nat.c: New file.
1258
1259 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1260
1261         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1262         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1263         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1264         * NEWS: Mention new FreeBSD/riscv target.
1265         * configure.tgt: Add riscv*-*-freebsd*.
1266         * riscv-fbsd-tdep.c: New file.
1267         * riscv-fbsd-tdep.h: New file.
1268
1269 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1270
1271         * regcache.h (struct regcache_map_entry): Note that this type can
1272         be used with traditional frame caches.
1273         * trad-frame.c (trad_frame_set_reg_regmap): New.
1274         * trad-frame.h (trad_frame_set_reg_regmap): New.
1275
1276 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1277
1278         PR c++/16841
1279         * valops.c (get_virtual_base_offset): New function.
1280         (value_struct_elt_for_reference): Use it to get virtual base offset
1281         and add it in calculating class member address.
1282
1283 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1284
1285         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1286         (check_producer): Check if the producer is codewarrior.
1287         (producer_is_codewarrior): New function.
1288         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1289         produced by codewarrior.
1290         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1291
1292 2018-10-06  Tom Tromey  <tom@tromey.com>
1293
1294         PR python/19399:
1295         * python/py-inferior.c: Add "architecture" entry.
1296         (infpy_architecture): New function.
1297
1298 2018-10-06  Tom Tromey  <tom@tromey.com>
1299
1300         PR python/21765:
1301         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1302         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1303         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1304         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1305
1306 2018-10-06  Tom Tromey  <tom@tromey.com>
1307
1308         PR build/17077:
1309         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1310         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1311         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1312         #include.
1313
1314 2018-10-06  Tom Tromey  <tom@tromey.com>
1315
1316         * python/py-breakpoint.c (bppy_get_location): Handle a
1317         bp_breakpoint without a location.
1318
1319 2018-10-06  Tom Tromey  <tom@tromey.com>
1320
1321         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1322         (_RegEx): Reformat help text.
1323         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1324         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1325         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1326         text.
1327         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1328         (EnableXMethod, DisableXMethod): Remove help indentation.
1329         Capitalize meta-syntactic variables.
1330         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1331         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1332         Capitalize meta-syntactic variables.
1333         * python/lib/gdb/command/explore.py (ExploreCommand)
1334         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1335         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1336         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1337         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1338         Remove help indentation.
1339         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1340         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1341         (DisableFrameFilter, SetFrameFilterPriority)
1342         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1343
1344 2018-10-06  Tom Tromey  <tom@tromey.com>
1345
1346         PR tui/28819:
1347         * tui/tui-io.c (gdb_wgetch): New function.
1348         (tui_mld_getc, tui_getc): Use it.
1349
1350 2018-10-05  Tom Tromey  <tom@tromey.com>
1351
1352         * sol-thread.c (sol_thread_target::wait): Rename inner
1353         "save_ptid".
1354
1355 2018-10-04  Tom Tromey  <tom@tromey.com>
1356
1357         * configure: Rebuild.
1358         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1359
1360 2018-10-04  Tom Tromey  <tom@tromey.com>
1361
1362         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1363         declaration of "block".
1364
1365 2018-10-04  Tom Tromey  <tom@tromey.com>
1366
1367         * common/filestuff.c (fdwalk): Remove inner declaration of
1368         "result".
1369
1370 2018-10-04  Tom Tromey  <tom@tromey.com>
1371
1372         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1373         "structs_addr" and hoist declaration.
1374
1375 2018-10-04  Tom Tromey  <tom@tromey.com>
1376
1377         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1378         variable "size".
1379
1380 2018-10-04  Tom Tromey  <tom@tromey.com>
1381
1382         * mdebugread.c (parse_partial_symbols): Use std::string.
1383
1384 2018-10-04  Tom Tromey  <tom@tromey.com>
1385
1386         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1387         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1388         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1389         header.
1390         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1391         more inner scope.
1392         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1393         * varobj.c (varobj_update): Rename inner "newobj",
1394         "type_changed".
1395         * valprint.c (generic_emit_char): Rename inner "buf".
1396         * valops.c (find_overload_match): Rename inner "temp".
1397         (value_struct_elt_for_reference): Declare "v" in more inner
1398         scope.
1399         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1400         * unittests/array-view-selftests.c (run_tests): Rename inner
1401         "vec".
1402         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1403         header.
1404         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1405         "tsv" in more inner scope.
1406         (print_one_static_tracepoint_marker): Rename inner
1407         "tuple_emitter".
1408         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1409         (tic6x_push_dummy_call): Don't redeclare "addr".
1410         * target-float.c: Declare "dto" lower.
1411         * symtab.c (lookup_local_symbol): Rename inner "sym".
1412         (find_pc_sect_line): Rename inner "pc".
1413         * stack.c (print_frame): Don't redeclare "gdbarch".
1414         (return_command): Rename inner "gdbarch".
1415         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1416         "sp".
1417         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1418         header.
1419         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1420         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1421         scope.
1422         * remote.c (remote_target::update_thread_list): Don't redeclare
1423         "tp".
1424         (remote_target::process_initial_stop_replies): Rename inner
1425         "thread".
1426         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1427         (remote_target::wait_as): Don't redeclare "stop_reply".
1428         (remote_target::get_thread_local_address): Rename inner
1429         "result".
1430         (remote_target::get_tib_address): Likewise.
1431
1432         * regcache.c (cooked_read_test): Rename "regnum".
1433         * record-btrace.c (cmd_record_btrace_start): Rename inner
1434         "exception".
1435         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1436         loop header.
1437         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1438         header.
1439         (ppu2spu_sniffer): Rename inner "buf".
1440         * parse.c (operator_check_standard): Rename inner "type",
1441         "objfile".
1442         * p-valprint.c (pascal_val_print): Introduce new scope for
1443         "low_bound", "high_bound".
1444         * p-exp.y (yylex): Declare "i" in loop header.
1445         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1446         Lower declaration of "s".
1447         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1448         header.
1449         (nios2_push_dummy_call): Rename "len".
1450         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1451         "buf".
1452         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1453         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1454         (linux_xfer_osdata_modules): Likewise.
1455         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1456         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1457         (mips_o64_push_dummy_call): Likewise.
1458         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1459         "op".
1460         * mi/mi-main.c (list_available_thread_groups): Rename inner
1461         "tuple_emitter".
1462         (mi_cmd_data_read_memory): Rename inner "opts".
1463         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1464         "tuple_emitter".
1465         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1466         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1467         more inner scope.
1468         (parse_partial_symbols): Rename inner "pst", "p", "name"
1469         * main.c (captured_main_1): Rename inner "i"s.
1470         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1471         "oso2".
1472         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1473         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1474         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1475         (handle_signal_stop): Rename inner "gdbarch".
1476         (handle_command): Declare "signum" in loop header.
1477         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1478         "status".
1479         (examine_prologue): Rename inner "sol" and "sof".
1480         (ia64_extract_return_value): Rename inner "val".  Declare another
1481         "val" in a more inner scope.
1482         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1483         inner scope.
1484         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1485         "except".
1486         * findvar.c (default_read_var_value): Don't redeclare "addr".
1487         * f-exp.y (yylex): Declare "i" in loop header.
1488         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1489         Rename inner "type", "expect_type".
1490         (evaluate_subexp_for_sizeof): Rename inner "pc".
1491         * elfread.c (elf_symfile_read): Rename inner "abfd".
1492         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1493         "bytes_read".
1494         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1495         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1496         (dwarf_decode_line_header): Rename inner "lh".
1497         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1498         "offset".  Declare "i" in loop header.
1499         (disassemble_dwarf_expression): Rename inner "addr_size".
1500         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1501         inner "result".
1502         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1503         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1504         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1505         "inner_list_emitter".
1506         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1507         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1508         declaration in a block.
1509         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1510         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1511         "obstack_final_size".
1512         * cp-support.c (inspect_type): Declare "i" in loop header.
1513         * compile/compile.c (compile_instance::insert_symbol_error):
1514         Rename inner "e".
1515         * common/agent.c (agent_run_command): Remove inner "ret"
1516         declaration.
1517         * coffread.c (coff_symfile_read): Rename inner "name".
1518         (coff_symfile_read): Rename inner "abfd".
1519         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1520         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1521         "high".
1522         * c-exp.y (lex_one_token): Move "len" declaration lower.
1523         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1524         "gdbarch".
1525         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1526         "b".
1527         (watch_command_1): Declare "mark" later.
1528         (clear_command): Don't shadow "a" or "b".
1529         (delete_command): Rename inner "b".
1530         (delete_trace_command): Likewise.
1531         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1532         "op".
1533         (arm_gdbarch_init): Remove inner "e_flags".
1534         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1535         "offset" in inner blocks.
1536
1537 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1538
1539         * dwarf-index-write.c (file_write): Don't write if the vector is
1540         empty.
1541
1542 2018-10-05  Tom de Vries  <tdevries@suse.de>
1543
1544         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1545         PyArg_ParseTuple call.
1546
1547 2018-10-05  Tom de Vries  <tdevries@suse.de>
1548
1549         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1550         PyArg_ParseTuple call.
1551
1552 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1553
1554         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1555         to avoid exceeding 80 characters per line limit.
1556
1557 2018-10-04  Tom Tromey  <tom@tromey.com>
1558
1559         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1560         (reread_symbols): Update.
1561         * complaints.h (clear_complaints): Remove argument.
1562         * complaints.c (enum complaint_series): Remove.
1563         (series): Remove global.
1564         (complaint_internal): Update.
1565         (clear_complaints): Remove argument.
1566
1567 2018-10-04  Tom Tromey  <tom@tromey.com>
1568
1569         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1570         debugging symbols" message if there is a separate debug objfile.
1571
1572 2018-10-04  Tom Tromey  <tom@tromey.com>
1573
1574         PR cli/19551:
1575         * symfile.c (symbol_file_add_with_addrs): Update output.
1576         * psymtab.c (require_partial_symbols): Update output.
1577
1578 2018-10-04  Tom Tromey  <tom@tromey.com>
1579
1580         PR cli/22234:
1581         * complaints.c: Emit \n.
1582
1583 2018-10-04  Tom Tromey  <tom@tromey.com>
1584
1585         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1586         (separate_debug_file_exists, find_separate_debug_file)
1587         (add_symbol_file_command, reread_symbols, allocate_symtab)
1588         (allocate_compunit_symtab): Use filtered printing, not
1589         unfiltered.
1590         * psymtab.c (require_partial_symbols, dump_psymtab)
1591         (allocate_psymtab): Use filtered printing, not unfiltered.
1592
1593 2018-10-04  Tom Tromey  <tom@tromey.com>
1594
1595         * complaints.c (complaint_internal): Correctly check complaint
1596         count.
1597
1598 2018-10-04  Tom Tromey  <tom@tromey.com>
1599
1600         * complaints.h (struct complaints): Remove declaration.
1601         * complaints.c (clear_complaints): Remove an unused variable.
1602
1603 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1604
1605         * MAINTAINERS (Write After Approval): Add self.
1606
1607 2018-10-03  Tom Tromey  <tom@tromey.com>
1608
1609         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1610         "buffer_contents".
1611         * coffread.c (coff_symtab_read): Initialize "newobj".
1612
1613 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1614
1615         * dwarf2read.c (read_func_scope): Remove struct keyword in
1616         range-based for.
1617
1618 2018-10-03  Tom Tromey  <tom@tromey.com>
1619
1620         * README: Mention --enable-ubsan.
1621         * NEWS: Mention --enable-ubsan.
1622         * acinclude.m4: Include sanitize.m4.
1623         * configure: Rebuild.
1624         * configure.ac: Call AM_GDB_UBSAN.
1625         * sanitize.m4: New file.
1626
1627 2018-10-03  Tom Tromey  <tom@tromey.com>
1628
1629         * expression.h (enum exp_opcode): Use uint8_t as base type.
1630         * expprint.c (op_name): Handle invalid opcodes.
1631
1632 2018-10-03  Tom Tromey  <tom@tromey.com>
1633
1634         * parse.c (prefixify_expression): Add assert.
1635         (parse_exp_in_context_1): Throw exception if the expression is
1636         empty.
1637
1638 2018-10-03  Tom Tromey  <tom@tromey.com>
1639
1640         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1641
1642 2018-10-03  Tom Tromey  <tom@tromey.com>
1643
1644         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1645
1646 2018-10-03  Tom Tromey  <tom@tromey.com>
1647
1648         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1649         unsigned.
1650
1651 2018-10-03  Tom Tromey  <tom@tromey.com>
1652
1653         * findvar.c (extract_integer): Do work in an unsigned type.
1654
1655 2018-10-03  Tom Tromey  <tom@tromey.com>
1656
1657         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1658         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1659         base type.
1660         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1661         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1662         type.
1663         * c-lang.h (enum c_string_type_values): Use unsigned as base
1664         type.
1665         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1666
1667 2018-10-03  Tom Tromey  <tom@tromey.com>
1668
1669         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1670         <~dwarf2_frame_state_reg_info>: Update.
1671         <dwarf2_frame_state_reg_info>: Update.
1672         <alloc_regs>: Add assertion.  Update.
1673         <reg>: Now a std::vector.
1674         <num_regs>: Remove.
1675         <swap>: Update.
1676         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1677         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1678
1679 2018-10-03  Tom Tromey  <tom@tromey.com>
1680
1681         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1682
1683 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1684
1685         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1686
1687 2018-10-02  Tom Tromey  <tom@tromey.com>
1688
1689         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1690
1691 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
1692
1693         * NEWS: Mention changed commands.
1694         * ser-uds.c: New file.
1695         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1696         * configure: Regenerate.
1697         * Makefile.in: Add new file.
1698         * serial.c (serial_open): Check if filename is a socket
1699         and lookup the appropriate interface accordingly.
1700
1701 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1702
1703         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1704         define.
1705         (AARCH64_EXTRA_MAGIC): Likewise.
1706         (AARCH64_FPSIMD_MAGIC): Likewise.
1707         (AARCH64_SVE_MAGIC): Likewise.
1708         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1709         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1710         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1711         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1712         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1713         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1714         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1715         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1716         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1717         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1718         (read_aarch64_ctx): Add function.
1719         (aarch64_linux_sigframe_init): Detect FP registers.
1720
1721 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1722
1723         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1724         (AARCH64_D0_REGNUM): Likewise.
1725         (AARCH64_S0_REGNUM): Likewise.
1726         (AARCH64_H0_REGNUM): Likewise.
1727         (AARCH64_B0_REGNUM): Likewise.
1728         (AARCH64_SVE_V0_REGNUM): Likewise.
1729         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1730         (AARCH64_D0_REGNUM): Likewise.
1731         (AARCH64_S0_REGNUM): Likewise.
1732         (AARCH64_H0_REGNUM): Likewise.
1733         (AARCH64_B0_REGNUM): Likewise.
1734         (AARCH64_SVE_V0_REGNUM): Likewise.
1735
1736 2018-10-01  Gary Benson <gbenson@redhat.com>
1737
1738         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1739         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1740         prfpregset_t instead of gdb_prfpregset_t.
1741         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1742         * configure, config.in: Rebuild.
1743
1744 2018-10-01  Gary Benson <gbenson@redhat.com>
1745
1746         * common/gdb_proc_service.h: New file, factored out from...
1747         * gdb_proc_service.h: Moved common code to the above file.
1748         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1749
1750 2018-10-01  Gary Benson <gbenson@redhat.com>
1751
1752         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1753         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1754
1755 2018-10-01  Gary Benson <gbenson@redhat.com>
1756
1757         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1758         (AC_CHECK_HEADERS): Check for linux/elf.h.
1759         * configure, config.in: Rebuild.
1760         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1761         doesn't define elf_fpregset_t.
1762
1763 2018-10-01  Gary Benson <gbenson@redhat.com>
1764
1765         * gdb_proc_service.h: Whitespace change.
1766
1767 2018-10-01  Tom Tromey  <tom@tromey.com>
1768
1769         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1770         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1771         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1772
1773 2018-10-01  Tom Tromey  <tom@tromey.com>
1774
1775         * README: Minor change.
1776
1777 2018-09-30  Pedro Alves  <palves@redhat.com>
1778
1779         * darwin-nat-info.c (darwin_debug_regions_recurse)
1780         (info_mach_exceptions_command): Remove unused local variables.
1781         * darwin-nat.c (darwin_decode_notify_message)
1782         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1783         (darwin_stop_inferior, darwin_setup_exceptions)
1784         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1785         (darwin_nat_target::attach, darwin_nat_target::detach)
1786         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1787         local variables.
1788         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1789         variables.
1790
1791 2018-09-29  Tom Tromey  <tom@tromey.com>
1792
1793         * README: Remove some leftover text.
1794
1795 2018-09-29  Tom Tromey  <tom@tromey.com>
1796
1797         * PROBLEMS: Rewrite.
1798         * README: Update.
1799
1800 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1801
1802         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1803         case with explicit breakpoint kind.
1804         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1805         'additional_info' and related logic.
1806         (riscv_debug_breakpoints): New variable.
1807         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1808         instruction to determine the breakpoint kind.
1809         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1810         flag.  Update description of 'set/show riscv
1811         use-compressed-breakpoints' flag.
1812
1813 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1814
1815         (NEWS): Mention changes to frame related commands.
1816         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1817         (add_prefix_cmd_suppress_notification): New function.
1818         (add_com_suppress_notification): Call
1819         add_cmd_suppress_notification.
1820         * command.h (add_cmd_suppress_notification): Declare.
1821         (add_prefix_cmd_suppress_notification): Declare.
1822         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1823         (parse_frame_specification): Moved from stack.c, with
1824         simplification to handle a single argument.
1825         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1826         switch to the selected frame.  Add a header comment.
1827         * stack.c: Remove 'safe-ctype.h' include.
1828         (find_frame_for_function): Add declaration.
1829         (find_frame_for_address): New function.
1830         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1831         (frame_selection_by_function_completer): New function.
1832         (info_frame_command): Rename to...
1833         (info_frame_command_core): ...this, and update parameter types.
1834         (select_frame_command): Rename to...
1835         (select_frame_command_core): ...this, and update parameter types.
1836         (frame_command): Rename to...
1837         (frame_command_core): ...this, and update parameter types.
1838         (class frame_command_helper): New class to wrap implementations of
1839         frame related sub-commands.
1840         (frame_apply_cmd_list): New static global.
1841         (frame_cmd_list): Make static.
1842         (select_frame_cmd_list): New global for sub-commands.
1843         (info_frame_cmd_list): New global for sub-commands.
1844         (_initialize_stack): Register sub-commands for 'frame',
1845         'select-frame', and 'info frame'.  Update 'frame apply' commands
1846         to use frame_apply_cmd_list.  Move function local static
1847         frame_apply_list to file static frame_apply_cmd_list for
1848         consistency.
1849         * stack.h (select_frame_command): Delete declarationn.
1850         (select_frame_for_mi): Declare new function.
1851
1852 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1853
1854         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1855         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1856         and NOP.
1857
1858 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1859
1860         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1861
1862 2018-09-26  Tom Tromey  <tom@tromey.com>
1863
1864         * valops.c (auto_abandon): Remove dead code.
1865
1866 2018-09-26  Tom Tromey  <tom@tromey.com>
1867
1868         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1869
1870 2018-09-24  Tom Tromey  <tom@tromey.com>
1871
1872         * common/pathstuff.c (get_standard_cache_dir): Make
1873         "xdg_cache_home" and "home" const.
1874         * top.c (init_history): Make "tmpenv" const.
1875         * main.c (get_init_files): Make "homedir" const.
1876
1877 2018-09-23  Tom Tromey  <tom@tromey.com>
1878
1879         PR python/18852:
1880         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1881
1882 2018-09-23  Tom Tromey  <tom@tromey.com>
1883
1884         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1885         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1886         * python/python-internal.h (gdbpy_handle_exception): Declare.
1887         * python/py-utils.c (gdbpy_handle_exception): New function.
1888
1889 2018-09-23  Tom Tromey  <tom@tromey.com>
1890
1891         PR python/17284:
1892         * python/py-type.c (typy_template_argument): Check for negative
1893         argument number.
1894
1895 2018-09-23  Tom Tromey  <tom@tromey.com>
1896
1897         PR python/14062:
1898         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1899
1900 2018-09-23  Tom Tromey  <tom@tromey.com>
1901
1902         PR python/18170:
1903         * python/py-value.c (valpy_int): Allow conversion from pointer
1904         type.
1905
1906 2018-09-23  Tom Tromey  <tom@tromey.com>
1907
1908         PR python/20126:
1909         * python/py-value.c (valpy_int): Respect type sign.
1910
1911 2018-09-23  Tom Tromey  <tom@tromey.com>
1912
1913         PR python/18352;
1914         * python/py-value.c (valpy_float): Allow conversions from int or
1915         char.
1916         (valpy_int, valpy_long): Allow conversions from float.
1917
1918 2018-09-23  Tom Tromey  <tom@tromey.com>
1919
1920         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1921         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1922
1923 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1924
1925         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1926         __sighndlr.
1927         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1928
1929 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1930
1931         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1932         target_terminal::ours().
1933
1934 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1935
1936         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1937         of vl to ULONGEST.
1938
1939 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1940
1941         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1942         redundant condition.
1943
1944 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1945
1946         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1947
1948         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1949         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1950         * sol-thread.c (ps_pdmodel): Don't guard definition.
1951
1952         * procfs.c: Fix formatting.
1953
1954         * procfs.c (sysset_t_alloc): Remove.
1955         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1956         (procfs_debug_inferior): Likewise.
1957         (procfs_set_exec_trap): Likewise.
1958         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1959         (proc_set_traced_sysexit): Likewise.
1960
1961         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1962         (dead_procinfo): Likewise.
1963         (proc_warn): Likewise.
1964         (proc_error): Likewise.
1965         (proc_get_LDT_entry): Likewise.
1966         (do_attach): Likewise.
1967         (procfs_target::pid_to_str): Likewise.
1968         (iterate_over_mappings): Likewise.
1969
1970         * procfs.c (create_procinfo): Fix ARI warning.
1971         (proc_get_status): Likewise.
1972         (proc_stop_process): Likewise.
1973         (proc_run_process): Likewise.
1974         (proc_kill): Likewise.
1975         (proc_get_LDT_entry): Likewise.
1976         (procfs_find_LDT_entry): Likewise.
1977         (proc_update_threads): Likewise.
1978         (proc_iterate_over_threads): Likewise.
1979         (do_attach): Likewise.
1980         (procfs_xfer_memory): Likewise.
1981         (invalidate_cache): Likewise.
1982         (procfs_target::resume): Likewise.
1983         (procfs_init_inferior): Likewise.
1984         (procfs_set_exec_trap): Likewise.
1985         (procfs_target::thread_alive): Likewise.
1986         (procfs_target::pid_to_exec_file): Likewise.
1987         (iterate_over_mappings): Likewise.
1988         (procfs_target::make_corefile_notes): Likewise.
1989         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1990
1991         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1992         (procfs_find_LDT_entry): Likewise.
1993         * sol-thread.c (ps_lgetLDT): Likewise.
1994
1995 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1996
1997         PR tdep/17903
1998         * procfs.c (procfs_target): Declare pid_to_exec_file.
1999         (procfs_target::pid_to_exec_file): New.
2000
2001 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2002
2003         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2004         renaming.
2005         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2006         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2007
2008 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2009
2010         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2011         (supply_fpregset, fill_fpregset): Move ...
2012         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2013         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2014         Remove references to ioctl-based procfs.
2015         Include <sys/reg.h>.
2016         Remove PR_MODEL_NATIVE guards.
2017         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2018         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2019
2020 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2021
2022         PR gdb/20981:
2023         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2024         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2025         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2026
2027 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2028
2029         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2030         (fbsd_print_sockaddr_in6): Likewise.
2031
2032 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2033             Chris January  <chris.january@arm.com>
2034
2035         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2036         (evaluate_subexp_standard): Return a dummy type when
2037         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2038         OP_F77_UNDETERMINED_ARGLIST case.
2039         * expression.h (enum noside): Update comment.
2040
2041 2018-09-19  George Vasick <george.vasick@oracle.com>
2042
2043         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2044
2045 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2046             April Chin <april.chin@oracle.com>
2047             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2048
2049         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2050         uint_t lwpid_t.
2051         (create_procinfo): Print pids in /proc without leading zeros.
2052
2053 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2054
2055         * nios2-tdep.c (nios2_gcc_target_options): New.
2056         (nios2_gdb_arch_init): Install new hook.
2057
2058 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2059
2060         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2061         New file.
2062         * update-gnulib.sh: Apply patch.
2063         * configure: Re-generate.
2064
2065 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2066
2067         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2068         description.  Make "info proc" command descriptions more
2069         consistent.
2070
2071 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2072
2073         * NEWS: Mention 'info proc files' command.
2074
2075 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2076
2077         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2078         descriptors for IP_FILES and IP_ALL.
2079
2080 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2081
2082         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2083         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2084         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2085         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2086         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2087         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2088         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2089         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2090         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2091         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2092         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2093         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2094         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2095         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2096         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2097         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2098         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2099         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2100         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2101         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2102         (struct fbsd_sockaddr_un): New types.
2103         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2104         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2105         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2106         (fbsd_core_info_proc_files): New functions.
2107         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2108         IP_ALL.
2109         * fbsd-tdep.h (fbsd_info_proc_files_header)
2110         (fbsd_info_proc_files_entry): New.
2111
2112 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2113
2114         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2115         * infcmd.c (info_proc_cmd_files): New function.
2116         (_initialize_infcmd): Register 'info proc files' command.
2117
2118 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2119
2120         * gnulib/aclocal-m4-deps.mk: Re-generate.
2121         * gnulib/aclocal.m4: Re-generate.
2122         * gnulib/config.in: Re-generate.
2123         * gnulib/configure: Re-generate.
2124         * gnulib/import/Makefile.am: Re-generate.
2125         * gnulib/import/Makefile.in: Re-generate.
2126         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2127         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2128         * gnulib/import/arpa_inet.in.h: New file.
2129         * gnulib/import/inet_ntop.c: New file.
2130         * gnulib/import/m4/arpa_inet_h.m4: New file.
2131         * gnulib/import/m4/inet_ntop.m4: New file.
2132         * gnulib/import/m4/netinet_in_h.m4: New file.
2133         * gnulib/import/m4/socklen.m4: New file.
2134         * gnulib/import/m4/sockpfaf.m4: New file.
2135         * gnulib/import/m4/stdalign.m4: New file.
2136         * gnulib/import/m4/sys_uio_h.m4: New file.
2137         * gnulib/import/netinet_in.in.h: New file.
2138         * gnulib/import/stdalign.in.h: New file.
2139         * gnulib/import/sys_socket.c: New file.
2140         * gnulib/import/sys_socket.in.h: New file.
2141         * gnulib/import/sys_uio.in.h: New file.
2142         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2143         module.
2144
2145 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2146
2147         * gnulib/aclocal-m4-deps.mk: New file.
2148         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2149         deterministically.
2150
2151 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2152
2153         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2154         KVE_PATH.
2155
2156 2018-09-18  Tom Tromey  <tom@tromey.com>
2157
2158         * compile/compile-object-load.c (struct
2159         link_hash_table_cleanup_data): Add constructor and destructor.
2160         Use DISABLE_COPY_AND_ASSIGN.
2161         (~link_hash_table_cleanup_data): Rename from
2162         link_hash_table_free.  Now a destructor.
2163         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2164
2165 2018-09-18  Tom Tromey  <tom@tromey.com>
2166
2167         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2168         * compile/compile-object-load.c (struct munmap_list): Move to
2169         header file.
2170         (munmap_list::add): Rename from munmap_list_add; rewrite.
2171         (munmap_list::~munmap_list): Rename from munmap_list_free.
2172         (munmap_listp_free_cleanup): Remove.
2173         (compile_object_load): Update.
2174         * compile/compile-object-load.h (struct munmap_list): Move from
2175         compile-object-load.c.  Rewrite.
2176
2177 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2178
2179         * aarch64-tdep.c (pass_in_v): Use register size.
2180         (aarch64_extract_return_value): Likewise.
2181         (aarch64_store_return_value): Likewise.
2182
2183 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2184
2185         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2186         rlim_t.
2187
2188 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2189
2190         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2191         Fix short help line.
2192
2193 2018-09-17  Tom Tromey  <tom@tromey.com>
2194
2195         PR python/20445:
2196         * configure: Rebuild.
2197         * configure.ac: Conditionally use -DNDEBUG for Python.
2198
2199 2018-09-17  Tom Tromey  <tom@tromey.com>
2200
2201         * configure: Rebuild.
2202         * configure.ac: Use gmp as a library dependency when checking for
2203         mpfr.
2204
2205 2018-09-17  Pedro Alves  <palves@redhat.com>
2206
2207         * python/py-inferior.c (find_inferior_object): Delete.
2208
2209 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2210
2211         * compile/compile-cplus-types.c
2212         (compile_cplus_instance::enter_scope): Don't use new_scope after
2213         std::move.
2214
2215 2018-09-17  Tom Tromey  <tom@tromey.com>
2216
2217         * common/pathstuff.c (get_standard_cache_dir): Use
2218         ~/Library/Caches on macOS.
2219         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2220
2221 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2222
2223         PR python/23669
2224         * breakpoint.c (commands_cmd_element): New.
2225         (_initialize_breakpoint): Assign commands_cmd_element.
2226         * breakpoint.h (commands_cmd_element): New.
2227         * cli/cli-script.c (while_cmd_element, if_command,
2228         define_cmd_element): New.
2229         (command_name_equals): Remove.
2230         (process_next_line): Compare commands by pointer, not by name.
2231         (_initialize_cli_script): Assign the various cmd_list_element
2232         variables.
2233         * compile/compile.c (compile_cmd_element): New.
2234         (_initialize_compile): Assign compile_cmd_element.
2235         * compile/compile.h (compile_cmd_element): New.
2236         * guile/guile.c (guile_cmd_element): New.
2237         (install_gdb_commands): Assign guile_cmd_element.
2238         * guile/guile.h (guile_cmd_element): New.
2239         * python/python.c (python_cmd_element): New.
2240         (_initialize_python): Assign python_cmd_element.
2241         * python/python.h (python_cmd_element): New.
2242         * tracepoint.c (while_stepping_cmd_element): New.
2243         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2244         * tracepoint.h (while_stepping_cmd_element): New.
2245
2246 2018-09-17  Tom Tromey  <tom@tromey.com>
2247
2248         * infrun.c (save_infcall_suspend_state): Return
2249         infcall_suspend_state_up.
2250         (save_infcall_control_state): Return infcall_control_state_up.
2251         * inferior.h (save_infcall_suspend_state)
2252         (save_infcall_control_state): Declare later.  Return unique
2253         pointers.
2254
2255 2018-09-17  Tom Tromey  <tom@tromey.com>
2256
2257         * infrun.c (struct stop_context): Declare constructor,
2258         destructor, "changed" method.
2259         (stop_context::stop_context): Rename from save_stop_context.
2260         (stop_context::~stop_context): Rename from
2261         release_stop_context_cleanup.
2262         (normal_stop): Update.
2263         (stop_context::changed): Rename from stop_context_changed.  Return
2264         bool.
2265
2266 2018-09-17  Tom Tromey  <tom@tromey.com>
2267
2268         * inferior.h (struct infcall_suspend_state_deleter): New.
2269         (infcall_suspend_state_up): New typedef.
2270         (struct infcall_control_state_deleter): New.
2271         (infcall_control_state_up): New typedef.
2272         (make_cleanup_restore_infcall_suspend_state)
2273         (make_cleanup_restore_infcall_control_state): Don't declare.
2274         * infcall.c (call_function_by_hand_dummy): Update.
2275         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2276         (make_cleanup_restore_infcall_suspend_state): Remove.
2277         (do_restore_infcall_control_state_cleanup)
2278         (make_cleanup_restore_infcall_control_state): Remove.
2279
2280 2018-09-17  Tom Tromey  <tom@tromey.com>
2281
2282         * gdbthread.h (struct thread_control_state): Add initializer.
2283         (class thread_info) <control>: Remove initializer.
2284         * inferior.h (struct inferior_control_state): Add initializer.
2285         (class inferior) <control>: Remove initializer.
2286         (exit_inferior_1): Update.
2287         * infrun.c (struct infcall_control_state): Add constructors.
2288         (save_infcall_control_state): Use new.
2289         (restore_infcall_control_state, discard_infcall_control_state):
2290         Use delete.
2291
2292 2018-09-17  Tom Tromey  <tom@tromey.com>
2293
2294         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2295         unique_ptr.
2296         <siginfo_data>: Now a unique_xmalloc_ptr.
2297         (save_infcall_suspend_state, restore_infcall_suspend_state)
2298         (discard_infcall_suspend_state)
2299         (get_infcall_suspend_state_regcache): Update.
2300
2301 2018-09-17  Tom Tromey  <tom@tromey.com>
2302
2303         * gdbthread.h (struct thread_suspend_state): Add initializers.
2304         (class thread_info) <suspend>: Remove initializer.
2305         * infrun.c (struct infcall_suspend_state): Add initializers.
2306         (save_infcall_suspend_state): Use new.
2307         (discard_infcall_suspend_state): Use delete.
2308
2309 2018-09-16  Tom Tromey  <tom@tromey.com>
2310
2311         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2312         Remove.
2313         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2314         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2315         (py_varobj_iter_new): Likewise.
2316         (py_varobj_get_iterator): Use gdbpy_ref.
2317
2318 2018-09-16  Tom Tromey  <tom@tromey.com>
2319
2320         * python/py-threadevent.c (py_get_event_thread): Simplify.
2321         * python/py-inferior.c (infpy_thread_from_thread_handle):
2322         Return immediately after calling thread_to_thread_object.  Use
2323         Py_RETURN_NONE.
2324         (thread_to_thread_object): Set the exception on a NULL return.
2325
2326 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2327
2328         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2329
2330 2018-09-16  Tom Tromey  <tom@tromey.com>
2331
2332         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2333         Remove.
2334
2335 2018-09-16  Tom Tromey  <tom@tromey.com>
2336
2337         * python/python-internal.h (thread_to_thread_object): Change
2338         return type.
2339         * python/py-inferior.c (thread_to_thread_object): Return a new
2340         reference.
2341         (infpy_thread_from_thread_handle): Update.
2342         * python/py-infthread.c (gdbpy_selected_thread): Update.
2343         * python/py-stopevent.c (create_stop_event_object): Update.
2344         * python/py-threadevent.c (py_get_event_thread): Return a new
2345         reference.
2346         (py_get_event_thread): Update.
2347         * python/py-event.h (py_get_event_thread): Change return type.
2348         * python/py-continueevent.c (create_continue_event_object):
2349         Update.
2350
2351 2018-09-16  Tom Tromey  <tom@tromey.com>
2352
2353         * python/py-progspace.c (pspy_get_objfiles): Update.
2354         * python/python-internal.h (objfile_to_objfile_object): Change
2355         return type.
2356         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2357         Update.
2358         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2359         Update.
2360         * python/python.c (gdbpy_get_current_objfile): Update.
2361         (gdbpy_objfiles): Update.
2362         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2363         Update.
2364         (objfile_to_objfile_object): Return a new reference.
2365         * python/py-symtab.c (stpy_get_objfile): Update.
2366         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2367         Update.
2368
2369 2018-09-16  Tom Tromey  <tom@tromey.com>
2370
2371         * python/py-inferior.c (infpy_get_progspace): Update.
2372         * python/python-internal.h (pspace_to_pspace_object): Change
2373         return type.
2374         * python/py-newobjfileevent.c
2375         (create_clear_objfiles_event_object): Update.
2376         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2377         Update.
2378         * python/python.c (gdbpy_get_current_progspace): Update.
2379         (gdbpy_progspaces): Update.
2380         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2381         reference.
2382         * python/py-objfile.c (objfpy_get_progspace): Update.
2383         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2384         Update.
2385
2386 2018-09-16  Tom Tromey  <tom@tromey.com>
2387
2388         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2389         (solib_name, block_for_pc, find_pc_line): New functions.
2390         (execute_unwinders): Update.
2391         * python/py-block.c (gdbpy_block_for_pc): Remove.
2392         * python/py-inferior.c (infpy_get_progspace): New function.
2393         (inferior_object_getset) <progspace>: Add.
2394         * python/py-progspace.c (pspy_objfiles): Rewrite.
2395         (pspy_solib_name, pspy_block_for_pc)
2396         (pspy_find_pc_line, pspy_is_valid): New functions.
2397         (progspace_object_methods): Add entries for solib_name,
2398         block_for_pc, find_pc_line, is_valid.
2399         * python/python-internal.h (gdbpy_block_for_pc)
2400         (build_objfiles_list): Don't declare.
2401         * python/python.c: Don't include solib.h.
2402         (gdbpy_solib_name, gdbpy_find_pc_line)
2403         (gdbpy_get_current_progspace, build_objfiles_list)
2404         (gdbpy_objfiles): Remove.
2405         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2406         solib_name, find_pc_line>: Remove entries.
2407
2408 2018-09-16  Tom Tromey  <tom@tromey.com>
2409
2410         * top.c (new_ui_command): Use GNU style for metasyntactic
2411         variables.
2412         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2413         variables.
2414         * maint.c (maintenance_translate_address): Remove "<>" around
2415         text.
2416         * interps.c (interpreter_exec_cmd): Use GNU style for
2417         metasyntactic variables.
2418         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2419         metasyntactic variables.
2420         * tracepoint.c (tfind_range_command): Use GNU style for
2421         metasyntactic variables.
2422         (tfind_outside_command): Likewise.
2423         (_initialize_tracepoint): Likewise.
2424         * remote.c (extended_remote_target::create_inferior): Use GNU
2425         style for metasyntactic variables.
2426         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2427         metasyntactic variables.
2428         (adi_assign_command): Likewise.
2429
2430 2018-09-16  Tom Tromey  <tom@tromey.com>
2431
2432         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2433         metasyntactic variables.  Print message if no disassembler options
2434         are available.
2435
2436 2018-09-15  Tom Tromey  <tom@tromey.com>
2437
2438         * infcmd.c (get_inferior_args): Return const char *.
2439         * inferior.h (get_inferior_args): Return type now const.
2440         * linux-tdep.c (linux_fill_prpsinfo): Update.
2441         * procfs.c (procfs_target::make_corefile_notes): Update.
2442
2443 2018-09-07  Tom Tromey  <tom@tromey.com>
2444
2445         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2446         inside the TRY.
2447
2448 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2449
2450         * nios2-tdep.c (nios2_type_align): New.
2451         (nios2_gdb_arch_init): Install type_align hook.
2452
2453 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2454
2455         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2456         type that is neither object file owned, nor gdbarch owned.
2457         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2458         gdbarch is non-NULL.
2459         (alloc_type_instance): Allocate non-objfile owned types on the
2460         gdbarch obstack.
2461         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2462         using TYPE_ALLOC to ensure memory is allocated on the correct
2463         obstack.
2464         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2465         obstack, or the gdbarch obstack.
2466         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2467
2468 2018-09-14  Tom Tromey  <tom@tromey.com>
2469
2470         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2471         block.
2472
2473 2018-09-14  Tom Tromey  <tom@tromey.com>
2474
2475         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2476
2477 2018-09-13  Tom Tromey  <tom@tromey.com>
2478
2479         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2480         static.
2481
2482 2018-09-13  Tom Tromey  <tom@tromey.com>
2483
2484         * exec.c (try_open_exec_file): Use std::string.
2485
2486 2018-09-13  Tom Tromey  <tom@tromey.com>
2487
2488         * utils.h (gdb_bfd_errmsg): Return std::string.
2489         * exec.c (exec_file_attach): Update.
2490         * compile/compile-object-load.c (compile_object_load): Update.
2491         * utils.c (gdb_bfd_errmsg): Return std::string.
2492
2493 2018-09-13  Tom Tromey  <tom@tromey.com>
2494
2495         * procfs.c (struct procinfo_deleter): New.
2496         (procinfo_up): New typedef.
2497         (do_destroy_procinfo_cleanup): Remove.
2498         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2499
2500 2018-09-13  Tom Tromey  <tom@tromey.com>
2501
2502         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2503
2504 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2505 2018-09-13  Tom Tromey  <tom@tromey.com>
2506
2507         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2508         (pspy_get_objfiles): New function.
2509         (progspace_object_methods): New.
2510         (pspace_object_type): Add tp_methods callback.
2511         * python/python-internal.h (build_objfiles_list): New
2512         declaration.
2513         * python/python.c (build_objfiles_list): New function.
2514         (gdbpy_objfiles): Implement using build_objfiles_list.
2515         * NEWS: Mention the Progspace.objfiles method.
2516
2517 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2518
2519         * python/py-inferior.c (infpy_get_progspace): New function.
2520         (inferior_object_getset): Add progspace property.
2521         * NEWS: Mention the new property.
2522
2523 2018-09-13  Tom Tromey  <tom@tromey.com>
2524
2525         PR rust/23650:
2526         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2527
2528 2018-09-13  Tom Tromey  <tom@tromey.com>
2529
2530         PR rust/23626:
2531         * rust-lang.c (rust_enum_variant): Now static.
2532         (rust_empty_enum_p): New function.
2533         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2534         Handle empty enum.
2535
2536 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2537
2538         * python/py-inferior.c (infpy_repr): New.
2539         (inferior_object_type): Register infpy_repr.
2540         * python/py-objfile.c (objfpy_repr): New.
2541         (objfile_object_type): Register objfpy_repr.
2542
2543 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2544
2545         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2546
2547 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2548
2549         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2550         typo.
2551
2552 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2553
2554         * common/common-utils.c: Don't include '<sys/stat.h>'.
2555         (is_regular_file): Move to...
2556         * common/filestuff.c (is_regular_file): ... here.
2557         * common/common-utils.h (is_regular_file): Move to...
2558         * common/filestuff.h (is_regular_file): ... here.
2559
2560 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2561
2562         * skip.c (debug_skip): New variable.
2563         (skiplist_entry::do_skip_file_p): Add debug output.
2564         (skiplist_entry::do_skip_gfile_p): Likewise.
2565         (skiplist_entry::skip_function_p): Likewise.
2566         (_initialize_step_skip): Create debug command.
2567         * NEWS: Mention set/show debug skip.
2568
2569 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2570
2571         * darwin-nat.c (should_disable_startup_with_shell):
2572         New function.
2573         (darwin_nat_target::create_inferior): Add call.
2574
2575 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2576
2577         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2578         inf_port, msg_state>: Initialize.
2579         (struct darwin_thread_info) <signaled, single_step>: Change
2580         type and initialize.
2581         (struct darwin_thread_info) <event>: Initialize.
2582
2583 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2584
2585         PR gdb/23555
2586         PR gdb/23558
2587         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2588         guesses.
2589
2590 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2591
2592         Revert:
2593         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2594
2595         PR gdb/23555
2596         PR gdb/23558
2597         * gnulib/aclocal.m4: Regenerate.
2598         * gnulib/config.in: Regenerate.
2599         * gnulib/configure: Regenerate.
2600         * gnulib/import/Makefile.am: Update.
2601         * gnulib/import/Makefile.in: Update.
2602         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2603         * gnulib/import/_Noreturn.h: ... this.
2604         * gnulib/import/alloca.in.h: Update.
2605         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2606         * gnulib/import/arg-nonnull.h: ... this.
2607         * gnulib/import/assure.h: Update.
2608         * gnulib/import/at-func.c: Update.
2609         * gnulib/import/basename-lgpl.c: Update.
2610         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2611         * gnulib/import/c++defs.h: ... this.
2612         * gnulib/import/canonicalize-lgpl.c: Update.
2613         * gnulib/import/cdefs.h: Update.
2614         * gnulib/import/chdir-long.c: Update.
2615         * gnulib/import/chdir-long.h: Update.
2616         * gnulib/import/cloexec.c: Update.
2617         * gnulib/import/cloexec.h: Update.
2618         * gnulib/import/close.c: Update.
2619         * gnulib/import/closedir.c: Update.
2620         * gnulib/import/config.charset: Update.
2621         * gnulib/import/dirent-private.h: Update.
2622         * gnulib/import/dirent.in.h: Update.
2623         * gnulib/import/dirfd.c: Update.
2624         * gnulib/import/dirname-lgpl.c: Update.
2625         * gnulib/import/dirname.h: Update.
2626         * gnulib/import/dosname.h: Update.
2627         * gnulib/import/dup-safer-flag.c: Update.
2628         * gnulib/import/dup-safer.c: Update.
2629         * gnulib/import/dup.c: Update.
2630         * gnulib/import/dup2.c: Update.
2631         * gnulib/import/errno.in.h: Update.
2632         * gnulib/import/error.c: Update.
2633         * gnulib/import/error.h: Update.
2634         * gnulib/import/exitfail.c: Update.
2635         * gnulib/import/exitfail.h: Update.
2636         * gnulib/import/extra/update-copyright: Update.
2637         * gnulib/import/fchdir.c: Update.
2638         * gnulib/import/fcntl.c: Update.
2639         * gnulib/import/fcntl.in.h: Update.
2640         * gnulib/import/fd-hook.c: Update.
2641         * gnulib/import/fd-hook.h: Update.
2642         * gnulib/import/fd-safer-flag.c: Update.
2643         * gnulib/import/fd-safer.c: Update.
2644         * gnulib/import/fdopendir.c: Update.
2645         * gnulib/import/filename.h: Update.
2646         * gnulib/import/filenamecat-lgpl.c: Update.
2647         * gnulib/import/filenamecat.h: Update.
2648         * gnulib/import/flexmember.h: Update.
2649         * gnulib/import/float+.h: Update.
2650         * gnulib/import/float.c: Update.
2651         * gnulib/import/float.in.h: Update.
2652         * gnulib/import/fnmatch.c: Update.
2653         * gnulib/import/fnmatch.in.h: Update.
2654         * gnulib/import/fnmatch_loop.c: Update.
2655         * gnulib/import/fpucw.h: Update.
2656         * gnulib/import/frexp.c: Update.
2657         * gnulib/import/frexpl.c: Update.
2658         * gnulib/import/fstat.c: Update.
2659         * gnulib/import/fstatat.c: Update.
2660         * gnulib/import/getcwd-lgpl.c: Update.
2661         * gnulib/import/getcwd.c: Update.
2662         * gnulib/import/getdtablesize.c: Update.
2663         * gnulib/import/getlogin_r.c: Update.
2664         * gnulib/import/getprogname.c: Update.
2665         * gnulib/import/getprogname.h: Update.
2666         * gnulib/import/gettext.h: Update.
2667         * gnulib/import/gettimeofday.c: Update.
2668         * gnulib/import/glob-libc.h: Update.
2669         * gnulib/import/glob.c: Update.
2670         * gnulib/import/glob.in.h: Update.
2671         * gnulib/import/glob_internal.h: Update.
2672         * gnulib/import/glob_pattern_p.c: Update.
2673         * gnulib/import/globfree.c: Update.
2674         * gnulib/import/hard-locale.c: Update.
2675         * gnulib/import/hard-locale.h: Update.
2676         * gnulib/import/intprops.h: Update.
2677         * gnulib/import/inttypes.in.h: Update.
2678         * gnulib/import/isnan.c: Update.
2679         * gnulib/import/isnand-nolibm.h: Update.
2680         * gnulib/import/isnand.c: Update.
2681         * gnulib/import/isnanl-nolibm.h: Update.
2682         * gnulib/import/isnanl.c: Update.
2683         * gnulib/import/itold.c: Update.
2684         * gnulib/import/libc-config.h: Update.
2685         * gnulib/import/limits.in.h: Update.
2686         * gnulib/import/localcharset.c: Update.
2687         * gnulib/import/localcharset.h: Update.
2688         * gnulib/import/localtime-buffer.c: Update.
2689         * gnulib/import/localtime-buffer.h: Update.
2690         * gnulib/import/lstat.c: Update.
2691         * gnulib/import/m4/00gnulib.m4: Update.
2692         * gnulib/import/m4/__inline.m4: Update.
2693         * gnulib/import/m4/absolute-header.m4: Update.
2694         * gnulib/import/m4/alloca.m4: Update.
2695         * gnulib/import/m4/builtin-expect.m4: Update.
2696         * gnulib/import/m4/canonicalize.m4: Update.
2697         * gnulib/import/m4/chdir-long.m4: Update.
2698         * gnulib/import/m4/close.m4: Update.
2699         * gnulib/import/m4/closedir.m4: Update.
2700         * gnulib/import/m4/configmake.m4: Update.
2701         * gnulib/import/m4/d-ino.m4: Update.
2702         * gnulib/import/m4/d-type.m4: Update.
2703         * gnulib/import/m4/dirent_h.m4: Update.
2704         * gnulib/import/m4/dirfd.m4: Update.
2705         * gnulib/import/m4/dirname.m4: Update.
2706         * gnulib/import/m4/double-slash-root.m4: Update.
2707         * gnulib/import/m4/dup.m4: Update.
2708         * gnulib/import/m4/dup2.m4: Update.
2709         * gnulib/import/m4/eealloc.m4: Update.
2710         * gnulib/import/m4/environ.m4: Update.
2711         * gnulib/import/m4/errno_h.m4: Update.
2712         * gnulib/import/m4/error.m4: Update.
2713         * gnulib/import/m4/exponentd.m4: Update.
2714         * gnulib/import/m4/exponentl.m4: Update.
2715         * gnulib/import/m4/extensions.m4: Update.
2716         * gnulib/import/m4/extern-inline.m4: Update.
2717         * gnulib/import/m4/fchdir.m4: Update.
2718         * gnulib/import/m4/fcntl-o.m4: Update.
2719         * gnulib/import/m4/fcntl.m4: Update.
2720         * gnulib/import/m4/fcntl_h.m4: Update.
2721         * gnulib/import/m4/fdopendir.m4: Update.
2722         * gnulib/import/m4/filenamecat.m4: Update.
2723         * gnulib/import/m4/flexmember.m4: Update.
2724         * gnulib/import/m4/float_h.m4: Update.
2725         * gnulib/import/m4/fnmatch.m4: Update.
2726         * gnulib/import/m4/fnmatch_h.m4: Update.
2727         * gnulib/import/m4/fpieee.m4: Update.
2728         * gnulib/import/m4/frexp.m4: Update.
2729         * gnulib/import/m4/frexpl.m4: Update.
2730         * gnulib/import/m4/fstat.m4: Update.
2731         * gnulib/import/m4/fstatat.m4: Update.
2732         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2733         * gnulib/import/m4/getcwd-path-max.m4: Update.
2734         * gnulib/import/m4/getcwd.m4: Update.
2735         * gnulib/import/m4/getdtablesize.m4: Update.
2736         * gnulib/import/m4/getlogin.m4: Update.
2737         * gnulib/import/m4/getlogin_r.m4: Update.
2738         * gnulib/import/m4/getpagesize.m4: Update.
2739         * gnulib/import/m4/getprogname.m4: Update.
2740         * gnulib/import/m4/gettimeofday.m4: Update.
2741         * gnulib/import/m4/glibc21.m4: Update.
2742         * gnulib/import/m4/glob.m4: Update.
2743         * gnulib/import/m4/glob_h.m4: Update.
2744         * gnulib/import/m4/gnulib-cache.m4: Update.
2745         * gnulib/import/m4/gnulib-common.m4: Update.
2746         * gnulib/import/m4/gnulib-comp.m4: Update.
2747         * gnulib/import/m4/gnulib-tool.m4: Update.
2748         * gnulib/import/m4/hard-locale.m4: Update.
2749         * gnulib/import/m4/include_next.m4: Update.
2750         * gnulib/import/m4/inttypes-pri.m4: Update.
2751         * gnulib/import/m4/inttypes.m4: Update.
2752         * gnulib/import/m4/isnand.m4: Update.
2753         * gnulib/import/m4/isnanl.m4: Update.
2754         * gnulib/import/m4/largefile.m4: Update.
2755         * gnulib/import/m4/limits-h.m4: Update.
2756         * gnulib/import/m4/localcharset.m4: Update.
2757         * gnulib/import/m4/locale-fr.m4: Update.
2758         * gnulib/import/m4/locale-ja.m4: Update.
2759         * gnulib/import/m4/locale-zh.m4: Update.
2760         * gnulib/import/m4/localtime-buffer.m4: Update.
2761         * gnulib/import/m4/longlong.m4: Update.
2762         * gnulib/import/m4/lstat.m4: Update.
2763         * gnulib/import/m4/malloc.m4: Update.
2764         * gnulib/import/m4/malloca.m4: Update.
2765         * gnulib/import/m4/math_h.m4: Update.
2766         * gnulib/import/m4/mbrtowc.m4: Update.
2767         * gnulib/import/m4/mbsinit.m4: Update.
2768         * gnulib/import/m4/mbsrtowcs.m4: Update.
2769         * gnulib/import/m4/mbstate_t.m4: Update.
2770         * gnulib/import/m4/memchr.m4: Update.
2771         * gnulib/import/m4/memmem.m4: Update.
2772         * gnulib/import/m4/mempcpy.m4: Update.
2773         * gnulib/import/m4/memrchr.m4: Update.
2774         * gnulib/import/m4/mkdir.m4: Update.
2775         * gnulib/import/m4/mkstemp.m4: Update.
2776         * gnulib/import/m4/mmap-anon.m4: Update.
2777         * gnulib/import/m4/mode_t.m4: Update.
2778         * gnulib/import/m4/msvc-inval.m4: Update.
2779         * gnulib/import/m4/msvc-nothrow.m4: Update.
2780         * gnulib/import/m4/multiarch.m4: Update.
2781         * gnulib/import/m4/nocrash.m4: Update.
2782         * gnulib/import/m4/off_t.m4: Update.
2783         * gnulib/import/m4/onceonly.m4: Update.
2784         * gnulib/import/m4/open-cloexec.m4: Update.
2785         * gnulib/import/m4/open.m4: Update.
2786         * gnulib/import/m4/openat.m4: Update.
2787         * gnulib/import/m4/opendir.m4: Update.
2788         * gnulib/import/m4/pathmax.m4: Update.
2789         * gnulib/import/m4/rawmemchr.m4: Update.
2790         * gnulib/import/m4/readdir.m4: Update.
2791         * gnulib/import/m4/readlink.m4: Update.
2792         * gnulib/import/m4/realloc.m4: Update.
2793         * gnulib/import/m4/rename.m4: Update.
2794         * gnulib/import/m4/rewinddir.m4: Update.
2795         * gnulib/import/m4/rmdir.m4: Update.
2796         * gnulib/import/m4/save-cwd.m4: Update.
2797         * gnulib/import/m4/secure_getenv.m4: Update.
2798         * gnulib/import/m4/setenv.m4: Update.
2799         * gnulib/import/m4/signal_h.m4: Update.
2800         * gnulib/import/m4/ssize_t.m4: Update.
2801         * gnulib/import/m4/stat-time.m4: Update.
2802         * gnulib/import/m4/stat.m4: Update.
2803         * gnulib/import/m4/std-gnu11.m4: Update.
2804         * gnulib/import/m4/stdbool.m4: Update.
2805         * gnulib/import/m4/stddef_h.m4: Update.
2806         * gnulib/import/m4/stdint.m4: Update.
2807         * gnulib/import/m4/stdio_h.m4: Update.
2808         * gnulib/import/m4/stdlib_h.m4: Update.
2809         * gnulib/import/m4/strchrnul.m4: Update.
2810         * gnulib/import/m4/strdup.m4: Update.
2811         * gnulib/import/m4/strerror.m4: Update.
2812         * gnulib/import/m4/string_h.m4: Update.
2813         * gnulib/import/m4/strstr.m4: Update.
2814         * gnulib/import/m4/strtok_r.m4: Update.
2815         * gnulib/import/m4/sys_socket_h.m4: Update.
2816         * gnulib/import/m4/sys_stat_h.m4: Update.
2817         * gnulib/import/m4/sys_time_h.m4: Update.
2818         * gnulib/import/m4/sys_types_h.m4: Update.
2819         * gnulib/import/m4/tempname.m4: Update.
2820         * gnulib/import/m4/time_h.m4: Update.
2821         * gnulib/import/m4/unistd-safer.m4: Update.
2822         * gnulib/import/m4/unistd_h.m4: Update.
2823         * gnulib/import/m4/warn-on-use.m4: Update.
2824         * gnulib/import/m4/wchar_h.m4: Update.
2825         * gnulib/import/m4/wchar_t.m4: Update.
2826         * gnulib/import/m4/wctype_h.m4: Update.
2827         * gnulib/import/m4/wint_t.m4: Update.
2828         * gnulib/import/malloc.c: Update.
2829         * gnulib/import/malloc/scratch_buffer.h: Update.
2830         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2831         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2832         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2833         * gnulib/import/malloca.c: Update.
2834         * gnulib/import/malloca.h: Update.
2835         * gnulib/import/malloca.valgrind: Update.
2836         * gnulib/import/math.in.h: Update.
2837         * gnulib/import/mbrtowc.c: Update.
2838         * gnulib/import/mbsinit.c: Update.
2839         * gnulib/import/mbsrtowcs-impl.h: Update.
2840         * gnulib/import/mbsrtowcs-state.c: Update.
2841         * gnulib/import/mbsrtowcs.c: Update.
2842         * gnulib/import/memchr.c: Update.
2843         * gnulib/import/memmem.c: Update.
2844         * gnulib/import/mempcpy.c: Update.
2845         * gnulib/import/memrchr.c: Update.
2846         * gnulib/import/mkdir.c: Update.
2847         * gnulib/import/mkstemp.c: Update.
2848         * gnulib/import/msvc-inval.c: Update.
2849         * gnulib/import/msvc-inval.h: Update.
2850         * gnulib/import/msvc-nothrow.c: Update.
2851         * gnulib/import/msvc-nothrow.h: Update.
2852         * gnulib/import/open.c: Update.
2853         * gnulib/import/openat-die.c: Update.
2854         * gnulib/import/openat-priv.h: Update.
2855         * gnulib/import/openat-proc.c: Update.
2856         * gnulib/import/openat.c: Update.
2857         * gnulib/import/openat.h: Update.
2858         * gnulib/import/opendir.c: Update.
2859         * gnulib/import/pathmax.h: Update.
2860         * gnulib/import/pipe-safer.c: Update.
2861         * gnulib/import/rawmemchr.c: Update.
2862         * gnulib/import/readdir.c: Update.
2863         * gnulib/import/readlink.c: Update.
2864         * gnulib/import/realloc.c: Update.
2865         * gnulib/import/ref-add.sin: Update.
2866         * gnulib/import/ref-del.sin: Update.
2867         * gnulib/import/rename.c: Update.
2868         * gnulib/import/rewinddir.c: Update.
2869         * gnulib/import/rmdir.c: Update.
2870         * gnulib/import/same-inode.h: Update.
2871         * gnulib/import/save-cwd.c: Update.
2872         * gnulib/import/save-cwd.h: Update.
2873         * gnulib/import/scratch_buffer.h: Update.
2874         * gnulib/import/secure_getenv.c: Update.
2875         * gnulib/import/setenv.c: Update.
2876         * gnulib/import/signal.in.h: Update.
2877         * gnulib/import/stat-time.c: Update.
2878         * gnulib/import/stat-time.h: Update.
2879         * gnulib/import/stat-w32.c: Update.
2880         * gnulib/import/stat-w32.h: Update.
2881         * gnulib/import/stat.c: Update.
2882         * gnulib/import/stdbool.in.h: Update.
2883         * gnulib/import/stddef.in.h: Update.
2884         * gnulib/import/stdint.in.h: Update.
2885         * gnulib/import/stdio.in.h: Update.
2886         * gnulib/import/stdlib.in.h: Update.
2887         * gnulib/import/str-two-way.h: Update.
2888         * gnulib/import/strchrnul.c: Update.
2889         * gnulib/import/strdup.c: Update.
2890         * gnulib/import/streq.h: Update.
2891         * gnulib/import/strerror-override.c: Update.
2892         * gnulib/import/strerror-override.h: Update.
2893         * gnulib/import/strerror.c: Update.
2894         * gnulib/import/string.in.h: Update.
2895         * gnulib/import/stripslash.c: Update.
2896         * gnulib/import/strnlen1.c: Update.
2897         * gnulib/import/strnlen1.h: Update.
2898         * gnulib/import/strstr.c: Update.
2899         * gnulib/import/strtok_r.c: Update.
2900         * gnulib/import/sys_stat.in.h: Update.
2901         * gnulib/import/sys_time.in.h: Update.
2902         * gnulib/import/sys_types.in.h: Update.
2903         * gnulib/import/tempname.c: Update.
2904         * gnulib/import/tempname.h: Update.
2905         * gnulib/import/time.in.h: Update.
2906         * gnulib/import/unistd--.h: Update.
2907         * gnulib/import/unistd-safer.h: Update.
2908         * gnulib/import/unistd.in.h: Update.
2909         * gnulib/import/unsetenv.c: Update.
2910         * gnulib/import/verify.h: Update.
2911         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2912         * gnulib/import/wchar.in.h: Update.
2913         * gnulib/import/wctype.in.h: Update.
2914         * gnulib/import/xalloc-oversized.h: Update.
2915         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2916         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2917
2918 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2919
2920         * record-btrace.c (get_thread_current_frame): Remove
2921         old_inferior_ptid.
2922
2923 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2924
2925         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2926         with check_tag to 1 if and only if the type is tagged and the
2927         component being searched cannot been found in the current
2928         view. Otherwise, always call ada_to_fixed_type with
2929         check_tag to 0.
2930
2931 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2932
2933         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2934         declaration.
2935         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2936         * ada-varobj.c (ada_varobj_get_number_of_children,
2937         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2938
2939 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2940
2941         * ada-valprint.c (ada_value_print): Use type instead of
2942         enclosing type.
2943
2944 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2945
2946         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2947         an array of access to unconstrained array.
2948
2949 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2950
2951         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2952         (ada_check_typedef): Use it.
2953
2954 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2955
2956         * ada-varobj.c (ada_varobj_describe_struct_child)
2957         (ada_varobj_describe_child): Handle union case like struct one.
2958
2959 2018-09-10  Tom Tromey  <tom@tromey.com>
2960
2961         PR python/18380:
2962         * python/python.c (_initialize_python): Make example in "python"
2963         help work in Python 3.
2964
2965 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2966
2967         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2968         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2969         $(EXEEXT) to the script, as it is not a program.
2970
2971 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2972
2973         * python/py-prettyprint.c (pretty_print_one_value): Return
2974         gdbpy_ref<>.
2975         (print_string_repr): Adjust.
2976         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2977         * python/python-internal.h (apply_varobj_pretty_printer): Return
2978         gdbpy_ref<>.
2979         * varobj.c (varobj_value_get_print_value): Adjust.
2980
2981 2018-09-08  Tom Tromey  <tom@tromey.com>
2982
2983         PR python/16047:
2984         * python/py-prettyprint.c (pretty_print_one_value): Check for
2985         to_string method.
2986
2987 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2988
2989         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2990         replace_operator_with_call.
2991
2992 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2993
2994         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2995
2996 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2997
2998         * ada-typeprint.c (print_range): Print the bounds using TYPE
2999         rather than its TYPE_TARGET_TYPE.
3000
3001 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3002
3003         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3004         call to ada_to_fixed_value_create.
3005
3006 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3007
3008         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3009
3010 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3011
3012         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3013         by calls to error.
3014
3015 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3016
3017         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3018         Move update of loop variable "fi".
3019
3020 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3021
3022         * ada-lang.c (value_assign_to_component): In the case of
3023         big-endian targets, extract the bits of the given VAL
3024         using an src_offset of zero if container is not a scalar.
3025
3026 2018-09-06  Simon Ser  <contact@emersion.fr>
3027
3028         PR gdb/23105
3029         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3030         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3031         * fbsd-tdep.c (fbsd_make_note_desc): New.
3032         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3033         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3034         * target.h (enum target_object) Add FreeBSD-specific
3035         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3036
3037 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3038
3039         * compile/compile-c.h (generate_c_for_variable_locations):
3040         Change reference to pointer.
3041         * compile/compile-c-support.c (compile_program) <compute>:
3042         Likewise.
3043         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3044         (generate_c_for_for_one_variable): Likewise
3045         (generate_c_for_variable_locations): Likewise
3046         * compile/compile-c-types.c (compile_c_instance::convert_type):
3047         Likewise
3048         * compile/compile-cplus-symbols.c (convert_one_symbol):
3049         std::move the scope passed to enter_scope.
3050         * compile/compile-cplus-types.c
3051         (compile_cplus_instance::enter_scope): Make parameter
3052         rvalue-reference.
3053         (compile_cplus_instance::new_scope): Change reference to
3054         pointer.
3055         (compile_cplus_instance::convert_type): Likewise
3056         (compile_cplus_convert_typedef): std::move the scope passed to
3057         enter_scope.
3058         (compile_cplus_convert_struct_or_union): Likewise.
3059         (compile_cplus_convert_enum): Likewise.
3060         (compile_cplus_convert_namespace): Likewise.
3061         * compile/compile-cplus.h (compile_cplus_instance)
3062         <enter_scope>: Make parameter rvalue-reference.
3063         * compile/compile-internal.h (compile_instance)
3064         <get_cached_type>: Likewise
3065         * compile/compile-loc2c.c (push): Likewise
3066         (pushf): Likewise
3067         (unary): Likewise
3068         (binary): Likewise
3069         (print_label): Likewise
3070         (pushf_register_address): Likewise
3071         (pushf_register): Likewise
3072         (do_compile_dwarf_expr_to_c): Likewise
3073         (compile_dwarf_expr_to_c): Likewise
3074         (compile_dwarf_bounds_to_c): Likewise
3075         * compile/compile.c (compile_instance::get_cached_type):
3076         Likewise
3077         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3078         (compile_dwarf_bounds_to_c): Likewise
3079         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3080         (dwarf2_compile_property_to_c): Likewise
3081         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3082         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3083         Likewise
3084
3085 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3086
3087         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3088         * tui/tui-data.c (init_content_element): Don't initialize it.
3089
3090 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3091
3092         * tui/tui-data.h (struct tui_win_info)
3093         <detail::opaque>: Remove.
3094         * tui/tui-data.c (init_win_info): Remove assignment.
3095
3096 2018-09-05  Tom Tromey  <tom@tromey.com>
3097
3098         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3099         -Wformat-nonliteral.
3100         * target-float.c (host_float_ops<T>::to_string)
3101         (host_float_ops<T>::from_string): Use
3102         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3103         * configure: Rebuild.
3104
3105 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3106
3107         * printcmd.c (printf_c_string): Use
3108         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3109         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3110
3111 2018-09-05  Tom Tromey  <tom@tromey.com>
3112
3113         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3114
3115 2018-09-05  Tom de Vries  <tdevries@suse.de>
3116
3117         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3118         with resolve_abstract_p == true.
3119         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3120         defaulting to false. Propagate resolve_abstract_p to
3121         dwarf2_fetch_die_loc_sect_off.
3122         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3123         parameter, defaulting to false.
3124         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3125         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3126         parameter.
3127         * dwarf2read.h (struct die_info): Forward-declare.
3128         (die_info_ptr): New typedef.
3129         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3130
3131 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3132
3133         GDB 8.2 released.
3134
3135 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3136             Pedro Alves  <palves@redhat.com>
3137
3138         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3139         "aclocal-m4-deps.mk".  Include file here.
3140         $(srcdir)/aclocal.m4: Add "configure.ac".
3141         * gnulib/aclocal-m4-deps.mk: New file.
3142         * gnulib/update-gnulib.sh: Automatically update
3143         "aclocal-m4-deps.mk".
3144
3145 2018-09-04  Tom Tromey  <tom@tromey.com>
3146
3147         * configure: Rebuild.
3148         * configure.ac: Remove multi-ice code.
3149
3150 2018-09-04  Tom Tromey  <tom@tromey.com>
3151
3152         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3153         (ada-exp.o): Update.
3154
3155 2018-09-04  Tom Tromey  <tom@tromey.com>
3156
3157         * Makefile.in (printcmd.o, target-float.o): Remove.
3158         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3159
3160 2018-09-04  Tom Tromey  <tom@tromey.com>
3161
3162         * gnulib/Makefile.in: Remove obsolete comment.
3163         * Makefile.in: Remove obsolete comment.
3164
3165 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3166
3167         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3168         line with '+'.
3169
3170 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3171
3172         * riscv-tdep.c: Add 'prologue-value.h' include.
3173         (struct riscv_unwind_cache): New struct.
3174         (riscv_debug_unwinder): New global.
3175         (riscv_scan_prologue): Update arguments, capture register details
3176         from prologue scan.
3177         (riscv_skip_prologue): Reformat arguments line, move end of
3178         prologue calculation into riscv_scan_prologue.
3179         (riscv_frame_cache): Update return type, create
3180         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3181         details.
3182         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3183         (riscv_frame_prev_register): Use the trad_frame within the
3184         riscv_unwind_cache.
3185         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3186         flag.
3187
3188 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3189
3190         * trad-frame.h (trad_frame_set_realreg): Declare.
3191         (trad_frame_set_addr): Declare.
3192         * trad-frame.c (trad_frame_set_realreg): Define new function.
3193         (trad_frame_set_addr): Define new function.
3194         (trad_frame_set_reg_realreg): Use new function.
3195         (trad_frame_set_reg_addr): Use new function.
3196
3197 2018-09-01  Keith Seitz  <keiths@redhat.com>
3198
3199         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3200         pulongest instead of "%lld".
3201         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3202         ATTRIBUTE_UNUSED.
3203
3204 2018-08-31  Tom Tromey  <tom@tromey.com>
3205
3206         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3207         variant part type.
3208
3209 2018-08-31  Pedro Alves  <palves@redhat.com>
3210
3211         * gdbarch.h: Regenerate.
3212
3213 2018-08-31  Pedro Alves  <palves@redhat.com>
3214
3215         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3216         * target.h (Hardware watchpoint interfaces): Describe
3217         continuable/steppable/non-steppable watchpoints.
3218         * gdbarch.h, gdbarch.c: Regenerate.
3219
3220 2018-08-31  Pedro Alves  <palves@redhat.com>
3221
3222         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3223         Delete.
3224         * s390-linux-nat.c
3225         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3226         * target.h (target_ops::have_continuable_watchpoint): Delete.
3227         (target_have_continuable_watchpoint): Delete.
3228         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3229         * target-delegates.c: Regenerate.
3230
3231 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3232
3233         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3234         the files present in "gnulib/import/m4/".
3235
3236 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3237
3238         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3239         c.sw, c.swsp, and c.sdsp.
3240
3241 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3242
3243         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3244         (riscv_read_misa_reg): Don't cache value read into inferior data.
3245         (riscv_new_inferior_data): Delete.
3246         (riscv_inferior_data_cleanup): Delete.
3247         (riscv_inferior_data): Delete.
3248         (riscv_invalidate_inferior_data): Delete.
3249         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3250
3251 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3252
3253         * compile/compile-cplus-types.c
3254         (compile_cplus_instance::leave_scope): Take the address of scope
3255         object.
3256         (compile_cplus_instance::convert_qualified_base): Compare quals
3257         to 0.
3258
3259 2018-08-30  Keith Seitz  <keiths@redhat.com>
3260
3261         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3262         Use "%s" and host_address_to_string instead of "%p" in printf.
3263
3264 2018-08-29  Keith Seitz  <keiths@redhat.com>
3265
3266         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3267         and compile-cplus-types.c.
3268         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3269         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3270         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3271         Declare.
3272         * compile/compile-c-support.c: Include compile-cplus.h.
3273         (load_libcompile): Templatize.
3274         (get_compile_context): "New" function.
3275         (c_get_compile_context): Use get_compile_context.
3276         (cplus_get_compile_context): New function.
3277         (cplus_push_user_expression, cplus_pop_user_expression)
3278         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3279         (cplus_compute_program): Define new structs/functions.
3280         * compile/compile-cplus-symmbols.c: New file.
3281         * compile/compile-cplus-types.c: New file.
3282         * compile/compile-cplus.h: New file.
3283         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3284         Declare.
3285         * compile/compile-object-load.c (get_out_value_type): Use
3286         strncmp_iw when comparing symbol names.
3287         (compile_object_load): Add mst_bss and mst_data.
3288         * compile/compile.c (_initialize_compile): Remove
3289         -Wno-implicit-function-declaration from `compile_args'.
3290         * compile/gcc-cp-plugin.h: New file.
3291         * NEWS: Mention C++ compile support and new debug options.
3292
3293 2018-08-29  Keith Seitz  <keiths@redhat.com>
3294
3295         * linespec.c (collect_info::add_symbol): Make virtual.
3296         (struct symbol_searcher_collect_info): New struct.
3297         (symbol_searcher::find_all_symbols): New method.
3298         * symtab.h (class symbol_searcher): New class.
3299
3300 2018-08-29  Keith Seitz  <keiths@redhat.com>
3301
3302         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3303         Change to vector of block_symbol.  Update all users.
3304         (struct collect_info) <symbols>: Likewise.
3305         (collect_info::add_symbol): Take block_symbol as argument.
3306         Update all callers.
3307         (decode_compound_collector) <m_symbols>: Change type to vector
3308         of block_symbol.  Update all users.
3309         (decode_compound_collector::operator ()): Change parameter type
3310         to block_symbol.
3311         (find_method, find_function_symbols, find_linespec_symbols)
3312         (find_label_symbols_in_block, find_label_symbols): Change symbol
3313         vectors to block_symbol vectors.
3314         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3315         block_symbol.
3316
3317 2018-08-29  Keith Seitz  <keiths@redhat.com>
3318
3319         * linespec.c (symbolp): Remove typedef and VEC definitions.
3320         (bound_minimal_symbol_d): Likewise.
3321
3322 2018-08-29  Keith Seitz  <keiths@redhat.com>
3323
3324         * linespec.c (decode_compound_collector::decode_compound_collector):
3325         Remove initialization for `m_symtabs'.
3326         (decode_compound_collector::release_symbols): Change return type
3327         to std::vector.  Update all callers.
3328         (class decode_compound_collector) <m_symbols>: Change type to
3329         std::vector.
3330         (lookup_prefix_sym): Change return type to std::vector.  Update all
3331         callers.
3332         (compare_symbols): Remove.
3333         (std_compare_symbols): Rename to `compare_symbols'.
3334         (find_method): Change `sym_classes' parameter to std::vector.
3335         Update all callers.  Use std::sort to sort sym_classes.
3336         (find_linespec_symbols): Remove cleanup.
3337
3338 2018-08-29  Keith Seitz  <keiths@redhat.com>
3339
3340         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3341         std::vector.  Update all users.
3342         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3343         (struct collect_info) <minimal_symbols>: Likewise.
3344         (compare_msymbols): Return bool.  Change parameters to const
3345         bound_minimal_symbol references.
3346         (find_method, find_function_symbols, find_linespec_symbols): Change
3347         `minsyms' parameter to std::vector.  Update all callers.
3348
3349 2018-08-29  Keith Seitz  <keiths@redhat.com>
3350
3351         * linespec.c (struct linespec) <label_symbols>: Change type to
3352         std::vector.  Update all users.
3353         (find_label_symbols_in_block): Change `result' parameter to
3354         std::vector.  Update all callers.
3355         (find_label_symbols): Return std::vector.  Update all callers.
3356
3357 2018-08-29  Keith Seitz  <keiths@redhat.com>
3358
3359         * linespec.c (struct linespec) <function_symbols>: Change type to
3360         std::vector.  Update all users.
3361         (struct collect_info) <function_symbols>: Likewise.
3362         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3363         (std_compare_symbols): New function.
3364         (find_method, find_function_symbols, find_linespec_symbols)
3365         (find_label_symbols_in_block): Change `symbols' parameter to
3366         std::vector.  Update all callers.
3367         (find_label_symbols): Likewise for `function_symbols' and
3368         `label_funcs_ret'.
3369
3370 2018-08-29  Keith Seitz  <keiths@redhat.com>
3371
3372         * linespec.c (symtab_vector_up): Define.
3373         (struct linespec) <file_symtabs>: Change type to std::vector *.
3374         Update all uses.
3375         (struct collect_info) <file_symtabs>: Likewise.
3376         (collect_symtabs_from_filename): Return symtab_vector_up.
3377         Update all callers.
3378         (decode_objc): Remove cleanup.
3379         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3380         (symtab_collector::release_symtabs): Return symtab_vector_up.
3381         Update all callers.
3382         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3383         Update all users.
3384         (collect_symtabs_from_filename, symtabs_from_filename): Return
3385         symtab_vector_up.  Update all callers.
3386
3387 2018-08-29  Tom Tromey  <tom@tromey.com>
3388
3389         * csky-tdep.c (csky_analyze_prologue): Use
3390         core_addr_to_string_nz.
3391
3392 2018-08-29  Tom Tromey  <tom@tromey.com>
3393
3394         * windows-nat.c (struct xlate_exception) <them>: Change type to
3395         DWORD.
3396         (xlate): Fix formatting.  Remove last entry.
3397         (struct xlate_exception, xlate): Comment out.
3398         (windows_nat_target::resume): Use ranged for.
3399
3400 2018-08-29  Jim Wilson  <jimw@sifive.com>
3401
3402         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3403         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3404         of NT_PRFPREG.
3405         (riscv_linux_nat_target::store_registers): Likewise.
3406
3407 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3408
3409         PR gdb/23555
3410         PR gdb/23558
3411         * gnulib/aclocal.m4: Regenerate.
3412         * gnulib/config.in: Regenerate.
3413         * gnulib/configure: Regenerate.
3414         * gnulib/import/Makefile.am: Update.
3415         * gnulib/import/Makefile.in: Update.
3416         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3417         * gnulib/import/_Noreturn.h: ... this.
3418         * gnulib/import/alloca.in.h: Update.
3419         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3420         * gnulib/import/arg-nonnull.h: ... this.
3421         * gnulib/import/assure.h: Update.
3422         * gnulib/import/at-func.c: Update.
3423         * gnulib/import/basename-lgpl.c: Update.
3424         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3425         * gnulib/import/c++defs.h: ... this.
3426         * gnulib/import/canonicalize-lgpl.c: Update.
3427         * gnulib/import/cdefs.h: Update.
3428         * gnulib/import/chdir-long.c: Update.
3429         * gnulib/import/chdir-long.h: Update.
3430         * gnulib/import/cloexec.c: Update.
3431         * gnulib/import/cloexec.h: Update.
3432         * gnulib/import/close.c: Update.
3433         * gnulib/import/closedir.c: Update.
3434         * gnulib/import/config.charset: Update.
3435         * gnulib/import/dirent-private.h: Update.
3436         * gnulib/import/dirent.in.h: Update.
3437         * gnulib/import/dirfd.c: Update.
3438         * gnulib/import/dirname-lgpl.c: Update.
3439         * gnulib/import/dirname.h: Update.
3440         * gnulib/import/dosname.h: Update.
3441         * gnulib/import/dup-safer-flag.c: Update.
3442         * gnulib/import/dup-safer.c: Update.
3443         * gnulib/import/dup.c: Update.
3444         * gnulib/import/dup2.c: Update.
3445         * gnulib/import/errno.in.h: Update.
3446         * gnulib/import/error.c: Update.
3447         * gnulib/import/error.h: Update.
3448         * gnulib/import/exitfail.c: Update.
3449         * gnulib/import/exitfail.h: Update.
3450         * gnulib/import/extra/update-copyright: Update.
3451         * gnulib/import/fchdir.c: Update.
3452         * gnulib/import/fcntl.c: Update.
3453         * gnulib/import/fcntl.in.h: Update.
3454         * gnulib/import/fd-hook.c: Update.
3455         * gnulib/import/fd-hook.h: Update.
3456         * gnulib/import/fd-safer-flag.c: Update.
3457         * gnulib/import/fd-safer.c: Update.
3458         * gnulib/import/fdopendir.c: Update.
3459         * gnulib/import/filename.h: Update.
3460         * gnulib/import/filenamecat-lgpl.c: Update.
3461         * gnulib/import/filenamecat.h: Update.
3462         * gnulib/import/flexmember.h: Update.
3463         * gnulib/import/float+.h: Update.
3464         * gnulib/import/float.c: Update.
3465         * gnulib/import/float.in.h: Update.
3466         * gnulib/import/fnmatch.c: Update.
3467         * gnulib/import/fnmatch.in.h: Update.
3468         * gnulib/import/fnmatch_loop.c: Update.
3469         * gnulib/import/fpucw.h: Update.
3470         * gnulib/import/frexp.c: Update.
3471         * gnulib/import/frexpl.c: Update.
3472         * gnulib/import/fstat.c: Update.
3473         * gnulib/import/fstatat.c: Update.
3474         * gnulib/import/getcwd-lgpl.c: Update.
3475         * gnulib/import/getcwd.c: Update.
3476         * gnulib/import/getdtablesize.c: Update.
3477         * gnulib/import/getlogin_r.c: Update.
3478         * gnulib/import/getprogname.c: Update.
3479         * gnulib/import/getprogname.h: Update.
3480         * gnulib/import/gettext.h: Update.
3481         * gnulib/import/gettimeofday.c: Update.
3482         * gnulib/import/glob-libc.h: Update.
3483         * gnulib/import/glob.c: Update.
3484         * gnulib/import/glob.in.h: Update.
3485         * gnulib/import/glob_internal.h: Update.
3486         * gnulib/import/glob_pattern_p.c: Update.
3487         * gnulib/import/globfree.c: Update.
3488         * gnulib/import/hard-locale.c: Update.
3489         * gnulib/import/hard-locale.h: Update.
3490         * gnulib/import/intprops.h: Update.
3491         * gnulib/import/inttypes.in.h: Update.
3492         * gnulib/import/isnan.c: Update.
3493         * gnulib/import/isnand-nolibm.h: Update.
3494         * gnulib/import/isnand.c: Update.
3495         * gnulib/import/isnanl-nolibm.h: Update.
3496         * gnulib/import/isnanl.c: Update.
3497         * gnulib/import/itold.c: Update.
3498         * gnulib/import/libc-config.h: Update.
3499         * gnulib/import/limits.in.h: Update.
3500         * gnulib/import/localcharset.c: Update.
3501         * gnulib/import/localcharset.h: Update.
3502         * gnulib/import/localtime-buffer.c: Update.
3503         * gnulib/import/localtime-buffer.h: Update.
3504         * gnulib/import/lstat.c: Update.
3505         * gnulib/import/m4/00gnulib.m4: Update.
3506         * gnulib/import/m4/__inline.m4: Update.
3507         * gnulib/import/m4/absolute-header.m4: Update.
3508         * gnulib/import/m4/alloca.m4: Update.
3509         * gnulib/import/m4/builtin-expect.m4: Update.
3510         * gnulib/import/m4/canonicalize.m4: Update.
3511         * gnulib/import/m4/chdir-long.m4: Update.
3512         * gnulib/import/m4/close.m4: Update.
3513         * gnulib/import/m4/closedir.m4: Update.
3514         * gnulib/import/m4/configmake.m4: Update.
3515         * gnulib/import/m4/d-ino.m4: Update.
3516         * gnulib/import/m4/d-type.m4: Update.
3517         * gnulib/import/m4/dirent_h.m4: Update.
3518         * gnulib/import/m4/dirfd.m4: Update.
3519         * gnulib/import/m4/dirname.m4: Update.
3520         * gnulib/import/m4/double-slash-root.m4: Update.
3521         * gnulib/import/m4/dup.m4: Update.
3522         * gnulib/import/m4/dup2.m4: Update.
3523         * gnulib/import/m4/eealloc.m4: Update.
3524         * gnulib/import/m4/environ.m4: Update.
3525         * gnulib/import/m4/errno_h.m4: Update.
3526         * gnulib/import/m4/error.m4: Update.
3527         * gnulib/import/m4/exponentd.m4: Update.
3528         * gnulib/import/m4/exponentl.m4: Update.
3529         * gnulib/import/m4/extensions.m4: Update.
3530         * gnulib/import/m4/extern-inline.m4: Update.
3531         * gnulib/import/m4/fchdir.m4: Update.
3532         * gnulib/import/m4/fcntl-o.m4: Update.
3533         * gnulib/import/m4/fcntl.m4: Update.
3534         * gnulib/import/m4/fcntl_h.m4: Update.
3535         * gnulib/import/m4/fdopendir.m4: Update.
3536         * gnulib/import/m4/filenamecat.m4: Update.
3537         * gnulib/import/m4/flexmember.m4: Update.
3538         * gnulib/import/m4/float_h.m4: Update.
3539         * gnulib/import/m4/fnmatch.m4: Update.
3540         * gnulib/import/m4/fnmatch_h.m4: Update.
3541         * gnulib/import/m4/fpieee.m4: Update.
3542         * gnulib/import/m4/frexp.m4: Update.
3543         * gnulib/import/m4/frexpl.m4: Update.
3544         * gnulib/import/m4/fstat.m4: Update.
3545         * gnulib/import/m4/fstatat.m4: Update.
3546         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3547         * gnulib/import/m4/getcwd-path-max.m4: Update.
3548         * gnulib/import/m4/getcwd.m4: Update.
3549         * gnulib/import/m4/getdtablesize.m4: Update.
3550         * gnulib/import/m4/getlogin.m4: Update.
3551         * gnulib/import/m4/getlogin_r.m4: Update.
3552         * gnulib/import/m4/getpagesize.m4: Update.
3553         * gnulib/import/m4/getprogname.m4: Update.
3554         * gnulib/import/m4/gettimeofday.m4: Update.
3555         * gnulib/import/m4/glibc21.m4: Update.
3556         * gnulib/import/m4/glob.m4: Update.
3557         * gnulib/import/m4/glob_h.m4: Update.
3558         * gnulib/import/m4/gnulib-cache.m4: Update.
3559         * gnulib/import/m4/gnulib-common.m4: Update.
3560         * gnulib/import/m4/gnulib-comp.m4: Update.
3561         * gnulib/import/m4/gnulib-tool.m4: Update.
3562         * gnulib/import/m4/hard-locale.m4: Update.
3563         * gnulib/import/m4/include_next.m4: Update.
3564         * gnulib/import/m4/inttypes-pri.m4: Update.
3565         * gnulib/import/m4/inttypes.m4: Update.
3566         * gnulib/import/m4/isnand.m4: Update.
3567         * gnulib/import/m4/isnanl.m4: Update.
3568         * gnulib/import/m4/largefile.m4: Update.
3569         * gnulib/import/m4/limits-h.m4: Update.
3570         * gnulib/import/m4/localcharset.m4: Update.
3571         * gnulib/import/m4/locale-fr.m4: Update.
3572         * gnulib/import/m4/locale-ja.m4: Update.
3573         * gnulib/import/m4/locale-zh.m4: Update.
3574         * gnulib/import/m4/localtime-buffer.m4: Update.
3575         * gnulib/import/m4/longlong.m4: Update.
3576         * gnulib/import/m4/lstat.m4: Update.
3577         * gnulib/import/m4/malloc.m4: Update.
3578         * gnulib/import/m4/malloca.m4: Update.
3579         * gnulib/import/m4/math_h.m4: Update.
3580         * gnulib/import/m4/mbrtowc.m4: Update.
3581         * gnulib/import/m4/mbsinit.m4: Update.
3582         * gnulib/import/m4/mbsrtowcs.m4: Update.
3583         * gnulib/import/m4/mbstate_t.m4: Update.
3584         * gnulib/import/m4/memchr.m4: Update.
3585         * gnulib/import/m4/memmem.m4: Update.
3586         * gnulib/import/m4/mempcpy.m4: Update.
3587         * gnulib/import/m4/memrchr.m4: Update.
3588         * gnulib/import/m4/mkdir.m4: Update.
3589         * gnulib/import/m4/mkstemp.m4: Update.
3590         * gnulib/import/m4/mmap-anon.m4: Update.
3591         * gnulib/import/m4/mode_t.m4: Update.
3592         * gnulib/import/m4/msvc-inval.m4: Update.
3593         * gnulib/import/m4/msvc-nothrow.m4: Update.
3594         * gnulib/import/m4/multiarch.m4: Update.
3595         * gnulib/import/m4/nocrash.m4: Update.
3596         * gnulib/import/m4/off_t.m4: Update.
3597         * gnulib/import/m4/onceonly.m4: Update.
3598         * gnulib/import/m4/open-cloexec.m4: Update.
3599         * gnulib/import/m4/open.m4: Update.
3600         * gnulib/import/m4/openat.m4: Update.
3601         * gnulib/import/m4/opendir.m4: Update.
3602         * gnulib/import/m4/pathmax.m4: Update.
3603         * gnulib/import/m4/rawmemchr.m4: Update.
3604         * gnulib/import/m4/readdir.m4: Update.
3605         * gnulib/import/m4/readlink.m4: Update.
3606         * gnulib/import/m4/realloc.m4: Update.
3607         * gnulib/import/m4/rename.m4: Update.
3608         * gnulib/import/m4/rewinddir.m4: Update.
3609         * gnulib/import/m4/rmdir.m4: Update.
3610         * gnulib/import/m4/save-cwd.m4: Update.
3611         * gnulib/import/m4/secure_getenv.m4: Update.
3612         * gnulib/import/m4/setenv.m4: Update.
3613         * gnulib/import/m4/signal_h.m4: Update.
3614         * gnulib/import/m4/ssize_t.m4: Update.
3615         * gnulib/import/m4/stat-time.m4: Update.
3616         * gnulib/import/m4/stat.m4: Update.
3617         * gnulib/import/m4/std-gnu11.m4: Update.
3618         * gnulib/import/m4/stdbool.m4: Update.
3619         * gnulib/import/m4/stddef_h.m4: Update.
3620         * gnulib/import/m4/stdint.m4: Update.
3621         * gnulib/import/m4/stdio_h.m4: Update.
3622         * gnulib/import/m4/stdlib_h.m4: Update.
3623         * gnulib/import/m4/strchrnul.m4: Update.
3624         * gnulib/import/m4/strdup.m4: Update.
3625         * gnulib/import/m4/strerror.m4: Update.
3626         * gnulib/import/m4/string_h.m4: Update.
3627         * gnulib/import/m4/strstr.m4: Update.
3628         * gnulib/import/m4/strtok_r.m4: Update.
3629         * gnulib/import/m4/sys_socket_h.m4: Update.
3630         * gnulib/import/m4/sys_stat_h.m4: Update.
3631         * gnulib/import/m4/sys_time_h.m4: Update.
3632         * gnulib/import/m4/sys_types_h.m4: Update.
3633         * gnulib/import/m4/tempname.m4: Update.
3634         * gnulib/import/m4/time_h.m4: Update.
3635         * gnulib/import/m4/unistd-safer.m4: Update.
3636         * gnulib/import/m4/unistd_h.m4: Update.
3637         * gnulib/import/m4/warn-on-use.m4: Update.
3638         * gnulib/import/m4/wchar_h.m4: Update.
3639         * gnulib/import/m4/wchar_t.m4: Update.
3640         * gnulib/import/m4/wctype_h.m4: Update.
3641         * gnulib/import/m4/wint_t.m4: Update.
3642         * gnulib/import/malloc.c: Update.
3643         * gnulib/import/malloc/scratch_buffer.h: Update.
3644         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3645         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3646         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3647         * gnulib/import/malloca.c: Update.
3648         * gnulib/import/malloca.h: Update.
3649         * gnulib/import/malloca.valgrind: Update.
3650         * gnulib/import/math.in.h: Update.
3651         * gnulib/import/mbrtowc.c: Update.
3652         * gnulib/import/mbsinit.c: Update.
3653         * gnulib/import/mbsrtowcs-impl.h: Update.
3654         * gnulib/import/mbsrtowcs-state.c: Update.
3655         * gnulib/import/mbsrtowcs.c: Update.
3656         * gnulib/import/memchr.c: Update.
3657         * gnulib/import/memmem.c: Update.
3658         * gnulib/import/mempcpy.c: Update.
3659         * gnulib/import/memrchr.c: Update.
3660         * gnulib/import/mkdir.c: Update.
3661         * gnulib/import/mkstemp.c: Update.
3662         * gnulib/import/msvc-inval.c: Update.
3663         * gnulib/import/msvc-inval.h: Update.
3664         * gnulib/import/msvc-nothrow.c: Update.
3665         * gnulib/import/msvc-nothrow.h: Update.
3666         * gnulib/import/open.c: Update.
3667         * gnulib/import/openat-die.c: Update.
3668         * gnulib/import/openat-priv.h: Update.
3669         * gnulib/import/openat-proc.c: Update.
3670         * gnulib/import/openat.c: Update.
3671         * gnulib/import/openat.h: Update.
3672         * gnulib/import/opendir.c: Update.
3673         * gnulib/import/pathmax.h: Update.
3674         * gnulib/import/pipe-safer.c: Update.
3675         * gnulib/import/rawmemchr.c: Update.
3676         * gnulib/import/readdir.c: Update.
3677         * gnulib/import/readlink.c: Update.
3678         * gnulib/import/realloc.c: Update.
3679         * gnulib/import/ref-add.sin: Update.
3680         * gnulib/import/ref-del.sin: Update.
3681         * gnulib/import/rename.c: Update.
3682         * gnulib/import/rewinddir.c: Update.
3683         * gnulib/import/rmdir.c: Update.
3684         * gnulib/import/same-inode.h: Update.
3685         * gnulib/import/save-cwd.c: Update.
3686         * gnulib/import/save-cwd.h: Update.
3687         * gnulib/import/scratch_buffer.h: Update.
3688         * gnulib/import/secure_getenv.c: Update.
3689         * gnulib/import/setenv.c: Update.
3690         * gnulib/import/signal.in.h: Update.
3691         * gnulib/import/stat-time.c: Update.
3692         * gnulib/import/stat-time.h: Update.
3693         * gnulib/import/stat-w32.c: Update.
3694         * gnulib/import/stat-w32.h: Update.
3695         * gnulib/import/stat.c: Update.
3696         * gnulib/import/stdbool.in.h: Update.
3697         * gnulib/import/stddef.in.h: Update.
3698         * gnulib/import/stdint.in.h: Update.
3699         * gnulib/import/stdio.in.h: Update.
3700         * gnulib/import/stdlib.in.h: Update.
3701         * gnulib/import/str-two-way.h: Update.
3702         * gnulib/import/strchrnul.c: Update.
3703         * gnulib/import/strdup.c: Update.
3704         * gnulib/import/streq.h: Update.
3705         * gnulib/import/strerror-override.c: Update.
3706         * gnulib/import/strerror-override.h: Update.
3707         * gnulib/import/strerror.c: Update.
3708         * gnulib/import/string.in.h: Update.
3709         * gnulib/import/stripslash.c: Update.
3710         * gnulib/import/strnlen1.c: Update.
3711         * gnulib/import/strnlen1.h: Update.
3712         * gnulib/import/strstr.c: Update.
3713         * gnulib/import/strtok_r.c: Update.
3714         * gnulib/import/sys_stat.in.h: Update.
3715         * gnulib/import/sys_time.in.h: Update.
3716         * gnulib/import/sys_types.in.h: Update.
3717         * gnulib/import/tempname.c: Update.
3718         * gnulib/import/tempname.h: Update.
3719         * gnulib/import/time.in.h: Update.
3720         * gnulib/import/unistd--.h: Update.
3721         * gnulib/import/unistd-safer.h: Update.
3722         * gnulib/import/unistd.in.h: Update.
3723         * gnulib/import/unsetenv.c: Update.
3724         * gnulib/import/verify.h: Update.
3725         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3726         * gnulib/import/wchar.in.h: Update.
3727         * gnulib/import/wctype.in.h: Update.
3728         * gnulib/import/xalloc-oversized.h: Update.
3729         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3730         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3731
3732 2018-08-16  Gary Benson <gbenson@redhat.com>
3733
3734         PR gdb/13000:
3735         * gdb/main.c (captured_main_1): Exit with nonzero status
3736         in batch mode if the last command to be executed failed.
3737         * NEWS: Mention the above.
3738
3739 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3740
3741         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3742         end of warning message.
3743
3744 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3745
3746         PR gdb/22943:
3747         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3748         (aarch64_extract_return_value): Use
3749         aapcs_is_vfp_call_or_return_candidate.
3750         (aarch64_return_in_memory): Likewise.
3751         (aarch64_store_return_value): Likewise.
3752
3753 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3754
3755         * aarch64-tdep.c
3756         (aapcs_is_vfp_call_or_return_candidate): Make static
3757         (pass_in_v_or_stack): Remove function.
3758         (pass_in_v_vfp_candidate): New function.
3759         (aarch64_push_dummy_call): Check for float register candidates.
3760
3761 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3762
3763         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3764         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3765         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3766
3767 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3768
3769         PR build/23399
3770         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3771         (struct ipa_sym_addresses): Rename to...
3772         (struct ipa_sym_addresses_common): ... this.
3773         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3774
3775 2018-08-28  Tom Tromey  <tom@tromey.com>
3776
3777         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3778         (token_fifo): Now a std::vector.
3779         (yylex, c_parse): Update.
3780         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3781         (token_fifo): Now a std::vector.
3782         (yylex, d_parse): Update.
3783         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3784         (token_fifo): Now a std::vector.
3785         (yylex, go_parse): Update.
3786
3787 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3788
3789         * parser-defs.h (struct type_stack) <elements>: Change type to
3790         std::vector<union type_stack_elt>.
3791         <depth, size>: Remove.
3792         * parse.c (parse_exp_in_context_1): Adjust.
3793         (type_stack_reserve): Remove.
3794         (check_type_stack_depth): Remove.
3795         (insert_into_type_stack): Adjust to std::vector.
3796         (insert_type): Likewise.
3797         (push_type): Likewise.
3798         (push_type_int): Likewise.
3799         (insert_type_address_space): Likewise.
3800         (pop_type): Likewise.
3801         (pop_type_int): Likewise.
3802         (pop_typelist): Likewise.
3803         (pop_type_stack): Likewise.
3804         (append_type_stack): Likewise.
3805         (push_type_stack): Likewise.
3806         (get_type_stack): Likewise.
3807         (type_stack_cleanup): Likewise.
3808         (push_typelist): Likewise.
3809         (follow_types): Likewise.
3810         (_initialize_parse): Likewise.
3811
3812 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3813
3814         * NEWS: Mention csky target.
3815
3816 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3817             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3818             Don Breazeal  <donb@codesourcery.com>
3819
3820         * csky-linux-tdep.c: New file.
3821         * csky-tdep.c: Likewise.
3822         * csky-tdep.h: Likewise.
3823         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3824         csky-tdep.o.
3825         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3826         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3827         * configure.tgt: Add csky support.
3828
3829 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3830
3831         * python/py-framefilter.c (py_print_frame): Print frame architecture
3832         when printing on an MI output.
3833
3834 2018-08-27  Tom Tromey  <tom@tromey.com>
3835
3836         PR build/23087:
3837         * configure: Rebuild.
3838         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3839
3840 2018-08-27  Tom Tromey  <tom@tromey.com>
3841
3842         * aarch64-linux-tdep.c
3843         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3844         casts to int.
3845
3846 2018-08-27  Tom Tromey  <tom@tromey.com>
3847
3848         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3849         unsigned.
3850         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3851         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3852         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3853         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3854         unsigned.
3855
3856 2018-08-27  Tom Tromey  <tom@tromey.com>
3857
3858         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3859         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3860
3861 2018-08-27  Tom Tromey  <tom@tromey.com>
3862
3863         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3864         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3865         ULONGEST_MAX.
3866         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3867         ULONGEST_MAX.
3868         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3869         ULONGEST_MAX.
3870         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3871         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3872         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3873         ULONGEST_MAX.
3874         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3875         (ppc64_linux_sigaction_tramp_frame)
3876         (ppc32_linux_sighandler_tramp_frame)
3877         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3878         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3879         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3880         * mn10300-linux-tdep.c (am33_linux_sigframe)
3881         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3882         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3883         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3884         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3885         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3886         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3887         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3888         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3889         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3890         * microblaze-linux-tdep.c
3891         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3892         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3893         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3894         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3895         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3896         * common/common-types.h (ULONGEST_MAX): New define.
3897         (CORE_ADDR_MAX): Fix formatting.
3898         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3899         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3900         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3901         (arm_linux_rt_sigreturn_tramp_frame)
3902         (arm_eabi_linux_sigreturn_tramp_frame)
3903         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3904         (thumb2_eabi_linux_sigreturn_tramp_frame)
3905         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3906         (arm_linux_restart_syscall_tramp_frame)
3907         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3908         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3909         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3910         ULONGEST_MAX.
3911         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3912
3913 2018-08-27  Tom Tromey  <tom@tromey.com>
3914
3915         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3916         CORE_ADDR_MAX.
3917         * mips-tdep.c (mips_deal_with_atomic_sequence)
3918         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3919         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3920         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3921         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3922         CORE_ADDR_MAX.
3923         * aarch64-tdep.c (aarch64_software_single_step): Use
3924         CORE_ADDR_MAX.
3925
3926 2018-08-27  Tom Tromey  <tom@tromey.com>
3927
3928         * linespec.c (complete_linespec_component): Add cast to "char".
3929         * completer.c (completion_tracker::build_completion_result): Add
3930         cast to "char".
3931
3932 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3933
3934         * solist.h (struct solist, struct target_so_ops): Fix
3935         indentation.
3936
3937 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3938
3939         * ada-tasks.c (ada_task_info_s): Remove typedef.
3940         (DEF_VEC_O(ada_task_info_s)): Remove.
3941         (struct ada_tasks_inferior_data): Initialize fields.
3942         <task_list>: Make an std::vector.
3943         (get_ada_tasks_inferior_data): Allocate with new.
3944         (ada_get_task_number): Adjust.
3945         (get_task_number_from_id): Likewise.
3946         (valid_task_id): Likewise.
3947         (ada_get_task_info_from_ptid): Likewise.
3948         (iterate_over_live_ada_tasks): Likewise.
3949         (add_ada_task): Likewise.
3950         (read_known_tasks): Likewise.
3951         (ada_build_task_list): Likewise.
3952         (print_ada_task_info): Likewise.
3953         (info_task): Likewise.
3954         (task_command_1): Likewise.
3955
3956 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3957
3958         * ada-lang.c (add_angle_brackets): Return std::string.
3959
3960 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3961
3962         * python/py-threadevent.c (py_get_event_thread): Initialize
3963         pythread.
3964
3965 2018-08-24  Pedro Alves  <palves@redhat.com>
3966
3967         * python/py-bpevent.c (create_breakpoint_event_object): Use
3968         copy-initialization.
3969         * python/py-continueevent.c (emit_continue_event): Use
3970         copy-initialization.
3971         * python/py-exitedevent.c (create_exited_event_object): Return a
3972         gdbpy_ref<>.
3973         (emit_exited_event): Use copy-initialization.
3974         * python/py-inferior.c (python_new_inferior)
3975         (python_inferior_deleted, add_thread_object): Use
3976         copy-initialization.
3977         * python/py-infevents.c (create_inferior_call_event_object)
3978         (create_register_changed_event_object)
3979         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3980         (emit_inferior_call_event, emit_memory_changed_event)
3981         (emit_register_changed_event): Use copy-initialization.
3982         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3983         Return a gdbpy_ref<>.
3984         (emit_new_objfile_event): Use copy-initialization.
3985         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3986         (emit_clear_objfiles_event): Use copy-initialization.
3987         * python/py-signalevent.c (create_signal_event_object): Use
3988         copy-initialization.
3989         * python/py-threadevent.c (create_thread_event_object): Use
3990         copy-initialization.
3991
3992 2018-08-24  Pedro Alves  <palves@redhat.com>
3993             Simon Marchi  <simon.marchi@ericsson.com>
3994
3995         PR gdb/23379
3996         * python/py-continueevent.c: Include "gdbthread.h".
3997         (create_continue_event_object): Add intro comment.  Add 'ptid'
3998         parameter.  Use it to find thread to pass to
3999         create_thread_event_object.
4000         (emit_continue_event): Pass PTID down to
4001         create_continue_event_object.
4002         * python/py-event.h (py_get_event_thread): Declare.
4003         (create_thread_event_object): Remove default from 'thread'
4004         parameter.
4005         * python/py-stopevent.c (create_stop_event_object): Use
4006         py_get_event_thread.
4007         * python/py-threadevent.c (get_event_thread): Rename to ...
4008         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4009         and use it to find the thread.
4010         (create_thread_event_object): Assert that THREAD isn't null.
4011         Don't find the event thread here.
4012
4013 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4014
4015         * block.h (blockrange, blockranges): New struct declarations.
4016         (struct block): Add new field named `ranges'.
4017         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4018         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4019         macros for accessing ranges in struct block.
4020         (make_blockranges): New declaration.
4021         block.c (make_blockranges): New function.
4022         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4023         for block.
4024         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4025         * blockframe.c (cache_pc_function_block): New static global.
4026         (clear_pc_function_cache): Clear cache_pc_function_block.
4027         (find_pc_partial_function): Move comment to symtab.h.  Add
4028         support for non-contiguous blocks.
4029         * cli/cli-cmds.c (block.h): Include.
4030         (print_disassembly): Handle printing of non-contiguous blocks.
4031         (disassemble_current_function): Likewise.
4032         (disassemble_command): Likewise.
4033
4034         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4035         BLOCK_START.
4036         * blockframe.c (get_pc_function_start): Likewise.
4037         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4038         (gcc_symbol_address): Likewise.
4039         * compile/compile-object-run.c (compile_object_run): Likewise.
4040         * compile/compile.c (get_expr_block_and_pc): Likewise.
4041         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4042         (func_addr_to_tail_call_list): Likewise.
4043         * findvar.c (default_read_var_value): Likewise.
4044         * inline-frame.c (inline_frame_this_id): Likewise.
4045         (skip-inline_frames): Likewise.
4046         * infcmd.c (until_next_command): Likewise.
4047         * linespec.c (convert_linespec_to_sals): Likewise.
4048         * parse.c (parse_exp_in_context_1): Likewise.
4049         * printcmd.c (build_address_symbolic): likewise.
4050         (info_address_command): Likewise.
4051         symtab.c (find_function_start_sal): Likewise.
4052         (skip_prologue_sal): Likewise.
4053         (find_function_alias_target): Likewise.
4054         (find_gnu_ifunc): Likewise.
4055         * stack.c (find_frame_funname): Likewise.
4056         * symtab.c (fixup_symbol_section): Likewise.
4057         (find_function_start_sal): Likewise.
4058         (skip_prologue_sal): Likewsie.
4059         (find_function_alias_target): Likewise.
4060         (find_gnu_ifunc): Likewise.
4061         * tracepoint.c (info_scope_command): Likewise.
4062         * value.c (value_fn_field): Likewise.
4063
4064         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4065         in place of find_pc_partial_function.
4066         * blockframe.c (find_function_entry_range_from_pc): New function.
4067         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4068         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4069         for each range in a block.
4070
4071
4072 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4073
4074         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4075         incrementation.
4076
4077 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4078
4079         * solib-svr4.c (read_program_headers_from_bfd): Return
4080         gdb::optional<gdb::byte_vector>.
4081         (svr4_exec_displacement): Adjust.
4082
4083 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4084
4085         * solib-svr4.c (read_program_header): Return
4086         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4087         (find_program_interpreter): Return
4088         gdb::optional<gdb::byte_vector>.
4089         (scan_dyntag_auxv): Adjust.
4090         (enable_break): Adjust.
4091         (svr4_exec_displacement): Adjust.
4092
4093 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4094
4095         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4096         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4097
4098 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4099
4100         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4101         string_vprintf.
4102         * guile/scm-utils.c (gdbscm_printf): Likewise.
4103         * serial.c (serial_printf): Likewise.
4104         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4105
4106 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4107
4108         * stack.c (print_frame): Print frame architecture when printing on
4109         an MI output.
4110         * NEWS: Mention new "arch" attribute in frame output.
4111
4112 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4113
4114         * arch/aarch64.h (aarch64_regnum): Update comment.
4115
4116 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4117
4118         * NEWS: Add SVE to 8.2 section.
4119
4120 2018-08-21  Pedro Alves  <palves@redhat.com>
4121
4122         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4123         out from gdbscm_parse_function_args.
4124         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4125         gdbscm_parse_function_args_1.
4126
4127 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4128
4129         PR gdb/17816
4130         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4131         operator.
4132
4133 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4134
4135         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4136
4137 2018-08-19  Michael Spang  <spang@google.com>
4138
4139         PR gdb/11786
4140         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4141         for PT_TLS segments.
4142
4143 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4144
4145         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4146         dwarf_variable_value.
4147         * dwarf2-frame.c (class dwarf_expr_executor):
4148         Add override for dwarf_variable_value.
4149         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4150         (class symbol_needs_eval_context): Likewise.
4151         (indirect_synthetic_pointer): Add forward declaration.
4152         (sect_variable_value): New function.
4153         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4154         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4155         for DW_OP_GNU_variable_value.
4156
4157 2018-08-16  Tom Tromey  <tom@tromey.com>
4158
4159         * top.c (read_command_file): Update.
4160         (command_line_input): Remove "repeat" argument.
4161         * ada-lang.c (get_selections): Update.
4162         * linespec.c (decode_line_2): Update.
4163         * defs.h (command_line_input): Remove argument.
4164         * cli/cli-script.c (read_next_line): Update.
4165         * python/py-gdb-readline.c: Update.
4166
4167 2018-08-17  Tom Tromey  <tom@tromey.com>
4168
4169         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4170         command_line_input.
4171
4172 2018-08-15  Tom Tromey  <tom@tromey.com>
4173
4174         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4175
4176 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4177
4178         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4179         If used, use find_pc_partial_function to find address range
4180         to disassemble.
4181         * mi/mi-main.c (mi_cmd_list_features): Report
4182         "data-disassemble-a-option" feature.
4183         * NEWS: Mention new -data-disassemble option -a.
4184
4185 2018-08-13  Tom Tromey  <tom@tromey.com>
4186
4187         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4188
4189 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4190
4191         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4192         (aarch64_linux_collect_sve_regset): Likewise.
4193         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4194         * regcache.h (regcache_map_entry_size): New function.
4195
4196 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4197
4198         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4199         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4200         (SVE_HEADER_VL_LENGTH): Likewise.
4201         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4202         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4203         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4204         (SVE_HEADER_SIZE_OFFSET): Likewise.
4205         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4206         (SVE_HEADER_VL_OFFSET): Likewise.
4207         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4208         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4209         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4210         (SVE_HEADER_SIZE): Likewise.
4211         (aarch64_linux_core_read_vq): Add function.
4212         (aarch64_linux_core_read_description): Check for SVE section.
4213
4214 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4215
4216         * aarch64-fbsd-tdep.c
4217         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4218         collect_size.
4219         * aarch64-linux-tdep.c
4220         (aarch64_linux_iterate_over_regset_sections): Likewise.
4221         * alpha-linux-tdep.c
4222         (alpha_linux_iterate_over_regset_sections):
4223         * alpha-nbsd-tdep.c
4224         (alphanbsd_iterate_over_regset_sections): Likewise.
4225         * amd64-fbsd-tdep.c
4226         (amd64fbsd_iterate_over_regset_sections): Likewise.
4227         * amd64-linux-tdep.c
4228         (amd64_linux_iterate_over_regset_sections): Likewise.
4229         * arm-bsd-tdep.c
4230         (armbsd_iterate_over_regset_sections): Likewise.
4231         * arm-fbsd-tdep.c
4232         (arm_fbsd_iterate_over_regset_sections): Likewise.
4233         * arm-linux-tdep.c
4234         (arm_linux_iterate_over_regset_sections): Likewise.
4235         * corelow.c (get_core_registers_cb): Likewise.
4236         (core_target::fetch_registers): Likewise.
4237         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4238         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4239         * gdbarch.h (void): Regenerate.
4240         * gdbarch.sh: Add supply_size and collect_size.
4241         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4242         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4243         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4244         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4245         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4246         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4247         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4248         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4249         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4250         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4251         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4252         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4253         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4254         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4255         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4256         Likewise.
4257         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4258         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4259         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4260         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4261         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4262         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4263         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4264         Likewise.
4265         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4266         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4267         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4268         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4269         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4270         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4271         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4272         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4273
4274 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4275
4276         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4277         with string_printf.
4278
4279 2018-08-10  Keith Seitz  <keiths@redhat.com>
4280
4281         * compile/compile-c-support.c (add_code_header, add_code_footer):
4282         Move into policy class.
4283         (c_push_user_expression, pop_user_expression_nop)
4284         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4285         (compile_program): New host class.
4286         (c_compile_program): New typedef.
4287         (c_compute_porgram): Use c_compile_program.
4288
4289 2018-08-10  Keith Seitz  <keiths@redhat.com>
4290
4291         * compile/compile-internal.h (compile_instance::~compile_instance):
4292         Remove calls to htab_delete.
4293         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4294         * compile.c (compile_instance::compile_instance): Initialize
4295         htab unique pointers.
4296         (compile_instance::get_cached_type, compile_instance::insert_type)
4297         (compile_instance::error_symbol_once): Update for unique_ptr.
4298
4299 2018-08-10  Keith Seitz  <keiths@redhat.com>
4300
4301         * compile/compile-c-symbols.c (struct symbol_error)
4302         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4303         (compile_instance::insert_symbol_error)
4304         (compile_instance::error_symbol_once): Move to ...
4305         * compile/compile.c: ... here.
4306
4307 2018-08-10  Keith Seitz  <keiths@redhat.com>
4308
4309         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4310         instead of `new_compile_instance'.
4311         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4312         Update description.
4313         If the symbol error map is not initialized, create it.
4314         (generate_c_for_for_one_symbol): Do not check/initialize
4315         the symbol error map.
4316         * compile/compile-c-types.c (compile_c_instance): Make a class.
4317         Update all callers.
4318         (compile_instance::compile_instance): Initialize the type cache.
4319         (get_cached_type): New function.
4320         (insert_type): Update description.
4321         (compile_c_instance::m_default_cflags): Define.
4322         (convert_type): Update description.  Use get_cached_type.
4323         (delete_instance): Moved to destructor.
4324         (new_compile_instance): Moved to constructor.
4325         * compile/compile-c.h (compile_c_instance): Make class inheriting
4326         from compile_instance.
4327         <base>: Remove field.
4328         <type_map, symbol_err_map>: Move to base class.
4329         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4330         * compile/compile-internal.h (compile_instance): Make class.
4331         <type_map_t, symbol_err_map_t>: Define.
4332         <fe>: Rename to `m_gcc_fe'.
4333         <scope, block, gcc_target_options>: Add `m_' prefix.
4334         <m_type_map, m_symbol_err_map>: New fields, moved from
4335         compile_c_instance.
4336         <destroy>: Remove.
4337         (convert_type, new_compile_instance): Remove.
4338         * compile/compile.c (cleanup_compile_instance): Remove.
4339         (compile_to_object): Use unique_ptr to eliminate cleanups.
4340         (compile_instance::set_print_callback, compile_instance::version)
4341         (compile_instance::set_verbose)
4342         (compile_instance::set_driver_filename)
4343         (compile_instance::set_triplet_regexp)
4344         (compile_instance::set_arguments)
4345         (compile_instance::set_source_file)
4346         (compile_instance::compile): Define.
4347
4348 2018-08-10  Keith Seitz  <keiths@redhat.com>
4349
4350         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4351         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4352         gcc-c-fe.def to define C plugin.
4353         (delete_instance): Delete `c_plugin'.
4354         (new_compile_instance): Initialize `c_plugin'.
4355         * compile/compile-c.h: Include gcc_c_plugin.h.
4356         (struct compile_c_instance) <c_plugin>: New member.
4357         * gcc-c-plugin.h: New file.
4358         Update all callers with API change.
4359
4360 2018-08-10  Keith Seitz  <keiths@redhat.com>
4361
4362         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4363         (HFILES_NO_SRCDIR): ... to here.
4364         Add compile-internal.h and compile-c.h.
4365         * compile/compile-c-support.c: Include compile-c.h.
4366         * compile/compile-c-symbols.c: Include compile-c.h.
4367         (generate_c_for_variable_locations): Update comment.
4368         * compile/compile-c-types.c: Include compile-c.h.
4369         * compile/compile-c.h: New file -- moved C language declarations
4370         from other files here.
4371         * compile/compile-internal.h: Do not include hashtab.h or
4372         common/enum-flags.h.
4373         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4374         (gcc_convert_symbol, gcc_symbol_address)
4375         (generate_c_for_variable_locations, c_get_mode_for_size)
4376         (c_get_range_decl_name): Definitions moved to compile-c.h.
4377         * compile/compile-loc2c.c: Include compile-c.h.
4378
4379 2018-08-10  Keith Seitz  <keiths@redhat.com>
4380
4381         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4382         (c_symbol_substitution_name): ... this.
4383         Update all callers.
4384
4385 2018-08-10  Keith Seitz  <keiths@redhat.com>
4386
4387         * compile/compile-c-support.c (c_compute_program): Use
4388         unique_xmalloc_ptr to eliminate cleanup.
4389         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4390         Return a unique_xmalloc_ptr and eliminate cleanup.
4391         * compile/compile-internal.h (generate_c_for_variable_locations):
4392         Return unique_xmalloc_ptr and update description.
4393
4394 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4395
4396         * corelow.c (core_target::get_core_register_section): Rename
4397         min_size to section_min_size.
4398
4399 2018-08-09  Jim Wilson  <jimw@sifive.com>
4400
4401         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4402         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4403         * NEWS: Mention new GNU/Linux RISC-V target.
4404         * configure.host: Add riscv*-*-linux*.
4405         * configure.nat: Add riscv*.
4406         * configure.tgt: Add riscv*-*-linux*.
4407         * riscv-linux-nat.c: New file.
4408         * riscv-linux-tdep.c: New file.
4409
4410 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4411
4412         * infrun.c (resume): Make static, add forward declaration.
4413         (proceed): Update header comment.
4414         * infrun.h (resume): Delete declaration.
4415
4416 2018-08-09  Tom Tromey  <tom@tromey.com>
4417
4418         * riscv-tdep.h: Minor formatting fixes.
4419
4420 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4421
4422         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4423         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4424         (test_mkdir_recursive): Likewise.
4425         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4426
4427 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4428
4429         * valarith.c (value_subscripted_rvalue): If an array is not in
4430         memory, and we don't know the upper bound, then we can't know that
4431         the requested element exists or not.
4432
4433 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4434
4435         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4436         (target_options_to_string): Add comment.
4437
4438 2018-08-08  Tom Tromey  <tom@tromey.com>
4439
4440         * unittests/scoped_mmap-selftests.c: Check result of "write".
4441
4442 2018-08-08  Jim Wilson  <jimw@sifive.com>
4443
4444         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4445         (decode_register_index_short): New.
4446         (decode_j_type_insn, decode_cj_type_insn): New.
4447         (decode_b_type_insn, decode_cb_type_insn): New.
4448         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4449         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4450         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4451         is_c_sw_insn instead of is_sw_insn.
4452         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4453         (riscv_software_single_step): New.
4454         * riscv-tdep.h (riscv_software_single_step): Declare.
4455
4456         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4457         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4458
4459 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4460
4461         PR gdb/18050:
4462         * target.c (dispose_inferior): Don't dispose of inferiors that are
4463         already killed.
4464
4465 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4466
4467         * remote.c (remote_target::download_tracepoint): Change char* to
4468         const char*.
4469
4470 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4471
4472         * target.h (target_options_to_string): Return an std::string.
4473         * target.c (str_comma_list_concat_elem): Return void, use
4474         std::string.
4475         (do_option): Likewise.
4476         (target_options_to_string): Return an std::string.
4477         * linux-nat.c (linux_nat_target::wait): Adjust.
4478         * target-debug.h (target_debug_print_options): Adjust.
4479
4480 2018-08-07  Tom Tromey  <tom@tromey.com>
4481
4482         * Makefile.in (CPPFLAGS): New variable.
4483         (INTERNAL_CPPFLAGS): Use it.
4484
4485 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4486
4487         * NEWS: Mention the index cache.
4488
4489 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4490
4491         * common/pathstuff.h (get_standard_cache_dir): New.
4492         * common/pathstuff.c (get_standard_cache_dir): New.
4493         * build-id.h (build_id_to_string): New.
4494         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4495         DEBUG_STR_SUFFIX): Move to here.
4496         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4497         DEBUG_STR_SUFFIX): Move from there.
4498         (write_psymtabs_to_index): Make non-static, add basename
4499         parameter.  Write to temporary files, rename when done.
4500         (save_gdb_index_command): Adjust call to
4501         write_psymtabs_to_index.
4502         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4503         field.
4504         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4505         (get_gdb_index_contents_from_cache): New.
4506         (get_gdb_index_contents_from_cache_dwz): New.
4507         (dwarf2_initialize_objfile): Read index from cache.
4508         (dwarf2_build_psymtabs): Save to index.
4509         * dwarf-index-cache.h: New file.
4510         * dwarf-index-cache.c: New file.
4511         * dwarf-index-write.h: New file.
4512
4513 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4514
4515         * gnulib/aclocal.m4: Re-generate.
4516         * gnulib/config.in: Re-generate.
4517         * gnulib/configure: Re-generate.
4518         * gnulib/import/Makefile.am: Re-generate.
4519         * gnulib/import/Makefile.in: Re-generate.
4520         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4521         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4522         * gnulib/import/m4/mkdir.m4: New file.
4523         * gnulib/import/mkdir.c: New file.
4524         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4525         module.
4526
4527 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4528
4529         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4530         * common/scoped_mmap.c: New file.
4531         * common/scoped_mmap.h (destroy): New method.
4532         (~scoped_mmap, reset): Use destroy.
4533         (scoped_mmap): New move constructor.
4534         (mmap_file): New declaration.
4535         * unittests/scoped_mmap-selftests.c (test_normal,
4536         test_invalid_filename, run_tests): New functions.
4537         (_initialize_scoped_mmap_selftests): Register selftest.
4538
4539 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4540
4541         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4542         (read_gdb_index_from_buffer): ... this.  Remove section
4543         parameter, add buffer parameter.
4544         (get_gdb_index_contents_ftype,
4545         get_gdb_index_contents_dwz_ftype): New typedefs.
4546         (dwarf2_read_gdb_index): Add callback parameters to get the
4547         index contents.
4548         (get_gdb_index_contents_from_section): New.
4549         (dwarf2_initialize_objfile): Update call to
4550         dwarf2_read_gdb_index.
4551
4552 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4553
4554         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4555         (gdb_open_cloexec): Likewise.
4556         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4557         (commandline_from_pid): Likewise.
4558         (linux_xfer_osdata_threads): Likewise.
4559         (linux_xfer_osdata_fds): Likewise.
4560         * ada-lang.c (is_package_name): Likewise.
4561         * auxv.c (procfs_xfer_auxv): Likewise.
4562         * breakpoint.c (print_one_breakpoint_location): Use
4563         uiout::field_fmt.
4564         (print_one_catch_solib): Use string_printf.
4565         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4566         (add_pe_forwarded_sym): Likewise.
4567         * dwarf2read.c (create_type_unit_group): Likewise.
4568         (build_error_marker_type): Likewise.
4569         * infcall.c (get_function_name): Likewise.
4570         * valprint.c (print_converted_chars_to_obstack): Likewise.
4571         * xtensa-tdep.c (xtensa_register_type): Likewise.
4572
4573 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4574
4575         * remote.c (remote_target::download_tracepoint): Fix format
4576         string errors.
4577
4578 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4579
4580         * tracefile.c: Include common/byte-vector.h.
4581         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4582         with trace_regblock_size if needed.  Update uses of buf.
4583
4584 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4585
4586         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4587         std::vector<unsigned char>.
4588         * tracepoint.c (collection_list::collection_list): Remove
4589         m_regs_mask initializer from initializer list.  Resize
4590         m_regs_mask using the largest remote register number.
4591         (collection_list::add_remote_register): Remove size check on
4592         m_regs_mask.  Use at to access element.
4593         (collection_list::stringify): Change type of temp_buf to
4594         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4595         stringify the register mask.  Use pack_hex_byte for the register
4596         mask.
4597
4598 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4599
4600         * tracepoint.h (class collection_list) <add_register>: Remove.
4601         <add_remote_register, add_ax_registers, add_local_register>:
4602         Declare.
4603         <add_memrange>: Add scope parameter.
4604         * tracepoint.c (encode_actions_1): Likewise.
4605         (collection_list::add_register): Rename to ...
4606         (collection_list::add_remote_register): ... this.  Update
4607         comment.
4608         (collection_list::add_ax_registers, add_local_register): New
4609         methods.
4610         (collection_list::add_memrange): Add scope parameter.  Call
4611         add_local_register instead of add_register.
4612         (finalize_tracepoint_aexpr): New function.
4613         (collection_list::collect_symbol): Update calls to add_memrange.
4614         Call add_local_register instead of add_register.  Call
4615         add_ax_registers.  Call finalize_tracepoint_aexpr.
4616         (encode_actions_1): Get remote regnos for $reg action.  Call
4617         add_remote_register, add_ax_registers, and add_local_register.
4618         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4619         (validate_actionline): Call finalize_tracepoint_aexpr.
4620
4621 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4622
4623         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4624         Replace array buf with gdb::char_vector buf, of size
4625         get_remote_packet_size ().  Replace references to buf and
4626         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4627         and xsnprintf with snprintf.  Raise errors if the buffer is too
4628         small.
4629
4630 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4631
4632         * remote.c (remote_target::download_tracepoint): Fix the has_more
4633         predicate in the QTDP action list iteration.
4634
4635 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4636
4637         * remote.c (remote_target::download_tracepoint): Fix indentation
4638         in for block.
4639
4640 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4641
4642         * proc-api.c (_initialize_proc_api): Remove c, unused.
4643         * procfs.c (procfs_init_inferior): Remove signals, unused.
4644         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4645         unused.
4646
4647 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4648             Andrew Burgess  <andrew.burgess@embecosm.com>
4649
4650         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4651         'W_STOPCODE (0)' as this could be ambiguous.
4652
4653 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4654
4655         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4656         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4657         "ai_socktype").
4658
4659 2018-08-02  Tom Tromey  <tom@tromey.com>
4660
4661         PR symtab/16842.
4662         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4663         symbols.
4664         (process_structure_scope): Likewise.
4665
4666 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4667
4668         PR gdb/22629:
4669         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4670         kill inferior.
4671
4672 2018-08-02  Tom Tromey  <tom@tromey.com>
4673
4674         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4675         (darwin_suspend_inferior, darwin_resume_inferior)
4676         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4677         (darwin_check_new_threads): Check result of get_darwin_inferior.
4678
4679 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4680
4681         GDB 8.1.1 released.
4682
4683 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4684
4685         * varobj.c (varobj_get_path_expr_parent): Report an error if
4686         parent is a dynamic varobj.
4687
4688 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4689
4690         * gnulib/aclocal.m4: Re-generate.
4691         * gnulib/config.in: Re-generate.
4692         * gnulib/configure: Re-generate.
4693         * gnulib/import/Makefile.in: Re-generate.
4694         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4695         * gnulib/import/m4/onceonly.m4: Re-generate.
4696
4697 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4698
4699         * target-descriptions.c (struct xml_test_tdesc): New.
4700         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4701         (record_xml_tdesc): Update.
4702         (maintenance_check_xml_descriptions): Update.
4703         * target-descriptions.h (record_xml_tdesc): Update comment.
4704
4705 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4706
4707         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4708         checking array bounds are defined.
4709
4710 2018-07-30  Tom Tromey  <tom@tromey.com>
4711
4712         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4713         irreflexivity violation.
4714
4715 2018-07-30  Tom Tromey  <tom@tromey.com>
4716
4717         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4718         * value.c (unpack_long): Remove lint code.
4719         * valops.c (value_ind): Remove lint code.
4720         * valarith.c (value_x_binop, value_x_unop, value_equal)
4721         (value_pos): Remove lint code.
4722
4723 2018-07-28  Tom de Vries  <tdevries@suse.de>
4724
4725         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4726         with undefined upper bound as <optimized out>.
4727
4728 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4729
4730         * gcore.in: Rename variable "name" to "prefix".  Expand
4731         "usage" text.
4732
4733 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4734
4735         * windows-nat.c (windows_nat_target::create_inferior): Update to
4736         call close() in global namespace.
4737
4738 2018-07-26  Tom Tromey  <tom@tromey.com>
4739
4740         * dwarf-index-write.c (add_address_entry): Don't add objfile
4741         offsets.
4742         * dbxread.c (find_stab_function): Rename from
4743         find_stab_function_addr.  Return a bound_minimal_symbol.
4744         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4745         Don't add objfile offsets.
4746         (end_psymtab): Use raw_text_low, raw_text_high,
4747         MSYMBOL_VALUE_RAW_ADDRESS.
4748         (read_ofile_symtab): Update.
4749         (process_one_symbol): Update.
4750         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4751         offsets.
4752         (dw2_relocate): Remove.
4753         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4754         searching addrmap.
4755         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4756         Update.
4757         (process_psymtab_comp_unit_reader, add_partial_symbol)
4758         (add_partial_subprogram, dwarf2_ranges_read): Update.
4759         (load_partial_dies): Update.
4760         (add_address_entry): Don't add objfile offsets.
4761         (dwarf2_build_include_psymtabs): Update.
4762         (create_addrmap_from_aranges): Don't add objfile offsets.
4763         (dw2_find_pc_sect_compunit_symtab): Update.
4764         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4765         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4766         Update.
4767         (parse_partial_symbols): Don't add objfile offsets.  Use
4768         raw_text_low, raw_text_high.  Update.
4769         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4770         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4771         or call 'relocate' quick function.  Clear psymbol_map.
4772         * psympriv.h (struct partial_symbol) <address>: Add section
4773         offset.
4774         <set_unrelocated_address>: Rename from set_address.
4775         <raw_text_low, raw_text_high>: New methods.
4776         <text_low, text_high>: Add objfile parameter.
4777         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4778         set_unrelocated_address.
4779         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4780         (find_pc_psymbol): Update.
4781         (fixup_psymbol_section, relocate_psymtabs): Remove.
4782         (dump_psymtab, psym_functions): Update.
4783         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4784         parameter.
4785         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4786         (start_psymtab_common): Update.
4787         * symfile-debug.c (debug_qf_relocate): Remove.
4788         (debug_sym_quick_functions): Update.
4789         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4790         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4791         Update.
4792
4793 2018-07-26  Tom Tromey  <tromey@redhat.com>
4794
4795         * dbxread.c (end_psymtab): Use text_high_valid and
4796         text_low_valid.
4797         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4798         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4799         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4800         Update comment.
4801         <text_low_valid, text_high_valid>: New fields.
4802         <set_text_low, set_text_high>: Update.
4803         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4804
4805 2018-07-26  Tom Tromey  <tom@tromey.com>
4806
4807         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4808         Update.
4809         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4810         textlow and texthigh fields.
4811         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4812         Update.
4813         * mdebugread.c (parse_lines, parse_partial_symbols)
4814         (psymtab_to_symtab_1): Update.
4815         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4816         Rename fields.  Update comment.  Now private.
4817         <text_low, text_high, set_text_low, set_text_high>: New methods.
4818         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4819         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4820         (start_psymtab_common, maintenance_info_psymtabs)
4821         (maintenance_check_psymtabs): Update.
4822         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4823         texthigh fields.
4824         (scan_xcoff_symtab): Update.
4825
4826 2018-07-26  Tom Tromey  <tromey@redhat.com>
4827
4828         * psympriv.h (struct partial_symbol) <unrelocated_address,
4829         address, set_address>: New methods.
4830         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4831         (fixup_psymbol_section, relocate_psymtabs): Update.
4832         (print_partial_symbols): Add 'objfile' parameter.  Update.
4833         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4834         Update.
4835
4836 2018-07-26  Tom Tromey  <tom@tromey.com>
4837
4838         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4839         (debug_names::write_psymbols): Update.
4840         * psympriv.h (struct partial_symbol): Derive from
4841         general_symbol_info.
4842         <obj_section>: New method.
4843         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4844         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4845         (find_pc_sect_psymbol, fixup_psymbol_section)
4846         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4847         (print_partial_symbols, recursively_search_psymtabs)
4848         (compare_psymbols, psymbol_hash, psymbol_compare)
4849         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4850         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4851
4852 2018-07-26  Tom Tromey  <tromey@redhat.com>
4853
4854         * dbxread.c (end_psymtab): Remove dead code.
4855
4856 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4857
4858         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4859         DWARF unwinders are disabled.
4860         * dwarf2-frame.c: Add dwarf2read.h include.
4861         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4862         disabled.
4863         (dwarf2_frame_unwinders_enabled_p): Define.
4864         (show_dwarf_unwinders_enabled_p): New function.
4865         (_initialize_dwarf2_frame): Register switch to control DWARF
4866         unwinder use.
4867         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4868         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4869         (show_dwarf_cmdlist): Remove static keyword.
4870         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4871         (show_dwarf_cmdlist): Declare.
4872         * NEWS: Document new feature.
4873
4874 2018-07-26  Tom de Vries  <tdevries@suse.de>
4875
4876         PR breakpoints/23366
4877         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4878
4879 2018-07-26  Tom de Vries  <tdevries@suse.de>
4880
4881         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4882         DW_AT_count can't be translated to a dynamic prop.
4883
4884 2018-07-25  Tom de Vries  <tdevries@suse.de>
4885
4886         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4887         try/catch.
4888
4889 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4890
4891         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4892
4893 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4894
4895         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4896
4897 2018-07-24  Keith Seitz  <keiths@redhat.comt
4898
4899         PR symtab/23010
4900         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4901         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4902         instead of add_symbol_to_list.
4903         (read_file_scope): Call prepare_one_comp_unit before reading
4904         any other DIEs.
4905
4906 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4907
4908         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4909
4910 2018-07-24  Tom Tromey  <tom@tromey.com>
4911
4912         * utils.c (malloc, realloc, free): Don't declare.
4913         * configure, config.in: Rebuild.
4914         * configure.ac: Don't check for declarations of free, malloc, or
4915         realloc.
4916
4917 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4918
4919         * aarch64-linux-nat.c
4920         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4921         variable.
4922         * arm-linux-nat.c (fetch_regs): Likewise.
4923         (store_regs): Likewise.
4924         (fetch_vfp_regs): Likewise.
4925         (store_vfp_regs): Likewise.
4926         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4927         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4928         (arm_linux_nat_target::insert_watchpoint): Likewise.
4929         (arm_linux_nat_target::remove_watchpoint): Likewise.
4930         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4931         Likewise.
4932         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4933         Likewise.
4934         * ppc-linux-nat.c (fetch_register): Likewise.
4935         (fetch_all_gp_regs): Likewise.
4936         (fetch_ppc_registers): Likewise.
4937         (store_all_gp_regs): Likewise.
4938         (store_ppc_registers): Likewise.
4939         (hwdebug_insert_point): Likewise.
4940         (can_use_watchpoint_cond_accel): Likewise.
4941         * remote-sim.c (gdb_os_write_stdout): Likewise.
4942
4943 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4944             Tom Tromey  <tom@tromey.com>
4945
4946         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4947         test for it.
4948         * configure: Rebuild.
4949
4950 2018-07-22  Tom Tromey  <tom@tromey.com>
4951
4952         * regformats/regdat.sh: Define xmltarget_${name} inside
4953         #ifndef IN_PROCESS_AGENT.
4954
4955 2018-07-22  Tom Tromey  <tom@tromey.com>
4956
4957         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4958
4959 2018-07-22  Tom Tromey  <tom@tromey.com>
4960
4961         * symfile.c (reread_symbols): Notify iter, not objfile.
4962
4963 2018-07-22  Tom Tromey  <tom@tromey.com>
4964
4965         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4966         Use arch_ops.
4967         (ravenscar_thread_target::prepare_to_store): Likewise.
4968
4969 2018-07-22  Tom Tromey  <tom@tromey.com>
4970
4971         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4972         unused variable.  Call value_fetch_lazy when needed.
4973         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4974         Remove unused variable.  Call value_fetch_lazy when needed.
4975
4976 2018-07-22  Tom Tromey  <tom@tromey.com>
4977
4978         * m32c-tdep.c (mark_dma): Return void.
4979         (make_regs): Remove unused declarations.
4980
4981 2018-07-22  Tom Tromey  <tom@tromey.com>
4982
4983         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4984         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4985         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4986         bkscm_get_valid_block_smob_arg_unsafe for effect.
4987
4988 2018-07-22  Tom Tromey  <tom@tromey.com>
4989
4990         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4991         value_type.
4992
4993 2018-07-22  Tom Tromey  <tom@tromey.com>
4994
4995         * windows-nat.c (saved_context): Conditionally define.
4996         * remote.c (remote_target::remote_btrace_maybe_reopen):
4997         Conditionally declare "warned".
4998         * inflow.c (sigquit_ours): Conditionally define.
4999         (new_tty): Move "tty" declaration inside #if.
5000         * guile/guile.c (guile_datadir): Conditionally define.
5001         * charset.c (set_be_le_names): Move some declarations inside #if.
5002         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5003         #if.
5004         (parse_xml_btrace_conf): Likewise.
5005
5006 2018-07-22  Tom Tromey  <tom@tromey.com>
5007
5008         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5009
5010 2018-07-22  Tom Tromey  <tom@tromey.com>
5011
5012         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5013         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5014         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5015         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5016         * stack.c (frame_apply_level_command): Remove unused variable.
5017         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5018         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5019         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5020         unused variable.
5021         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5022         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5023         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5024         variable.
5025         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5026         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5027         variable.
5028         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5029         Remove unused variable.
5030         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5031         variable.
5032         * common/tdesc.c (print_xml_feature::visit): Remove unused
5033         variable.
5034         * compile/compile-object-load.c (store_regs): Remove unused
5035         variables.
5036         * complaints.c (clear_complaints): Remove unused variable.
5037         * corelow.c (core_target_open): Remove unused variable.
5038         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5039         variable.
5040         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5041         variable.
5042         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5043         variable.
5044         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5045         variable.
5046         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5047         variable.
5048         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5049         variable.
5050         * ia64-tdep.c (examine_prologue): Remove unused variable.
5051         * infcall.c (run_inferior_call): Remove unused variable.
5052         * inferior.c (exit_inferior): Remove unused variable.
5053         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5054         * linespec.c (decode_line_2): Remove unused variable.
5055         * linux-nat.c (super_close): Remove.
5056         * linux-tdep.c (linux_info_proc): Remove unused variable.
5057         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5058         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5059         Remove unused variable.
5060         * parse.c (find_minsym_type_and_address): Remove unused variable.
5061         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5062         variable.
5063         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5064         variable.
5065         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5066         variables.
5067         * record-btrace.c (record_btrace_target::store_registers): Remove
5068         unused variable.
5069         (cmd_show_record_btrace_cpu): Remove unused variable.
5070         * riscv-tdep.c (riscv_register_reggroup_p)
5071         (riscv_push_dummy_call, riscv_return_value): Remove unused
5072         variable.
5073         * rust-exp.y (literal): Remove unused variable.
5074         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5075         unused variable.
5076         <STRUCTOP_ANONYMOUS>: Likewise.
5077         * s390-linux-tdep.c (s390_linux_init_abi_31)
5078         (s390_linux_init_abi_64): Remove unused variable.
5079         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5080         (file_select_thread, net_windows_open, _initialize_ser_windows):
5081         Remove unused variables.
5082         * symtab.c (find_pc_sect_line): Remove unused variable.
5083         * target-memory.c (compute_garbled_blocks): Remove unused
5084         variable.
5085         (target_write_memory_blocks): Remove unused variable.
5086         * target.c (target_stack::unpush): Remove unused variables.
5087         * tracepoint.c (start_tracing, all_tracepoint_actions)
5088         (merge_uploaded_trace_state_variables)
5089         (print_one_static_tracepoint_marker): Remove unused variable.
5090         * unittests/basic_string_view/element_access/char/1.cc (test01):
5091         Remove unused variable.
5092         * windows-nat.c (windows_continue, windows_add_all_dlls)
5093         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5094         Remove unused variables.
5095
5096 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5097
5098         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5099         attr_profile in HAVE_ELF.
5100         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5101         HAVE_ELF.
5102
5103 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5104
5105         * frame.c (frame_register_unwind): Change parameter name.
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.h (frame_register_unwind): Likewise.
5111         (frame_unwind_register): Likewise.
5112         (frame_unwind_register_value): Likewise.
5113         (frame_unwind_register_signed): Likewise.
5114         (frame_unwind_register_unsigned): Likewise.
5115         (frame_unwind_arch): Likewise.
5116
5117 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5118
5119         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5120         ISA maintenance.
5121
5122 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5123
5124         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5125         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5126         hand.
5127
5128 2018-07-20  Keith Seitz  <keiths@redhat.com>
5129
5130         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5131         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5132         m_compunit_symtab, m_language>: Add "m_" prefix.
5133         Update all uses.
5134         * buildsym.c: Update all uses.
5135
5136 2018-07-20  Tom Tromey  <tom@tromey.com>
5137
5138         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5139         * buildsym.h (record_line_ftype): Remove typedef.
5140
5141 2018-07-20  Tom Tromey  <tom@tromey.com>
5142
5143         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5144         (end_expandable_symtab): Likewise.
5145         (end_symtab_get_static_block): Likewise.
5146         (end_symtab_from_static_block): Likewise.
5147         * buildsym-legacy.c (augment_type_symtab): Remove.
5148         (end_expandable_symtab): Remove.
5149         (end_symtab_get_static_block): Remove.
5150         (end_symtab_from_static_block): Remove.
5151
5152 2018-07-20  Tom Tromey  <tom@tromey.com>
5153
5154         * dwarf2read.c: Include buildsym.h.
5155         (struct dwarf2_cu) <builder>: New method.
5156         (fixup_go_packaging): Update.
5157         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5158         use scoped_free_pendings.
5159         (using_directives): Add "cu" parameter, remove "language".
5160         (read_import_statement, setup_type_unit_groups, )
5161         (read_func_scope, read_lexical_block_scope)
5162         (dwarf2_record_block_ranges, read_namespace): Update.
5163         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5164         (lnp_state_machine::handle_end_sequence): Update.
5165         (class lnp_state_machine) <m_cu>: New member.
5166         <m_record_line_callback>: Remove.
5167         <m_currently_recording_lines>: New member.
5168         (lnp_state_machine::handle_set_file): Update.
5169         (noop_record_line): Remove.
5170         (dwarf_record_line_p): Add cu parameter.
5171         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5172         (lnp_state_machine::record_line)
5173         (lnp_state_machine::lnp_state_machine)
5174         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5175         (dwarf_decode_lines): Update.
5176         (dwarf2_start_subfile): Add cu parameter.
5177         (dwarf2_start_symtab, new_symbol): Update.
5178         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5179         Remove dwarf2_per_objfile parameter.
5180         (dwarf_decode_macros): Update.
5181
5182 2018-07-20  Tom Tromey  <tom@tromey.com>
5183
5184         * stabsread.c (define_symbol): Update.
5185         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5186         * dwarf2read.c (new_symbol): Update.
5187         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5188         * cp-namespace.c: Include buildsym.h.
5189         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5190         * buildsym-legacy.c (get_buildsym_compunit): New function.
5191
5192 2018-07-20  Tom Tromey  <tom@tromey.com>
5193
5194         * xcoffread.c: Include buildsym-legacy.h.
5195         * windows-nat.c: Include buildsym-legacy.h.
5196         * stabsread.c: Include buildsym-legacy.h.
5197         * mdebugread.c: Include buildsym-legacy.h.
5198         * buildsym-legacy.h: New file.
5199         * buildsym-legacy.c: New file, from buildsym.c.
5200         * go32-nat.c: Include buildsym-legacy.h.
5201         * dwarf2read.c: Include buildsym-legacy.h.
5202         * dbxread.c: Include buildsym-legacy.h.
5203         * cp-namespace.c: Include buildsym-legacy.h.
5204         * coffread.c: Include buildsym-legacy.h.
5205         * buildsym.h: Move some contents to buildsym-legacy.h.
5206         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5207         buildsym-legacy.c.
5208         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5209
5210 2018-07-20  Tom Tromey  <tom@tromey.com>
5211
5212         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5213         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5214         (buildsym_compunit::buildsym_compunit)
5215         (buildsym_compunit::~buildsym_compunit)
5216         (buildsym_compunit::get_macro_table): Define.
5217
5218 2018-07-20  Tom Tromey  <tom@tromey.com>
5219
5220         * buildsym.c (reset_symtab_globals): Remove.
5221         (buildsym_compunit::end_symtab_from_static_block): Update.
5222         (buildsym_compunit::augment_type_symtab): Update.
5223         (end_symtab_from_static_block): Call free_buildsym_compunit.
5224         (augment_type_symtab, end_symtab, end_expandable_symtab):
5225         Likewise.
5226
5227 2018-07-20  Tom Tromey  <tom@tromey.com>
5228
5229         * arch-utils.c: Do not include buildsym.h.
5230         * mipsread.c: Do not include buildsym.h.
5231         * machoread.c: Do not include buildsym.h.
5232         * elfread.c: Do not include buildsym.h.
5233
5234 2018-07-20  Tom Tromey  <tom@tromey.com>
5235
5236         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5237         initialization.
5238         (buildsym_compunit): Add new constructor.
5239         (struct buildsym_compunit) <get_last_source_file, finish_block,
5240         record_block_range, start_subfile, patch_subfile_names,
5241         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5242         set_last_source_start_addr, get_last_source_start_addr,
5243         get_local_using_directives, set_local_using_directives,
5244         get_global_using_directives, outermost_context_p,
5245         get_current_context_stack, get_context_stack_depth,
5246         get_current_subfile, get_local_symbols, get_file_symbols,
5247         get_global_symbols, record_debugformat, record_producer,
5248         push_context, pop_context, end_symtab_get_static_block,
5249         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5250         New public methods.
5251         <record_pending_block, finish_block_internal, make_blockvector,
5252         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5253         private methods.
5254         Update all users.
5255
5256 2018-05-22  Tom Tromey  <tom@tromey.com>
5257
5258         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5259         parameter.
5260         (finish_block_internal): Update.
5261
5262 2018-07-20  Tom Tromey  <tom@tromey.com>
5263
5264         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5265         parameter.
5266         (finish_block_internal): Update.
5267
5268 2018-07-20  Tom Tromey  <tom@tromey.com>
5269
5270         * buildsym.h (EXTERN): Don't define or undef.
5271         * buildsym.c (EXTERN): Don't define.
5272
5273 2018-07-20  Tom Tromey  <tom@tromey.com>
5274
5275         * buildsym.c: Remove TODO comment.
5276
5277 2018-07-20  Tom Tromey  <tom@tromey.com>
5278
5279         * coffread.c (coff_symtab_read): Update.
5280         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5281         (xcoff_new_init): Update.
5282         * mipsread.c (mipscoff_new_init): Update.
5283         * mdebugread.c (mdebug_build_psymtabs): Update.
5284         * elfread.c (elf_new_init): Update.
5285         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5286         Update.
5287         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5288         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5289         (stabsect_build_psymtabs): Update.
5290         * buildsym.h (buildsym_init): Don't declare.
5291         * buildsym.c: Update comment.
5292         (prepare_for_building): Remove.
5293         (start_symtab, restart_symtab): Update.
5294         (reset_symtab_globals): Update comment.
5295         (buildsym_init): Remove.
5296
5297 2018-07-20  Tom Tromey  <tom@tromey.com>
5298
5299         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5300         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5301         (read_enum_type, common_block_start, common_block_end)
5302         (cleanup_undefined_types_1, finish_global_stabs): Update.
5303         * mdebugread.c (psymtab_to_symtab_1): Update.
5304         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5305         (read_lexical_block_scope, new_symbol): Update.
5306         * dbxread.c (process_one_symbol): Update.
5307         * coffread.c (coff_symtab_read, process_coff_symbol)
5308         (coff_read_enum_type): Update.
5309         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5310         declare.
5311         (get_local_symbols, get_file_symbols, get_global_symbols): New
5312         functions.
5313         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5314         m_global_symbols.
5315         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5316         (~scoped_free_pendings): Update.
5317         (finish_block, prepare_for_building, reset_symtab_globals)
5318         (end_symtab_get_static_block, end_symtab_with_blockvector)
5319         (augment_type_symtab, push_context): Update.
5320         (get_local_symbols, get_file_symbols, get_global_symbols): New
5321         functions.
5322         (buildsym_init): Update.
5323
5324 2018-07-20  Tom Tromey  <tom@tromey.com>
5325
5326         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5327         (process_full_type_unit): Likewise.
5328         (dwarf2_start_symtab): Set list_in_scope.
5329
5330 2018-07-20  Tom Tromey  <tom@tromey.com>
5331
5332         * dwarf2read.c (process_psymtab_comp_unit_reader)
5333         (build_type_psymtabs_reader): Do not set list_in_scope.
5334
5335 2018-07-20  Tom Tromey  <tom@tromey.com>
5336
5337         * buildsym.c (free_pendings): Remove.
5338         (add_symbol_to_list, scoped_free_pendings)
5339         (finish_block_internal, buildsym_init): Update.
5340
5341 2018-07-20  Tom Tromey  <tom@tromey.com>
5342
5343         * xcoffread.c (read_xcoff_symtab): Update.
5344         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5345         Update.
5346         * dbxread.c (process_one_symbol): Update.
5347         * coffread.c (coff_symtab_read): Update.
5348         * buildsym.h (finish_block): Update.
5349         * buildsym.c (finish_block): Remove "listhead" argument.
5350         (end_symtab_get_static_block): Update.
5351
5352 2018-07-20  Tom Tromey  <tom@tromey.com>
5353
5354         * buildsym.h (class scoped_free_pendings): Remove constructor.
5355         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5356         method.
5357         <m_pending_block_obstack, m_pending_blocks>: New members.
5358         (pending_block_obstack, pending_blocks): Remove.
5359         (scoped_free_pendings::scoped_free_pendings): Default.
5360         (~scoped_free_pendings): Update.
5361         (free_pending_blocks): Remove.
5362         (finish_block_internal, record_pending_block, make_blockvector)
5363         (end_symtab_get_static_block, augment_type_symtab, push_context)
5364         (buildsym_init): Update.
5365
5366 2018-07-20  Tom Tromey  <tom@tromey.com>
5367
5368         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5369         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5370         members.
5371         (pending_addrmap, pending_addrmap_obstack)
5372         (pending_addrmap_interesting): Remove.
5373         (scoped_free_pendings, record_block_range, make_blockvector)
5374         (prepare_for_building, reset_symtab_globals, buildsym_init):
5375         Update.
5376
5377 2018-07-20  Tom Tromey  <tom@tromey.com>
5378
5379         * xcoffread.c (process_linenos): Update.
5380         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5381         * mdebugread.c (psymtab_to_symtab_1): Update.
5382         * dwarf2read.c (setup_type_unit_groups)
5383         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5384         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5385         * dbxread.c (process_one_symbol): Update.
5386         * coffread.c (coff_symtab_read, enter_linenos)
5387         (process_coff_symbol): Update.
5388         * buildsym.h (current_subfile): Don't declare.
5389         (get_current_subfile): Declare.
5390         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5391         member.
5392         (start_subfile, free_buildsym_compunit, push_subfile)
5393         (prepare_for_building, start_symtab): Update.
5394         (get_current_subfile): New function.
5395
5396 2018-07-20  Tom Tromey  <tom@tromey.com>
5397
5398         * coffread.c (coff_symtab_read): Update.
5399         * xcoffread.c (read_xcoff_symtab): Update.
5400         * dwarf2read.c (new_symbol): Update.
5401         (read_func_scope, read_lexical_block_scope): Update.
5402         * dbxread.c (process_one_symbol): Update.
5403         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5404         (outermost_context_p): Remove macro.
5405         (outermost_context_p, get_current_context_stack)
5406         (get_context_stack_depth): Declare.
5407         (pop_context): Return struct context_stack.
5408         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5409         member.
5410         (context_stack_size): Remove.
5411         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5412         (prepare_for_building, end_symtab_get_static_block)
5413         (augment_type_symtab, push_context): Update.
5414         (pop_context): Return struct context_stack.
5415         (outermost_context_p, get_current_context_stack)
5416         (get_context_stack_depth): New functions.
5417         (buildsym_init): Update.
5418
5419 2018-07-20  Tom Tromey  <tom@tromey.com>
5420
5421         * rust-exp.y: Now a pure parser.  Update all rules.
5422         (%union): Move earlier.
5423         (current_parser, work_obstack): Remove globals.
5424         (rust_parser, ~rust_parser): Update.
5425         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5426         lex_character, lex_number, lex_string, lex_identifier,
5427         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5428         convert_name, convert_params_to_expression,
5429         convert_ast_to_expression, ast_basic_type, ast_operation,
5430         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5431         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5432         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5433         ast_array_type, ast_slice_type, ast_reference_type,
5434         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5435         (rust_parse): Update.
5436         (rustyyerror, rustyylex): Add parser parameter.
5437         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5438         (rust_lex_stringish_test, rust_lex_test_sequence)
5439         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5440         (rust_lex_test_push_back, rust_lex_tests): Update.
5441
5442 2018-07-19  Pedro Alves  <palves@redhat.com>
5443
5444         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5445         gdb::unique_xmalloc_ptr.
5446         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5447         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5448         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5449         copy-initialization.
5450         * guile/scm-pretty-print.c (ppscm_print_children): Use
5451         gdb::unique_xmalloc_ptr instead of cleanups.
5452         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5453         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5454         gdb::unique_xmalloc_ptr.
5455         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5456         Adjust to use gdb::unique_xmalloc_ptr.
5457         * guile/scm-utils.c (extract_arg): Adjust.
5458         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5459         gdb::unique_xmalloc_ptr instead of a cleanup.
5460
5461 2018-07-19  Tom Tromey  <tom@tromey.com>
5462
5463         * utils.c (do_value_free_to_mark)
5464         (make_cleanup_value_free_to_mark): Remove.
5465         * utils.h (make_cleanup_value_free_to_mark): Remove.
5466
5467 2018-07-19  Pedro Alves  <palves@redhat.com>
5468
5469         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5470         forwarding reference.
5471
5472 2018-07-18  Pedro Alves  <palves@redhat.com>
5473
5474         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5475         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5476         cleanup.
5477
5478 2018-07-18  Pedro Alves  <palves@redhat.com>
5479
5480         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5481         exceptions.
5482         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5483         (gdbscm_wrap): New.
5484         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5485         directly instead of a cleanup.
5486         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5487         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5488         (vlscm_binop_gdbthrow): New, factored out from ...
5489         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5490         (vlscm_rich_compare): Use gdbscm_wrap.
5491         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5492         instead of a cleanup.
5493         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5494         cleanup.
5495         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5496         Use xfree directly instead of a cleanup.
5497         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5498         Adjust to use gdbscm_wrap and scoped_value_mark.
5499         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5500         (gdbscm_value_address, gdbscm_value_dereference)
5501         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5502         scoped_value_mark.
5503         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5504         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5505         scoped_value_mark.
5506         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5507         gdbscm_wrap and scoped_value_mark.
5508         (gdbscm_value_to_string): Use xfree directly instead of a
5509         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5510         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5511         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5512         scoped_value_mark.
5513         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5514         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5515         scoped_value_mark.
5516         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5517         gdbscm_wrap.
5518
5519 2018-07-18  Tom de Vries  <tdevries@suse.de>
5520
5521         * findvar.c (default_read_var_value): Also resolve dynamic type for
5522         LOC_OPTIMIZED_OUT vars.
5523
5524 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5525
5526         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5527         decoding.
5528
5529 2018-07-17  Tom Tromey  <tom@tromey.com>
5530
5531         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5532         (compute_enum_list, pascm_set_param_value_x)
5533         (gdbscm_parameter_value): Update.
5534         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5535         (gdbscm_scm_to_host_string): Update.
5536         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5537         Update.
5538         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5539         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5540         * guile/scm-string.c (gdbscm_scm_to_string): Return
5541         unique_xmalloc_ptr.
5542         (gdbscm_scm_to_host_string): Likewise.
5543
5544 2018-07-17  Tom Tromey  <tom@tromey.com>
5545
5546         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5547         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5548         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5549         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5550         unique_xmalloc_ptr.
5551
5552 2018-07-17  Tom Tromey  <tom@tromey.com>
5553
5554         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5555         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5556         Update.
5557         * guile/scm-cmd.c (cmdscm_function): Update.
5558         * guile/scm-pretty-print.c
5559         (ppscm_print_exception_unless_memory_error): Update.
5560         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5561         Return unique_xmalloc_ptr.
5562
5563 2018-07-17  Tom Tromey  <tom@tromey.com>
5564
5565         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5566         Use string_printf.
5567
5568 2018-07-17  Jim Wilson  <jimw@sifive.com>
5569
5570         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5571         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5572         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5573         unecessary braces after EF_RISCV_RVC test.  Delete call to
5574         set_gdbarch_decr_pc_after_break.
5575
5576         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5577         RISCV_LAST_FP_REGNUM + 1.
5578         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5579
5580 2018-07-17  Tom Tromey  <tom@tromey.com>
5581
5582         * configure.ac: Remove --disable-gdbcli.
5583         * configure: Rebuild.
5584         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5585         (SUBDIR_CLI_CFLAGS): Remove.
5586         (SFILES): Use SUBDIR_CLI_SRCS.
5587         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5588
5589 2018-07-17  Tom Tromey  <tom@tromey.com>
5590
5591         PR gdb/18624:
5592         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5593
5594 2018-07-16  Jim Wilson  <jimw@sifive.com>
5595
5596         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5597
5598 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5599
5600         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5601         variable.
5602         (libunwind_frame_sniffer): Likewise.
5603         (libunwind_frame_prev_register): Likewise.
5604         (libunwind_sigtramp_frame_sniffer): Likewise.
5605         * ia64-tdep.c (ia64_access_reg): Likewise.
5606         (ia64_access_rse_reg): Likewise.
5607         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5608         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5609
5610 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5611
5612         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5613
5614 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5615
5616         * remote-sim.c (gdbsim_target::close,
5617         gdbsim_target::mourn_inferior): Remove unused variables.
5618
5619 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5620
5621         * ia64-tdep.c (ktab_buf): New global.
5622         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5623         (get_kernel_table): Adjust.
5624
5625 2018-07-16  Tom Tromey  <tom@tromey.com>
5626
5627         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5628         * dwarf2read.c (using_directives, new_symbol): Use
5629         outermost_context_p.
5630         * dbxread.c (process_one_symbol): Use outermost_context_p.
5631         * coffread.c (coff_symtab_read): Use outermost_context_p.
5632
5633 2018-07-16  Tom Tromey  <tom@tromey.com>
5634
5635         * dwarf2read.c (using_directives, read_func_scope)
5636         (read_lexical_block_scope): Update.
5637         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5638         * buildsym.h (local_using_directives, global_using_directives):
5639         Don't declare.
5640         (get_local_using_directives, set_local_using_directives)
5641         (get_global_using_directives): Declare.
5642         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5643         m_global_using_directives>: New members.
5644         (finish_block_internal, prepare_for_building)
5645         (reset_symtab_globals, end_symtab_get_static_block)
5646         (push_context): Update.
5647         (get_local_using_directives, set_local_using_directives)
5648         (get_global_using_directives): New functions.
5649         (buildsym_init): Update.
5650
5651 2018-07-16  Tom Tromey  <tom@tromey.com>
5652
5653         * xcoffread.c (xcoff_initial_scan): Don't call
5654         free_pending_blocks.
5655         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5656         * buildsym.h (class scoped_free_pendings): Add constructor.
5657         (free_pending_blocks): Don't declare.
5658         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5659         (free_pending_blocks): Now static.
5660
5661 2018-07-16  Tom Tromey  <tom@tromey.com>
5662
5663         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5664         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5665         member.
5666         (struct subfile_stack): Remove.
5667         (subfile_stack): Remove.
5668         (push_subfile, pop_subfile, buildsym_init): Update.
5669
5670 2018-07-16  Tom Tromey  <tom@tromey.com>
5671
5672         * buildsym.c (push_subfile): Use gdb_assert.
5673         (pop_subfile): Use gdb_assert.
5674
5675 2018-07-16  Tom Tromey  <tom@tromey.com>
5676
5677         * buildsym.h (merge_symbol_lists): Remove.
5678         * buildsym.c (merge_symbol_lists): Remove.
5679
5680 2018-07-16  Tom Tromey  <tom@tromey.com>
5681
5682         * stabsread.c (scan_file_globals): Update comment.
5683         * stabsread.h (scan_file_globals): Move from buildsym.h.
5684         * buildsym.h (scan_file_globals): Move to stabsread.h.
5685
5686 2018-07-16  Tom Tromey  <tom@tromey.com>
5687
5688         * xcoffread.c (xcoff_new_init): Update.
5689         * mipsread.c (mipscoff_new_init): Update.
5690         * mdebugread.c (mdebug_build_psymtabs): Update.
5691         * elfread.c (elf_new_init): Update.
5692         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5693         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5694         * buildsym.h (buildsym_new_init): Don't declare.
5695         * buildsym.c (buildsym_new_init): Remove.
5696
5697 2018-07-16  Tom Tromey  <tom@tromey.com>
5698
5699         * stabsread.h (within_function): Move from buildsym.h.
5700         * stabsread.c (start_stabs): Clear within_function.
5701         * coffread.c (coff_start_symtab): Clear within_function.
5702         * buildsym.h (within_function): Move to stabsread.h.
5703         * buildsym.c (prepare_for_building): Update.
5704
5705 2018-07-16  Tom Tromey  <tom@tromey.com>
5706
5707         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5708         * dwarf2read.c (dwarf2_start_symtab): Don't set
5709         processing_gcc_compilation.
5710         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5711
5712 2018-07-16  Tom Tromey  <tom@tromey.com>
5713
5714         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5715         (next_symbol_text_func): Move from buildsym.h.
5716         * stabsread.c (hashname): Move from buildsym.c.
5717         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5718         (next_symbol_text_func, hashname): Move to stabsread.h.
5719         * buildsym.c: Don't include bcache.h
5720         (hashname): Move to stasbread.c.
5721
5722 2018-07-16  Tom Tromey  <tom@tromey.com>
5723
5724         * buildsym.h (context_stack_size): Don't declare.
5725         * buildsym.c (context_stack_size): New global.
5726
5727 2018-07-16  Tom Tromey  <tom@tromey.com>
5728
5729         * dbxread.c (processing_acc_compilation): New global.
5730         * buildsym.h (processing_acc_compilation): Don't declare.
5731
5732 2018-07-16  Tom Tromey  <tom@tromey.com>
5733
5734         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5735         * dbxread.c (read_ofile_symtab): Update.
5736         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5737         * buildsym.h (last_source_start_addr): Remove.
5738         (set_last_source_start_addr, get_last_source_start_addr):
5739         Declare.
5740         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5741         parameter.
5742         (struct buildsym_compunit) <m_last_source_start_addr>: New
5743         member.
5744         (prepare_for_building): Remove start_addr parameter.
5745         (start_symtab, restart_symtab, end_symtab_get_static_block)
5746         (end_symtab_with_blockvector): Update.
5747         (set_last_source_start_addr, get_last_source_start_addr): New
5748         functions.
5749
5750 2018-07-16  Tom Tromey  <tom@tromey.com>
5751
5752         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5753         member.
5754         (have_line_numbers): Remove.
5755         (record_line, prepare_for_building, end_symtab_get_static_block)
5756         (augment_type_symtab): Update.
5757
5758 2018-07-16  Tom Tromey  <tom@tromey.com>
5759
5760         * buildsym.c (~buildsym_compunit): Free the macro table.
5761         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5762         methods.
5763         <m_pending_macros>: New member.
5764         (pending_macros): Remove.
5765         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5766         (reset_symtab_globals, end_symtab_get_static_block)
5767         (end_symtab_with_blockvector, augment_type_symtab)
5768         (buildsym_init): Update.
5769
5770 2018-07-16  Tom Tromey  <tom@tromey.com>
5771
5772         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5773         parameter.
5774         (buildsym_compunit::set_last_source_file): New method.
5775         <m_last_source_file>: New member.
5776         (prepare_for_building): Remove "name" parameter.
5777         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5778         (last_source_file): Remove.
5779         (set_last_source_file, get_last_source_file): Update.
5780
5781 2018-07-16  Tom Tromey  <tom@tromey.com>
5782
5783         * buildsym.c (prepare_for_building): Add assert.
5784
5785 2018-07-16  Tom Tromey  <tom@tromey.com>
5786
5787         * buildsym.c (~buildsym_compunit): Update.
5788         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5789         (start_subfile, patch_subfile_names)
5790         (end_symtab_with_blockvector): Update.
5791
5792 2018-07-16  Tom Tromey  <tom@tromey.com>
5793
5794         * buildsym.c (struct buildsym_compunit): Add constructor,
5795         destructor, initializers.
5796         (start_buildsym_compunit): Remove.
5797         (free_buildsym_compunit): Use "delete".
5798         (start_symtab, restart_symtab): Use "new".
5799
5800 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5801
5802         * symfile.c (set_objfile_default_section_offset): Remove struct
5803         keyword.
5804
5805 2018-07-14  Stafford Horne  <shorne@gmail.com>
5806
5807         * (Responsible Maintainers): Add myself as or1k maintainer.
5808
5809 2018-07-13  Tom Tromey  <tom@tromey.com>
5810
5811         * symfile.c (set_objfile_default_section_offset): Use extra braces
5812         around initializer.
5813
5814 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5815
5816         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5817         non-branching basr.
5818
5819 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5820
5821         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5822         unittests/cli-utils-selftests.c
5823         * unittests/cli-utils-selftests.c: New file.
5824
5825 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5826
5827         * NEWS: Mention new commands. Mention change to 'thread apply'.
5828
5829 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5830
5831         * thread.c (thr_try_catch_cmd): New function.
5832         (thread_apply_all_command): Handle qcs flags.
5833         (thread_apply_command): Handle qcs flags.
5834         (taas_command): New function.
5835         (tfaas_command): New function.
5836         (_initialize_thread): Update to setup the new commands 'taas
5837         and 'tfaas'. Change doc string for 'thread apply'.
5838
5839 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5840
5841         * stack.c: (trailing_outermost_frame): New function, mostly
5842         extracted from backtrace_command_1.
5843         (leading_innermost_frame): New function.
5844         (backtrace_command_1): Update to call trailing_outermost_frame.
5845         (frame_apply_command_count): New function.
5846         (frame_apply_level_command): New function.
5847         (frame_apply_all_command): New function.
5848         (frame_apply_command): New function.
5849         (faas_command): New function.
5850         (frame_cmd_list): New variable.
5851         (_initialize_stack): Update to setup the new commands 'frame apply'
5852         and 'faas'.
5853
5854 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5855
5856         * cli-utils.c (number_or_range_parser::get_number): Only handle
5857         numbers or convenience var as numbers.
5858         (parse_flags): New function.
5859         (parse_flags_qcs): New function.
5860         (number_or_range_parser::finished): Ensure parsing end is detected
5861         before end of string.
5862         * cli-utils.h (parse_flags): New function.
5863         (parse_flags_qcs): New function.
5864         (number_or_range_parser): Remove m_finished bool.
5865         (number_or_range_parser::skip_range): Set m_in_range to false.
5866
5867 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5868
5869         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5870         on Windows.
5871
5872 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5873             Jan Kratochvil  <jan.kratochvil@redhat.com>
5874             Paul Fertser  <fercerpav@gmail.com>
5875             Tsutomu Seki  <sekiriki@gmail.com>
5876             Pedro Alves  <palves@redhat.com>
5877
5878         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5879         'unittests/parse-connection-spec-selftests.c'.
5880         (COMMON_SFILES): Add 'common/netstuff.c'.
5881         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5882         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5883         * common/netstuff.c: New file.
5884         * common/netstuff.h: New file.
5885         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5886         (wait_for_connect): Update comment.  New parameter
5887         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5888         Use 'sock' directly instead of 'scb->fd'.
5889         (try_connect): New function, with code from 'net_open'.
5890         (net_open): Rewrite main loop to deal with multiple
5891         sockets/addresses.  Handle IPv6-style hostnames; implement
5892         support for IPv6 connections.
5893         * unittests/parse-connection-spec-selftests.c: New file.
5894
5895 2018-07-11  Pedro Alves  <palves@redhat.com>
5896
5897         PR gdb/23377
5898         * remote.c (remote_target::remote_detach_pid): Call
5899         set_current_process.
5900
5901 2018-07-11  Pedro Alves  <palves@redhat.com>
5902
5903         * h8300-tdep.c (h8300_gdbarch_init): Remove
5904         set_gdbarch_ecoff_reg_to_regnum calls.
5905
5906 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5907
5908         PR c++/23373
5909         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5910         offsets/sizes for static members of a class/struct.
5911
5912 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5913
5914         * target-descriptions.c (tdesc_register_bitsize): Rename.
5915         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5916         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5917         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5918
5919 2018-07-10  Tom Tromey  <tom@tromey.com>
5920
5921         * breakpoint.c (moribund_locations): Now static and a
5922         std::vector.
5923         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5924         (build_bpstat_chain, update_global_location_list)
5925         (breakpoint_retire_moribund): Update.
5926         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5927         VEC.
5928
5929 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5930
5931         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5932         (riscv_register_reggroup_p): Use new function, remove unneeded
5933         parenthesis.
5934         (riscv_push_dummy_call): Extend assert to compare against xlen or
5935         flen based on register type.
5936
5937 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5938
5939         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5940
5941 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5942
5943         * remote.c (show_hardware_watchpoint_limit): New function.
5944         (show_hardware_watchpoint_length_limit): New function.
5945         (show_hardware_breakpoint_limit): New function.
5946         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5947         where appropriate, update help text.
5948
5949 2018-07-09  Tom Tromey  <tom@tromey.com>
5950
5951         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5952         (CLIBS): Don't mention NAT_CLIBS.
5953
5954 2018-07-09  Tom Tromey  <tom@tromey.com>
5955
5956         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5957         (LIBGDB_OBS, clean mostlyclean): Update.
5958         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5959
5960 2018-07-09  Tom Tromey  <tom@tromey.com>
5961
5962         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5963         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5964         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5965
5966 2018-07-09  Tom Tromey  <tom@tromey.com>
5967
5968         * Makefile.in (ALLDEPFILES): Remove exec.c.
5969         (COMMON_OBS): Remove exec.o.
5970         (COMMON_SFILES): Add exec.c.
5971
5972 2018-07-09  Tom Tromey  <tom@tromey.com>
5973
5974         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5975
5976 2018-07-09  Tom Tromey  <tom@tromey.com>
5977
5978         * Makefile.in (clean mostlyclean): Remove stamp-version.
5979         (version.c): Depend on stamp-version.
5980         (stamp-version): New rule, from version.c rule.
5981
5982 2018-07-09  Tom Tromey  <tom@tromey.com>
5983
5984         * Makefile.in (init.c): Depend on stamp-init.
5985         (stamp-init): New rule, from init.c rule.
5986         (clean mostlyclean): Remove stamp-init.
5987
5988 2018-07-09  Tom Tromey  <tom@tromey.com>
5989
5990         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5991         SUBDIR_GCC_COMPILE_SRCS.
5992
5993 2018-07-09  Tom Tromey  <tom@tromey.com>
5994
5995         * Makefile.in (init.c): Remove some unused sed rules.
5996
5997 2018-07-09  Tom Tromey  <tom@tromey.com>
5998
5999         * Makefile.in (TSOBS): Remove.
6000         (INIT_FILES): Update.
6001         (LIBGDB_OBS): Update.
6002         (COMMON_SFILES): Add inflow.c.
6003         (SFILES): Remove inflow.c.
6004
6005 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6006
6007         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6008
6009 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6010
6011         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6012         get_saveloc_name, is_signal_frame_name, step_name,
6013         init_remote_name, create_addr_space_name,
6014         destroy_addr_space_name, search_unwind_table_name,
6015         find_dyn_list_name): Constify.
6016
6017 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6018
6019         * darwin-nat.c (darwin_pthread_kill): New function.
6020         (darwin_resume_thread): Use darwin_pthread_kill.
6021
6022 2018-07-05  Tom de Vries  <tdevries@suse.de>
6023
6024         * macroexp.c (macro_buffer) <operator=>: New member function.
6025
6026 2018-07-04  Tom Tromey  <tom@tromey.com>
6027
6028         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6029
6030 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6031
6032         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6033         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6034         * maint.c: Likewise.
6035         * top.c: Likewise.
6036
6037 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6038
6039         * NEWS: Create a new section for the next release branch.
6040         Rename the section of the current branch, now that it has
6041         been cut.
6042
6043 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6044
6045         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6046         * version.in: Bump version to 8.2.50.DATE-git.
6047
6048 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6049             Pedro Alves  <palves@redhat.com>
6050
6051         * linux-nat.c (linux_init_ptrace): Rename to ...
6052         (linux_init_ptrace_procfs): ... this.  Call
6053         linux_proc_init_warnings.
6054         (linux_nat_target::post_attach)
6055         (linux_nat_target::post_startup_inferior): Adjust.
6056         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6057         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6058
6059 2018-07-04  Tom de Vries  <tdevries@suse.de>
6060
6061         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6062         check ...
6063         (read_comp_unit_head): ... here.
6064
6065 2018-07-03  Tom Tromey  <tom@tromey.com>
6066
6067         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6068         (stop_tracing, tstatus_command)
6069         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6070         (print_one_static_tracepoint_marker): Update.
6071         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6072         std::vector.
6073         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6074         VEC.
6075         (all_tracepoints, static_tracepoints_here): Return std::vector.
6076
6077 2018-07-03  Tom Tromey  <tom@tromey.com>
6078
6079         * common/ptid.c (ptid_equal): Remove.
6080         * common/ptid.h (ptid_equal): Don't declare.
6081         * ada-tasks.c: Update.
6082         * breakpoint.c: Update.
6083         * common/agent.c: Update.
6084         * corelow.c: Update.
6085         * darwin-nat-info.c: Update.
6086         * darwin-nat.c: Update.
6087         * dcache.c: Update.
6088         * dtrace-probe.c: Update.
6089         * dummy-frame.c: Update.
6090         * fbsd-nat.c: Update.
6091         * frame.c: Update.
6092         * gdbthread.h: Update.
6093         * gnu-nat.c: Update.
6094         * go32-nat.c: Update.
6095         * inf-loop.c: Update.
6096         * inf-ptrace.c: Update.
6097         * infcall.c: Update.
6098         * infcmd.c: Update.
6099         * inflow.c: Update.
6100         * infrun.c: Update.
6101         * linux-fork.c: Update.
6102         * linux-nat.c: Update.
6103         * linux-thread-db.c: Update.
6104         * mi/mi-cmd-var.c: Update.
6105         * mi/mi-interp.c: Update.
6106         * mi/mi-main.c: Update.
6107         * nto-procfs.c: Update.
6108         * ppc-linux-tdep.c: Update.
6109         * procfs.c: Update.
6110         * python/py-inferior.c: Update.
6111         * python/py-record-btrace.c: Update.
6112         * python/py-record.c: Update.
6113         * ravenscar-thread.c: Update.
6114         * regcache.c: Update.
6115         * remote-sim.c: Update.
6116         * remote.c: Update.
6117         * sol-thread.c: Update.
6118         * solib.c: Update.
6119         * target.c: Update.
6120         * tui/tui-stack.c: Update.
6121         * varobj.c: Update.
6122         * windows-nat.c: Update.
6123         * windows-tdep.c: Update.
6124
6125 2018-07-03  Tom Tromey  <tom@tromey.com>
6126
6127         * common/ptid.c (ptid_match): Remove.
6128         * common/ptid.h (ptid_match): Don't declare.
6129         * fbsd-nat.c: Update.
6130         * infcmd.c: Update.
6131         * infrun.c: Update.
6132         * linux-nat.c: Update.
6133         * record-btrace.c: Update.
6134         * regcache.c: Update.
6135         * remote.c: Update.
6136
6137 2018-07-03  Tom Tromey  <tom@tromey.com>
6138
6139         * common/ptid.c (ptid_tid_p): Remove.
6140         * common/ptid.h (ptid_tid_p): Don't declare.
6141         * sol-thread.c: Update.
6142
6143 2018-07-03  Tom Tromey  <tom@tromey.com>
6144
6145         * common/ptid.c (ptid_lwp_p): Remove.
6146         * common/ptid.h (ptid_lwp_p): Don't declare.
6147         * fbsd-nat.c: Update.
6148         * linux-nat.c: Update.
6149         * nat/linux-procfs.c: Update.
6150         * nat/x86-linux-dregs.c: Update.
6151         * sol-thread.c: Update.
6152
6153 2018-07-03  Tom Tromey  <tom@tromey.com>
6154
6155         * common/ptid.c (ptid_is_pid): Remove.
6156         * common/ptid.h (ptid_is_pid): Don't declare.
6157         * infrun.c: Update.
6158         * linux-nat.c: Update.
6159         * mi/mi-interp.c: Update.
6160         * remote.c: Update.
6161         * thread.c: Update.
6162
6163 2018-07-03  Tom Tromey  <tom@tromey.com>
6164
6165         * common/ptid.c (ptid_get_tid): Remove.
6166         * common/ptid.h (ptid_get_tid): Don't declare.
6167         * ada-tasks.c: Update.
6168         * aix-thread.c: Update.
6169         * bsd-uthread.c: Update.
6170         * darwin-nat.c: Update.
6171         * fbsd-nat.c: Update.
6172         * i386-darwin-nat.c: Update.
6173         * infrun.c: Update.
6174         * linux-tdep.c: Update.
6175         * nto-procfs.c: Update.
6176         * ppc-ravenscar-thread.c: Update.
6177         * python/py-infthread.c: Update.
6178         * ravenscar-thread.c: Update.
6179         * sol-thread.c: Update.
6180         * sparc-ravenscar-thread.c: Update.
6181         * windows-nat.c: Update.
6182
6183 2018-07-03  Tom Tromey  <tom@tromey.com>
6184
6185         * common/ptid.c (ptid_get_lwp): Remove.
6186         * common/ptid.h (ptid_get_lwp): Don't declare.
6187         * aarch64-linux-nat.c: Update.
6188         * ada-tasks.c: Update.
6189         * aix-thread.c: Update.
6190         * amd64-linux-nat.c: Update.
6191         * arm-linux-nat.c: Update.
6192         * corelow.c: Update.
6193         * fbsd-nat.c: Update.
6194         * fbsd-tdep.c: Update.
6195         * gnu-nat.c: Update.
6196         * i386-cygwin-tdep.c: Update.
6197         * i386-gnu-nat.c: Update.
6198         * i386-linux-nat.c: Update.
6199         * ia64-linux-nat.c: Update.
6200         * inf-ptrace.c: Update.
6201         * infrun.c: Update.
6202         * linux-fork.c: Update.
6203         * linux-nat.c: Update.
6204         * linux-tdep.c: Update.
6205         * linux-thread-db.c: Update.
6206         * mips-linux-nat.c: Update.
6207         * nat/aarch64-linux-hw-point.c: Update.
6208         * nat/aarch64-linux.c: Update.
6209         * nat/linux-btrace.c: Update.
6210         * nat/linux-osdata.c: Update.
6211         * nat/linux-procfs.c: Update.
6212         * nat/x86-linux-dregs.c: Update.
6213         * obsd-nat.c: Update.
6214         * ppc-fbsd-nat.c: Update.
6215         * ppc-linux-nat.c: Update.
6216         * procfs.c: Update.
6217         * python/py-infthread.c: Update.
6218         * ravenscar-thread.c: Update.
6219         * remote.c: Update.
6220         * s390-linux-nat.c: Update.
6221         * sol-thread.c: Update.
6222         * sol2-tdep.c: Update.
6223         * spu-linux-nat.c: Update.
6224         * x86-linux-nat.c: Update.
6225         * xtensa-linux-nat.c: Update.
6226
6227 2018-07-03  Tom Tromey  <tom@tromey.com>
6228
6229         * common/ptid.c (ptid_get_pid): Remove.
6230         * common/ptid.h (ptid_get_pid): Don't declare.
6231         * aarch64-linux-nat.c: Update.
6232         * ada-lang.c: Update.
6233         * aix-thread.c: Update.
6234         * alpha-bsd-nat.c: Update.
6235         * amd64-fbsd-nat.c: Update.
6236         * amd64-linux-nat.c: Update.
6237         * arm-linux-nat.c: Update.
6238         * arm-nbsd-nat.c: Update.
6239         * auxv.c: Update.
6240         * break-catch-syscall.c: Update.
6241         * breakpoint.c: Update.
6242         * bsd-uthread.c: Update.
6243         * corelow.c: Update.
6244         * ctf.c: Update.
6245         * darwin-nat.c: Update.
6246         * fbsd-nat.c: Update.
6247         * fbsd-tdep.c: Update.
6248         * gcore.c: Update.
6249         * gnu-nat.c: Update.
6250         * hppa-nbsd-nat.c: Update.
6251         * hppa-obsd-nat.c: Update.
6252         * i386-fbsd-nat.c: Update.
6253         * ia64-linux-nat.c: Update.
6254         * inf-ptrace.c: Update.
6255         * infcmd.c: Update.
6256         * inferior.c: Update.
6257         * inferior.h: Update.
6258         * inflow.c: Update.
6259         * infrun.c: Update.
6260         * linux-fork.c: Update.
6261         * linux-nat.c: Update.
6262         * linux-tdep.c: Update.
6263         * linux-thread-db.c: Update.
6264         * m68k-bsd-nat.c: Update.
6265         * mi/mi-interp.c: Update.
6266         * mi/mi-main.c: Update.
6267         * mips-linux-nat.c: Update.
6268         * mips-nbsd-nat.c: Update.
6269         * mips64-obsd-nat.c: Update.
6270         * nat/aarch64-linux-hw-point.c: Update.
6271         * nat/aarch64-linux.c: Update.
6272         * nat/linux-btrace.c: Update.
6273         * nat/linux-osdata.c: Update.
6274         * nat/linux-procfs.c: Update.
6275         * nat/x86-linux-dregs.c: Update.
6276         * nto-procfs.c: Update.
6277         * obsd-nat.c: Update.
6278         * ppc-linux-nat.c: Update.
6279         * ppc-nbsd-nat.c: Update.
6280         * ppc-obsd-nat.c: Update.
6281         * proc-service.c: Update.
6282         * procfs.c: Update.
6283         * python/py-inferior.c: Update.
6284         * python/py-infthread.c: Update.
6285         * ravenscar-thread.c: Update.
6286         * record.c: Update.
6287         * remote-sim.c: Update.
6288         * remote.c: Update.
6289         * rs6000-nat.c: Update.
6290         * s390-linux-nat.c: Update.
6291         * sh-nbsd-nat.c: Update.
6292         * sol-thread.c: Update.
6293         * sparc-nat.c: Update.
6294         * sparc64-tdep.c: Update.
6295         * spu-linux-nat.c: Update.
6296         * spu-tdep.c: Update.
6297         * target-debug.h: Update.
6298         * target.c: Update.
6299         * thread.c: Update.
6300         * tid-parse.c: Update.
6301         * tracefile-tfile.c: Update.
6302         * vax-bsd-nat.c: Update.
6303         * windows-nat.c: Update.
6304         * x86-linux-nat.c: Update.
6305         * x86-nat.c: Update.
6306
6307 2018-07-03  Tom Tromey  <tom@tromey.com>
6308
6309         * common/ptid.c (pid_to_ptid): Remove.
6310         * common/ptid.h (pid_to_ptid): Don't declare.
6311         * aix-thread.c: Update.
6312         * arm-linux-nat.c: Update.
6313         * common/ptid.c: Update.
6314         * common/ptid.h: Update.
6315         * corelow.c: Update.
6316         * ctf.c: Update.
6317         * darwin-nat.c: Update.
6318         * fbsd-nat.c: Update.
6319         * fork-child.c: Update.
6320         * gnu-nat.c: Update.
6321         * go32-nat.c: Update.
6322         * inf-ptrace.c: Update.
6323         * infcmd.c: Update.
6324         * inferior.c: Update.
6325         * infrun.c: Update.
6326         * linux-fork.c: Update.
6327         * linux-nat.c: Update.
6328         * nat/aarch64-linux-hw-point.c: Update.
6329         * nat/fork-inferior.c: Update.
6330         * nat/x86-linux-dregs.c: Update.
6331         * nto-procfs.c: Update.
6332         * obsd-nat.c: Update.
6333         * procfs.c: Update.
6334         * progspace.c: Update.
6335         * remote.c: Update.
6336         * rs6000-nat.c: Update.
6337         * s390-linux-nat.c: Update.
6338         * sol-thread.c: Update.
6339         * spu-linux-nat.c: Update.
6340         * target.c: Update.
6341         * top.c: Update.
6342         * tracefile-tfile.c: Update.
6343         * windows-nat.c: Update.
6344
6345 2018-07-03  Tom Tromey  <tom@tromey.com>
6346
6347         * common/ptid.h (ptid_build): Don't declare.
6348         * common/ptid.c (ptid_build): Remove.
6349         * aix-thread.c: Update.
6350         * bsd-kvm.c: Update.
6351         * bsd-uthread.c: Update.
6352         * common/agent.c: Update.
6353         * common/ptid.c: Update.
6354         * common/ptid.h: Update.
6355         * corelow.c: Update.
6356         * darwin-nat.c: Update.
6357         * fbsd-nat.c: Update.
6358         * gnu-nat.c: Update.
6359         * linux-fork.c: Update.
6360         * linux-nat.c: Update.
6361         * linux-thread-db.c: Update.
6362         * nat/linux-osdata.c: Update.
6363         * nat/linux-procfs.c: Update.
6364         * nto-procfs.c: Update.
6365         * obsd-nat.c: Update.
6366         * proc-service.c: Update.
6367         * procfs.c: Update.
6368         * ravenscar-thread.c: Update.
6369         * remote-sim.c: Update.
6370         * remote.c: Update.
6371         * sol-thread.c: Update.
6372         * target.c: Update.
6373         * windows-nat.c: Update.
6374
6375 2018-07-03  Tom Tromey  <tom@tromey.com>
6376
6377         * infrun.c (follow_exec): Use exit_inferior_silent.
6378         * inferior.c (exit_inferior_num_silent): Remove.
6379         * inferior.h (exit_inferior_num_silent): Don't declare.
6380
6381 2018-07-03  Tom Tromey  <tom@tromey.com>
6382
6383         PR cli/23340:
6384         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6385         inferior_ptid on error.
6386
6387 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6388             Simon Marchi  <simon.marchi@polymtl.ca>
6389
6390         PR tdep/8282
6391         * disasm.h (gdb_disassembler): Add
6392         `m_disassembler_options_holder'. member
6393         * disasm.c (get_all_disassembler_options): New function.
6394         (gdb_disassembler::gdb_disassembler): Use it.
6395         (gdb_buffered_insn_length_init_dis): Likewise.
6396         (gdb_buffered_insn_length): Adjust accordingly.
6397         (set_disassembler_options): Handle options with arguments.
6398         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6399         line if showing options with descriptions.
6400         (disassembler_options_completer): Adapt to using the
6401         `disasm_options_and_args_t' structure.
6402         * mips-tdep.c (mips_disassembler_options): New variable.
6403         (mips_disassembler_options_o32): Likewise.
6404         (mips_disassembler_options_n32): Likewise.
6405         (mips_disassembler_options_n64): Likewise.
6406         (gdb_print_insn_mips): Don't set `disassembler_options'.
6407         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6408         functions.
6409         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6410         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6411         `gdbarch_disassembler_options_implicit' and
6412         `gdbarch_valid_disassembler_options'.
6413         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6414         `disasm_options_and_args_t' structure.
6415         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6416         method.
6417         (valid_disassembler_options): Switch from `disasm_options_t' to
6418         the `disasm_options_and_args_t' structure.
6419         * NEWS: Document `set disassembler-options' support for the MIPS
6420         target.
6421         * gdbarch.h: Regenerate.
6422         * gdbarch.c: Regenerate.
6423
6424 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6425
6426         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6427
6428 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6429
6430         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6431         parameter in call to amd64_target_description.
6432         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6433         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6434         (amd64fbsd_init_abi): Likewise.
6435         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6436         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6437         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6438         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6439
6440 2018-06-29  Pedro Alves  <palves@redhat.com>
6441
6442         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6443         "segments" parameter.
6444         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6445         (_initialize_amd64_tdep): Update call to
6446         amd64_create_target_description.
6447         (amd64_target_description): Add "segments" parameter.  Adjust
6448         the implementation to use it.
6449         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6450         call to amd64_create_target_description.
6451         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6452         * gdb/arch/amd64.h (amd64_create_target_description): Add
6453         "segments" register.
6454         * gdb/arch/amd64.c (amd64_create_target_description): Add
6455         "segments" parameter.  Call create_feature_i386_64bit_segments
6456         only if SEGMENTS is true.
6457         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6458         call to amd64_create_target_description.
6459
6460 2018-06-29  Pedro Alves  <palves@redhat.com>
6461
6462         * thread.c (thread_target_id_str): New, factored out from ...
6463         (print_thread_info_1): ... here.  Use it to compute the max
6464         "Target Id" column width.
6465
6466 2018-06-29  Pedro Alves  <palves@redhat.com>
6467
6468         * remote.c (remote_target::extra_thread_info): Delete
6469         'display_buf' and 'n' locals.  from the cache, regardless of
6470         packet mechanims is in use.  Use cache for qThreadExtra and qP
6471         methods too.
6472
6473 2018-06-29  Pedro Alves  <palves@redhat.com>
6474
6475         * blockframe.c (find_pc_sect_containing_function): New function.
6476         * breakpoint.c (print_breakpoint_location): Don't call
6477         find_pc_sect_function.
6478         * linespec.c (create_sals_line_offset): Record the location's
6479         symbol in the sal.
6480         * linespec.c (convert_address_location_to_sals): Fill in sal's
6481         symbol with find_pc_sect_containing_function.
6482         * symtab.c (find_function_start_sal): Rename to ...
6483         (find_function_start_sal_1): ... this.
6484         (find_function_start_sal): Reimplement as wrapper around
6485         find_function_start_sal_1, and use
6486         find_pc_sect_containing_function to fill in the sal's symbol.
6487         (find_function_start_sal(symbol*, bool)): Adjust.
6488         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6489         comments.
6490         (find_pc_sect_containing_function): Declare.
6491
6492 2018-06-29  Pedro Alves  <palves@redhat.com>
6493
6494         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6495         true if the the location has no symbol.
6496
6497 2018-06-28  Tom Tromey  <tom@tromey.com>
6498
6499         * NEWS: Mention --enable-codesign.
6500         * silent-rules.mk (ECHO_SIGN): New variable.
6501         * configure.ac: Add --enable-codesign.
6502         * configure: Rebuild.
6503         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6504         (gdb$(EXEEXT)): Optionally invoke codesign.
6505
6506 2018-06-28  Pedro Alves  <palves@redhat.com>
6507
6508         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6509         comments.
6510         (switch_to_thread_no_regs): Adjust comment.
6511         * infcmd.c (stop_pc): Delete.
6512         (post_create_inferior, info_program_command): Replace references
6513         to stop_pc with references to thread_info->suspend.stop_pc.
6514         * inferior.h (stop_pc): Delete declaration.
6515         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6516         (handle_inferior_event_1, handle_signal_stop)
6517         (process_event_stop_test, keep_going_stepped_thread)
6518         (handle_step_into_function, handle_step_into_function_backward)
6519         (print_stop_location): Replace references to stop_pc with
6520         references to thread_info->suspend.stop_pc.
6521         (struct infcall_suspend_state) <stop_pc>: Delete field.
6522         (save_infcall_suspend_state, restore_infcall_suspend_state):
6523         Remove references to inf_stat->stop_pc.
6524         * linux-fork.c (fork_load_infrun_state): Likewise.
6525         * record-btrace.c (record_btrace_set_replay): Likewise.
6526         * record-full.c (record_full_goto_entry): Likewise.
6527         * remote.c (print_one_stopped_thread): Likewise.
6528         * target.c (target_resume): Extend comment.
6529         * thread.c (set_executing_thread): New.
6530         (set_executing): Use it.
6531         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6532         Remove references to stop_pc.
6533
6534 2018-06-28  Pedro Alves  <palves@redhat.com>
6535
6536         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6537         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6538
6539 2018-06-28  Tom Tromey  <tom@tromey.com>
6540
6541         * coffread.c (coff_symfile_finish): Update.
6542         * xcoffread.c (xcoff_symfile_finish): Update.
6543         * elfread.c (elf_symfile_finish): Update.
6544         * symfile.h (dwarf2_free_objfile): Don't declare.
6545         * dwarf2read.c (_initialize_dwarf2_read): Use
6546         register_objfile_data_with_cleanup.
6547         (dwarf2_free_objfile): Now static.  Change signature.
6548
6549 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6550
6551         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6552         option "-o" to add-symbol-file-load to add an offset to each
6553         section's load address.
6554         * symfile.c (set_objfile_default_section_offset): New function.
6555
6556 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6557
6558         * symfile.c (add_symbol_file_command): Make sure that sections
6559         with the same name are sorted in the same order.
6560
6561 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6562
6563         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6564         require the second argument.  If omitted, load sections at the
6565         addresses specified in the file.
6566
6567 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6568
6569         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6570         (_initialize_symfile): Add option "-o" to symbol-file to add an
6571         offset to each section of the symbol file.
6572
6573 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6574
6575         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6576
6577 2018-06-27  Tom Tromey  <tom@tromey.com>
6578
6579         * stack.c (_initialize_stack): Update "func" help text.
6580
6581 2018-06-27  Tom Tromey  <tom@tromey.com>
6582
6583         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6584         std::vector.
6585         (unwind_infopy_str, pyuw_create_unwind_info)
6586         (unwind_infopy_add_saved_register, pyuw_sniffer)
6587         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6588         Update.
6589         (struct saved_reg): Add constructor.
6590         <value>: Now a gdbpy_ref<>.
6591
6592 2018-06-27  Tom Tromey  <tom@tromey.com>
6593
6594         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6595
6596 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6597
6598         * gdb-gdb.py.in: Format using autopep8.
6599
6600 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6601
6602         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6603         (type_lookup_function): Recognize CORE_ADDR values.
6604
6605 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6606
6607         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6608         print tag_name.
6609
6610 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6611
6612         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6613         <__lt__>: Add.
6614
6615 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6616
6617         * gdb-gdb.py: Move to...
6618         * gdb-gdb.py.in: ... here.
6619         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6620         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6621         dependencies.
6622         (distclean): Remove gdb-gdb.py when cleaning.
6623         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6624         * configure: Re-generate.
6625
6626 2018-06-27  Pedro Alves  <palves@redhat.com>
6627
6628         * proc-service.c (get_ps_regcache): New.
6629         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6630         (ps_lsetfpregs): Use it.
6631
6632 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6633
6634         PR gdb/21695
6635         * dwarf2read.c (lnp_state_machine::check_line_address): Update
6636         declaration.
6637         (dwarf_decode_lines_1): Adjust.
6638
6639 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6640
6641         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6642         override.
6643         <info_proc>: Likewise.
6644
6645 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6646
6647         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6648         to windows_fetch_one_register, and only handle the case of
6649         fetching one register.  Move the code that reloads the context
6650         and iterates over all registers if R is negative to...
6651         (windows_nat_target::fetch_registers): ... here.
6652         (do_windows_store_inferior_registers): Rename to
6653         windows_store_one_register, and only handle the case of storing
6654         one register.  Move the code that handles the case where r is
6655         negative to...
6656         (windows_nat_target::store_registers) ... here.
6657
6658 2018-06-26  Tom Tromey  <tom@tromey.com>
6659
6660         PR rust/22574:
6661         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6662         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6663         Update.
6664         (rust_internal_print_type): Add podata parameter.
6665         (rust_print_type): Update.
6666
6667 2018-06-26  Tom Tromey  <tom@tromey.com>
6668
6669         * typeprint.h (struct print_offset_data) <update, finish,
6670         maybe_print_hole>: New methods.
6671         <indentation>: New constant.
6672         * typeprint.c (print_offset_data::indentation): Define.
6673         (print_offset_data::maybe_print_hole, print_offset_data::update)
6674         (print_offset_data::finish): Move from c-typeprint.c and rename.
6675         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6676         (print_spaces_filtered_with_print_options): Update.
6677         (c_print_type_union_field_offset, maybe_print_hole)
6678         (c_print_type_struct_field_offset): Move to typeprint.c and
6679         rename.
6680         (c_type_print_base_struct_union): Update.
6681
6682 2018-06-25  Pedro Alves  <palves@redhat.com>
6683
6684         * gdbthread.h (thread_info_ref, delete_thread)
6685         (delete_thread_silent, first_thread_of_inferior)
6686         (any_thread_of_inferior, switch_to_thread)
6687         (enable_thread_stack_temporaries)
6688         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6689         (get_last_thread_stack_temporary)
6690         (value_in_thread_stack_temporaries, can_access_registers_thread):
6691         Spell out "struct thread_info" instead of just "thread_info".
6692         * inferior.h (notice_new_inferior): Likewise.
6693
6694 2018-06-25  Pedro Alves  <palves@redhat.com>
6695
6696         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6697         pass thread_info pointer to delete_thread.
6698         (windows_nat_target::detach): Pass inferior pointer to
6699         detach_inferior.
6700         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6701         delete_thread.
6702         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6703         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6704         and pass a thread_info pointer to delete_thread.
6705         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6706         pass thread_info pointer to delete_thread.
6707         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6708         delete_thread_silent call.
6709         * procfs.c (procfs_target::detach): Pass inferior pointer to
6710         detach_inferior.
6711         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6712         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6713         delete_thread_silent call.
6714         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6715         pass thread_info pointer to delete_thread.
6716         (windows_nat_target::detach): Pass inferior pointer to
6717         delete_inferior.
6718
6719 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6720
6721         * regcache.c (readable_regcache::read_part): Fix asserts.
6722         (reg_buffer::raw_collect_part): New function.
6723         (regcache::write_part): Fix asserts.
6724         (reg_buffer::raw_supply_part): New function.
6725         (regcache::transfer_regset_register): New helper function.
6726         (regcache::transfer_regset): Call new functions.
6727         (regcache_supply_regset): Use gdb_byte*.
6728         (regcache::supply_regset): Likewise.
6729         (regcache_collect_regset): Likewise.
6730         (regcache::collect_regset): Likewise.
6731         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6732         (reg_buffer::raw_supply_part): Likewise.
6733         (regcache::transfer_regset_register): Likewise.
6734         (regcache::transfer_regset): Use gdb_byte*.
6735
6736 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6737
6738         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6739
6740 2018-06-21  Pedro Alves  <palves@redhat.com>
6741
6742         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6743         instead of a ptid_t.  All callers adjusted.
6744         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6745         adjusted.
6746         (print_ada_task_info, display_current_task_id, task_command_1):
6747         Adjust.
6748         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6749         inferior_thread.
6750         (breakpoint_kind): Adjust.
6751         (remove_breakpoints_pid): Rename to ...
6752         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6753         pointer.  All callers adjusted.
6754         (bpstat_clear_actions): Use inferior_thread.
6755         (get_bpstat_thread): New.
6756         (bpstat_do_actions): Use it.
6757         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6758         to take a thread_info pointer.  All callers adjusted.
6759         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6760         (breakpoint_re_set_thread): Use inferior_thread.
6761         * breakpoint.h (struct inferior): Forward declare.
6762         (bpstat_stop_status): Update.
6763         (remove_breakpoints_pid): Delete.
6764         (remove_breakpoints_inf): New.
6765         * bsd-uthread.c (bsd_uthread_target::wait)
6766         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6767         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6768         (maint_btrace_packet_history_cmd)
6769         (maint_btrace_clear_packet_history_cmd): Adjust.
6770         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6771         inferior_thread.
6772         * cli/cli-interp.c: Include "inferior.h".
6773         * common/refcounted-object.h (struct
6774         refcounted_object_ref_policy): New.
6775         * compile/compile-object-load.c: Include gdbthread.h.
6776         (store_regs): Use inferior_thread.
6777         * corelow.c (core_target::close): Use current_inferior.
6778         (core_target_open): Adjust to use first_thread_of_inferior and use
6779         the current inferior.
6780         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6781         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6782         <thread>: ... this new field.  All references adjusted.
6783         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6784         Take a thread_info pointer instead of a ptid_t.
6785         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6786         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6787         thread_info pointer instead of a ptid_t.
6788         * elfread.c: Include "inferior.h".
6789         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6790         Use inferior_thread.
6791         * eval.c (evaluate_subexp): Likewise.
6792         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6793         inferior_thread.
6794         * gdb_proc_service.h (struct thread_info): Forward declare.
6795         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6796         <thread>: ... this new field.  All references adjusted.
6797         * gdbarch.h, gdbarch.c: Regenerate.
6798         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6799         'thread' parameter.  All implementations and callers adjusted.
6800         * gdbthread.h (thread_info) <set_running>: New method.
6801         (delete_thread, delete_thread_silent): Take a thread_info pointer
6802         instead of a ptid.
6803         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6804         (first_thread_of_process): Delete, replaced by ...
6805         (first_thread_of_inferior): ... this new function.  All callers
6806         adjusted.
6807         (any_live_thread_of_process): Delete, replaced by ...
6808         (any_live_thread_of_inferior): ... this new function.  All callers
6809         adjusted.
6810         (switch_to_thread, switch_to_no_thread): Declare.
6811         (is_executing): Delete.
6812         (enable_thread_stack_temporaries): Update comment.
6813         <enable_thread_stack_temporaries>: Take a thread_info pointer
6814         instead of a ptid_t.  Incref the thread.
6815         <~enable_thread_stack_temporaries>: Decref the thread.
6816         <m_ptid>: Delete
6817         <m_thr>: New.
6818         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6819         (get_last_thread_stack_temporary)
6820         (value_in_thread_stack_temporaries, can_access_registers_thread):
6821         Take a thread_info pointer instead of a ptid_t.  All callers
6822         adjusted.
6823         * infcall.c (get_call_return_value): Use inferior_thread.
6824         (run_inferior_call): Work with thread pointers instead of ptid_t.
6825         (call_function_by_hand_dummy): Work with thread pointers instead
6826         of ptid_t.  Use thread_info_ref.
6827         * infcmd.c (proceed_thread_callback): Access thread's state
6828         directly.
6829         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6830         access thread's state directly.
6831         (continue_command): Use inferior_thread.
6832         (info_program_command): Use find_thread_ptid and access thread
6833         state directly.
6834         (proceed_after_attach_callback): Use thread state directly.
6835         (notice_new_inferior): Take a thread_info pointer instead of a
6836         ptid_t.  All callers adjusted.
6837         (exit_inferior): Take an inferior pointer instead of a pid.  All
6838         callers adjusted.
6839         (exit_inferior_silent): New.
6840         (detach_inferior): Delete.
6841         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6842         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6843         (detach_inferior_command, kill_inferior_command): Use
6844         find_inferior_id instead of valid_gdb_inferior_id and
6845         gdb_inferior_id_to_pid.
6846         (inferior_command): Use inferior and thread pointers.
6847         * inferior.h (struct thread_info): Forward declare.
6848         (notice_new_inferior): Take a thread_info pointer instead of a
6849         ptid_t.  All callers adjusted.
6850         (detach_inferior): Delete declaration.
6851         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6852         instead of a pid.  All callers adjusted.
6853         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6854         (valid_gdb_inferior_id): Delete.
6855         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6856         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6857         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6858         ...
6859         <inf>: ... this new field.
6860         <step_ptid>: Delete, replaced by ...
6861         <step_thread>: ... this new field.
6862         (get_displaced_stepping_state): Take an inferior pointer instead
6863         of a pid.  All callers adjusted.
6864         (displaced_step_in_progress_any_inferior): Adjust.
6865         (displaced_step_in_progress_thread): Take a thread pointer instead
6866         of a ptid_t.  All callers adjusted.
6867         (displaced_step_in_progress, add_displaced_stepping_state): Take
6868         an inferior pointer instead of a pid.  All callers adjusted.
6869         (get_displaced_step_closure_by_addr): Adjust.
6870         (remove_displaced_stepping_state): Take an inferior pointer
6871         instead of a pid.  All callers adjusted.
6872         (displaced_step_prepare_throw, displaced_step_prepare)
6873         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6874         All callers adjusted.
6875         (start_step_over): Adjust.
6876         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6877         displaced step queue.
6878         (do_target_resume): Adjust.
6879         (fetch_inferior_event): Use inferior_thread.
6880         (context_switch, get_inferior_stop_soon): Take an
6881         execution_control_state pointer instead of a ptid_t.  All callers
6882         adjusted.
6883         (switch_to_thread_cleanup): Delete.
6884         (stop_all_threads): Use scoped_restore_current_thread.
6885         * inline-frame.c: Include "gdbthread.h".
6886         (inline_state) <inline_state>: Take a thread pointer instead of a
6887         ptid_t.  All callers adjusted.
6888         <ptid>: Delete, replaced by ...
6889         <thread>: ... this new field.
6890         (find_inline_frame_state): Take a thread pointer instead of a
6891         ptid_t.  All callers adjusted.
6892         (skip_inline_frames, step_into_inline_frame)
6893         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6894         pointer instead of a ptid_t.  All callers adjusted.
6895         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6896         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6897         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6898         pointers directly.
6899         * linux-nat.c (get_detach_signal): Likewise.
6900         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6901         (thread_db_notice_clone): Adjust.
6902         (thread_db_find_new_threads_silently)
6903         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6904         a thread pointer instead of a ptid_t.  All callers adjusted.
6905         * mi/mi-cmd-var.c: Include "inferior.h".
6906         (mi_cmd_var_update_iter): Update to use thread pointers.
6907         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6908         inferior directly.
6909         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6910         out to ...
6911         (mi_output_running): ... this new function.
6912         (mi_on_resume_1): Adjust to use it.
6913         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6914         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6915         directly.
6916         (interrupt_thread_callback): : Adjust to use thread and inferior
6917         pointers.
6918         * proc-service.c: Include "gdbthread.h".
6919         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6920         * progspace-and-thread.c: Include "inferior.h".
6921         * progspace.c: Include "inferior.h".
6922         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6923         hold a reference to an inferior_object.
6924         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6925         inferior_thread.
6926         * python/py-inferior.c (struct inferior_object): Give the type a
6927         tag name instead of a typedef.
6928         (python_on_normal_stop): No need to check if the current thread is
6929         listed.
6930         (inferior_to_inferior_object): Change return type to
6931         inferior_object.  All callers adjusted.
6932         (find_thread_object): Delete, bits factored out to ...
6933         (thread_to_thread_object): ... this new function.
6934         * python/py-infthread.c (create_thread_object): Use
6935         inferior_to_inferior_object.
6936         (thpy_is_stopped): Use thread pointer directly.
6937         (gdbpy_selected_thread): Use inferior_thread.
6938         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6939         field, replaced with ...
6940         <thread>: ... this new field.  All users adjusted.
6941         (btpy_insn_or_gap_new): Drop const.
6942         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6943         callers adjusted.
6944         * python/py-record.c: Include "gdbthread.h".
6945         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6946         a ptid_t.  All callers adjusted.
6947         (gdbpy_current_recording): Use inferior_thread.
6948         * python/py-record.h (recpy_record_object) <ptid>: Delete
6949         field, replaced with ...
6950         <thread>: ... this new field.  All users adjusted.
6951         (recpy_element_object) <ptid>: Delete
6952         field, replaced with ...
6953         <thread>: ... this new field.  All users adjusted.
6954         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6955         a ptid_t.  All callers adjusted.
6956         * python/py-threadevent.c: Include "gdbthread.h".
6957         (get_event_thread): Use thread_to_thread_object.
6958         * python/python-internal.h (struct inferior_object): Forward
6959         declare.
6960         (find_thread_object, find_inferior_object): Delete declarations.
6961         (thread_to_thread_object, inferior_to_inferior_object): New
6962         declarations.
6963         * record-btrace.c: Include "inferior.h".
6964         (require_btrace_thread): Use inferior_thread.
6965         (record_btrace_frame_sniffer)
6966         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6967         (get_thread_current_frame): Use scoped_restore_current_thread and
6968         switch_to_thread.
6969         (get_thread_current_frame): Use thread pointer directly.
6970         (record_btrace_replay_at_breakpoint): Use thread's inferior
6971         pointer directly.
6972         * record-full.c: Include "inferior.h".
6973         * regcache.c: Include "gdbthread.h".
6974         (get_thread_arch_regcache): Use the inferior's address space
6975         directly.
6976         (get_thread_regcache, registers_changed_thread): New.
6977         * regcache.h (get_thread_regcache(thread_info *thread)): New
6978         overload.
6979         (registers_changed_thread): New.
6980         (remote_target) <remote_detach_1>: Swap order of parameters.
6981         (remote_add_thread): <remote_add_thread>: Return the new thread.
6982         (get_remote_thread_info(ptid_t)): New overload.
6983         (remote_target::remote_notice_new_inferior): Use thread pointers
6984         directly.
6985         (remote_target::process_initial_stop_replies): Use
6986         thread_info::set_running.
6987         (remote_target::remote_detach_1, remote_target::detach)
6988         (extended_remote_target::detach): Adjust.
6989         * stack.c (frame_show_address): Use inferior_thread.
6990         * target-debug.h (target_debug_print_thread_info_pp): New.
6991         * target-delegates.c: Regenerate.
6992         * target.c (default_thread_address_space): Delete.
6993         (memory_xfer_partial_1): Use current_inferior.
6994         (target_detach): Use current_inferior.
6995         (target_thread_address_space): Delete.
6996         (generic_mourn_inferior): Use current_inferior.
6997         * target.h (struct target_ops) <thread_address_space>: Delete.
6998         (target_thread_address_space): Delete.
6999         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7000         pointers directly.
7001         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7002         thread pointer instead of a ptid_t.  Adjust all callers.
7003         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7004         (first_thread_of_process): Delete, replaced by ...
7005         (first_thread_of_inferior): ... this new function.  All callers
7006         adjusted.
7007         (any_thread_of_process): Rename to ...
7008         (any_thread_of_inferior): ... this, and take an inferior pointer.
7009         (any_live_thread_of_process): Rename to ...
7010         (any_live_thread_of_inferior): ... this, and take an inferior
7011         pointer.
7012         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7013         (value_in_thread_stack_temporaries)
7014         (get_last_thread_stack_temporary): Take a thread pointer instead
7015         of a ptid_t.  Adjust all callers.
7016         (thread_info::set_running): New.
7017         (validate_registers_access): Use inferior_thread.
7018         (can_access_registers_ptid): Rename to ...
7019         (can_access_registers_thread): ... this, and take a thread
7020         pointer.
7021         (print_thread_info_1): Adjust to compare thread pointers instead
7022         of ptids.
7023         (switch_to_no_thread, switch_to_thread): Make extern.
7024         (scoped_restore_current_thread::~scoped_restore_current_thread):
7025         Use m_thread pointer directly.
7026         (scoped_restore_current_thread::scoped_restore_current_thread):
7027         Use inferior_thread.
7028         (thread_command): Use thread pointer directly.
7029         (thread_num_make_value_helper): Use inferior_thread.
7030         * top.c (execute_command): Use inferior_thread.
7031         * tui/tui-interp.c: Include "inferior.h".
7032         * varobj.c (varobj_create): Use inferior_thread.
7033         (value_of_root_1): Use find_thread_global_id instead of
7034         global_thread_id_to_ptid.
7035
7036 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7037
7038         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7039         possible.
7040         (regcache::write_part): Likewise.
7041         (readable_regcache::cooked_read_part): Update comment.
7042         (readable_regcache::cooked_write_part): Likewise.
7043         * regcache.h: (readable_regcache::read_part): Likewise.
7044         (regcache::write_part): Likewise.
7045
7046 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7047             Dirk Schubert  <dirk.schubert@arm.com>
7048
7049         * aarch64-linux-nat.c (post_attach): New.
7050         (aarch64_linux_nat_target::post_attach): Override post_attach to
7051         record the number of hardware debug registers.
7052
7053 2018-06-20  Tom Tromey  <tom@tromey.com>
7054
7055         * python/py-param.c (add_setshow_generic): Make parameters const.
7056         (parmpy_init): Update.
7057
7058 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7059
7060         * regcache.h (regcache_cooked_read_ftype): Rename to...
7061         (register_read_ftype): ...this, change type to function_view.
7062         (class reg_buffer) <save>: Remove src parameter.
7063         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7064         parameter non-const in first overload.  Remove src parameter in
7065         second overload.
7066         * regcache.c (do_cooked_read): Remove.
7067         (readonly_detached_regcache::readonly_detached_regcache): Make
7068         parameter non-const, adjust call to other constructor.
7069         (reg_buffer::save): Remove src parameter.
7070         * frame.c (do_frame_register_read): Remove.
7071         (frame_save_as_regcache): Use lambda function.
7072         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7073         parameter to ppu2spu_data *.
7074         (ppu2spu_sniffer): Use lambda function.
7075
7076 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7077
7078         * record-full.c (record_full_target::insert_breakpoint): Remove
7079         "struct" keyword, add const.
7080
7081 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7082
7083         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7084         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7085         * configure.ac: Remove AC_PREREQ, add missing quoting.
7086         * gnulib/configure.ac: Modernize usage of
7087         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7088         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7089         (AUTOMAKE_VERSION): Bump to 1.15.1.
7090         * configure: Re-generate.
7091         * config.in: Re-generate.
7092         * aclocal.m4: Re-generate.
7093         * gnulib/aclocal.m4: Re-generate.
7094         * gnulib/config.in: Re-generate.
7095         * gnulib/configure: Re-generate.
7096         * gnulib/import/Makefile.in: Re-generate.
7097
7098 2018-06-19  Pedro Alves  <palves@redhat.com>
7099
7100         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7101         (lookup_minimal_symbol_by_pc_section): ... here with
7102         gdb_assert_not_reached added.
7103
7104 2018-06-19  Pedro Alves  <palves@redhat.com>
7105
7106         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7107         parameter with a block parameter.  Compare location's block symbol
7108         with the frame's block instead of addresses.
7109         (skip_inline_frames): Pass the current block instead of the
7110         frame's address.  Break out as soon as we determine the frame
7111         should not be skipped.
7112
7113 2018-06-18  Tom Tromey  <tom@tromey.com>
7114
7115         * solib-aix.c (solib_aix_get_section_offsets): Return
7116         unique_xmalloc_ptr.
7117         (solib_aix_solib_create_inferior_hook): Update.
7118
7119 2018-06-18  Tom Tromey  <tom@tromey.com>
7120
7121         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7122
7123 2018-06-18  Tom Tromey  <tom@tromey.com>
7124
7125         * solib-frv.c (frv_relocate_main_executable): Use
7126         unique_xmalloc_ptr.
7127         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7128         unique_xmalloc_ptr.
7129
7130 2018-06-18  Tom Tromey  <tom@tromey.com>
7131
7132         * objfiles.h (inhibit_section_map_updates): Update.
7133         (resume_section_map_updates, resume_section_map_updates_cleanup):
7134         Remove.
7135         * solib-svr4.c (svr4_handle_solib_event): Update.
7136         * objfiles.c (inhibit_section_map_updates): Return
7137         scoped_restore_tmpl<int>.
7138         (resume_section_map_updates, resume_section_map_updates_cleanup):
7139         Remove.
7140
7141 2018-06-18  Tom Tromey  <tom@tromey.com>
7142
7143         * valprint.h (read_string): Update.
7144         * valprint.c (read_string): Change type of "buffer".
7145         (val_print_string): Update.
7146         * python/py-value.c (valpy_string): Update.
7147         * language.h (struct language_defn) <la_get_string>: Change
7148         type of "buffer".
7149         (default_get_string, c_get_string): Update.
7150         * language.c (default_get_string): Change type of "buffer".
7151         * guile/scm-value.c (gdbscm_value_to_string): Update.
7152         * c-lang.c (c_get_string): Change type of "buffer".
7153
7154 2018-06-18  Tom Tromey  <tom@tromey.com>
7155
7156         * ser-mingw.c (struct pipe_state_destroyer): New.
7157         (pipe_state_up): New typedef.
7158         (cleanup_pipe_state): Remove.
7159         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7160
7161 2018-06-18  Tom Tromey  <tom@tromey.com>
7162
7163         * rust-lang.h (rust_yyerror): Don't declare.
7164         * rust-lang.c (rust_language_defn): Update.
7165         * rust-exp.y (yyerror): Now static.
7166         * parse.c (parse_exp_in_context_1): Update.
7167         * p-lang.h (p_yyerror): Don't declare.
7168         * p-lang.c (p_language_defn): Update.
7169         * p-exp.y (yyerror): Now static.
7170         * opencl-lang.c (opencl_language_defn): Update.
7171         * objc-lang.c (objc_language_defn): Update.
7172         * m2-lang.h (m2_yyerror): Don't declare.
7173         * m2-lang.c (m2_language_defn): Update.
7174         * m2-exp.y (yyerror): Now static.
7175         * language.h (struct language_defn) <la_error>: Remove.
7176         * language.c (unk_lang_error): Remove.
7177         (unknown_language_defn, auto_language_defn): Remove.
7178         * go-lang.h (go_yyerror): Don't declare.
7179         * go-lang.c (go_language_defn): Update.
7180         * go-exp.y (yyerror): Now static.
7181         * f-lang.h (f_yyerror): Don't declare.
7182         * f-lang.c (f_language_defn): Update.
7183         * f-exp.y (yyerror): Now static.
7184         * d-lang.h (d_yyerror): Don't declare.
7185         * d-lang.c (d_language_defn): Update.
7186         * d-exp.y (yyerror): Now static.
7187         * c-lang.h (c_yyerror): Don't declare.
7188         * c-lang.c (c_language_defn, cplus_language_defn)
7189         (asm_language_defn, minimal_language_defn): Update.
7190         * c-exp.y (yyerror): Now static.
7191         * ada-lang.h (ada_yyerror): Don't declare.
7192         * ada-lang.c (ada_language_defn): Update.
7193         * ada-exp.y (yyerror): Now static.
7194
7195 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7196
7197         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7198         (store_sveregs_to_thread): Likewise.
7199         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7200         (aarch64_linux_store_inferior_registers): Likewise.
7201         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7202         function.
7203         (aarch64_sve_regs_copy_to_regcache): Likewise.
7204         (aarch64_sve_regs_copy_from_regcache): Likewise.
7205         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7206         declaration.
7207         (aarch64_sve_regs_copy_to_regcache): Likewise.
7208         (aarch64_sve_regs_copy_from_regcache): Likewise.
7209         (sve_context): Structure from Linux headers.
7210         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7211         (SVE_SIG_ZREG_SIZE): Likewise.
7212         (SVE_SIG_PREG_SIZE): Likewise.
7213         (SVE_SIG_FFR_SIZE): Likewise.
7214         (SVE_SIG_REGS_OFFSET): Likewise.
7215         (SVE_SIG_ZREGS_OFFSET): Likewise.
7216         (SVE_SIG_ZREG_OFFSET): Likewise.
7217         (SVE_SIG_ZREGS_SIZE): Likewise.
7218         (SVE_SIG_PREGS_OFFSET): Likewise.
7219         (SVE_SIG_PREG_OFFSET): Likewise.
7220         (SVE_SIG_PREGS_SIZE): Likewise.
7221         (SVE_SIG_FFR_OFFSET): Likewise.
7222         (SVE_SIG_REGS_SIZE): Likewise.
7223         (SVE_SIG_CONTEXT_SIZE): Likewise.
7224         (SVE_PT_REGS_MASK): Likewise.
7225         (SVE_PT_REGS_FPSIMD): Likewise.
7226         (SVE_PT_REGS_SVE): Likewise.
7227         (SVE_PT_VL_INHERIT): Likewise.
7228         (SVE_PT_VL_ONEXEC): Likewise.
7229         (SVE_PT_REGS_OFFSET): Likewise.
7230         (SVE_PT_FPSIMD_OFFSET): Likewise.
7231         (SVE_PT_FPSIMD_SIZE): Likewise.
7232         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7233         (SVE_PT_SVE_PREG_SIZE): Likewise.
7234         (SVE_PT_SVE_FFR_SIZE): Likewise.
7235         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7236         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7237         (__SVE_SIG_TO_PT): Likewise.
7238         (SVE_PT_SVE_OFFSET): Likewise.
7239         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7240         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7241         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7242         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7243         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7244         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7245         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7246         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7247         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7248         (SVE_PT_SVE_SIZE): Likewise.
7249         (SVE_PT_SIZE): Likewise.
7250         (HAS_SVE_STATE): New define.
7251
7252 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7253
7254         * nat/aarch64-sve-linux-sigcontext.h: New file.
7255         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7256         new files.
7257         (SVE_VQ_MIN): Likewise.
7258         (SVE_VQ_MAX): Likewise.
7259         (SVE_VL_MIN): Likewise.
7260         (SVE_VL_MAX): Likewise.
7261         (SVE_NUM_ZREGS): Likewise.
7262         (SVE_NUM_PREGS): Likewise.
7263         (sve_vl_valid): Likewise.
7264         (struct user_sve_header): Likewise.
7265
7266 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7267             Richard Bunt <Richard.Bunt@arm.com>
7268
7269         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7270         was requested by GDB.
7271
7272 2018-06-15  Tom de Vries  <tdevries@suse.de>
7273
7274         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7275
7276 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7277
7278         * gnulib/update-gnulib.sh: Print expected versions of
7279         autoconf/aclocal.
7280
7281 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7282
7283         * arch-utils.c (default_type_align): Use type_length_units.
7284         * gdbtypes.c (type_align): Use type_length_units.
7285
7286 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7287
7288         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7289         of 'define' command.
7290
7291 2018-06-14  Tom de Vries  <tdevries@suse.de>
7292
7293         PR cli/22573
7294         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7295         get_no_prettyformat_print_options.
7296
7297 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7298
7299         * sparc-nat.h: Include target.h.
7300         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7301         <fetch_registers>: Remove this argument in function call.
7302         <store_registers>: Remove this argument in function call, remove
7303         extra semicolon.
7304         <low_forget_process>: Call sparc64_forget_process instead of
7305         sparc_forget_process.
7306
7307 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7308
7309         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7310         (procfs_target::make_corefile_notes): Adjust to new
7311         target_read_alloc return type.
7312
7313 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7314             Stephen Roberts  <stephen.roberts@arm.com>
7315
7316         PR gdb/22882
7317         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7318         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7319         Move should_notify_stop local into more inner scope.
7320
7321 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7322             Stephen Roberts  <stephen.roberts@arm.com>
7323
7324         PR gdb/22882
7325         * infrun.c (resume_1): Add call to mark_async_event_handler.
7326
7327 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7328
7329         * infrun.c (do_target_wait): Change old version of $pc printed.
7330
7331 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7332
7333         * dwarf2read.c (read_index_from_section): Rename to...
7334         (read_gdb_index_from_section): ... this, update all callers.
7335         (dwarf2_read_index): Rename to...
7336         (dwarf2_read_gdb_index): ... this, update all callers.
7337
7338 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7339
7340         * hppa-linux-nat.c
7341         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7342         hppa_linux_nat_target::fetch_registers.
7343
7344 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7345
7346         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7347         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7348         (AARCH64_DWARF_SVE_FFR): Likewise.
7349         (AARCH64_DWARF_SVE_P0): Likewise.
7350         (AARCH64_DWARF_SVE_Z0): Likewise.
7351
7352 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7353
7354         * common/common-regcache.h (raw_compare): New function.
7355         * regcache.c (regcache::raw_compare): Likewise.
7356         * regcache.h (regcache::raw_compare): New declaration.
7357
7358 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7359
7360         * common/common-regcache.h (reg_buffer_common): New structure.
7361         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7362         (reg_buffer::raw_supply): Likewise.
7363         (reg_buffer::raw_supply_integer): Likewise.
7364         (reg_buffer::raw_supply_zeroed): Likewise.
7365         (reg_buffer::raw_collect): Likewise.
7366         (reg_buffer::raw_collect_integer): Likewise.
7367         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7368         (reg_buffer::raw_supply): Likewise.
7369         (reg_buffer::raw_supply_integer): Likewise.
7370         (reg_buffer::raw_supply_zeroed): Likewise.
7371         (reg_buffer::raw_collect): Likewise.
7372         (reg_buffer::raw_collect_integer): Likewise.
7373
7374 2018-06-10  Tom Tromey  <tom@tromey.com>
7375
7376         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7377         (class remote_state) <stop_reply_queue>: Now std::vector.
7378         (remote_state::~remote_state)
7379         (remote_target::stop_reply_queue_length): Update.
7380         (struct queue_iter_param, remove_child_of_pending_fork)
7381         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7382         (check_pending_event_prevents_wildcard_vcont_callback)
7383         (remove_stop_reply_for_inferior)
7384         (remove_stop_reply_of_remote_state)
7385         (remote_notif_remove_once_on_match)
7386         (stop_reply_match_ptid_and_ws)
7387         (remote_kill_child_of_pending_fork): Remove.
7388         (remote_target::remove_new_fork_children)
7389         (remote_target::check_pending_events_prevent_wildcard_vcont)
7390         (remote_target::discard_pending_stop_replies)
7391         (remote_target::discard_pending_stop_replies_in_queue)
7392         (remote_target::remote_notif_remove_queued_reply)
7393         (remote_target::queued_stop_reply)
7394         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7395         (remote_target::wait, remote_target::kill_new_fork_children)
7396         (remote_target::async): Update.
7397
7398 2018-06-10  Tom Tromey  <tom@tromey.com>
7399
7400         * record-full.c (record_full_arch_list_cleanups): Remove.
7401         (record_full_message): Use try/catch.
7402         (record_full_wait_cleanups): Remove.
7403         (record_full_wait_1): Use try/catch.
7404         (record_full_restore): Likewise.
7405
7406 2018-06-10  Tom Tromey  <tom@tromey.com>
7407
7408         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7409         declare VEC.  Add constructor.
7410         <in_target_beneath>: Now bool.
7411         (record_full_breakpoints): Now a std::vector, static.
7412         (record_full_sync_record_breakpoints)
7413         (record_full_init_record_breakpoints)
7414         (record_full_target::insert_breakpoint)
7415         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7416
7417 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7418
7419         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7420         * serial.c (serial_interface_lookup): Remove struct keyword.
7421
7422 2018-06-10  Tom Tromey  <tom@tromey.com>
7423
7424         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7425         method.
7426         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7427         a method.
7428         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7429         method.
7430         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7431         "beneath" as a method.
7432         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7433         Use "beneath" as a method.
7434
7435 2018-06-10  Tom Tromey  <tom@tromey.com>
7436
7437         * tracefile.c (struct trace_file_writer_deleter): New.
7438         <operator()>: Rename from trace_file_writer_xfree.
7439         (trace_file_writer_up): New typedef.
7440         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7441
7442 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7443
7444         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7445         <m_registers, m_register_status>: Change type to
7446         std::unique_ptr.
7447         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7448         XCNEWVEC.
7449
7450 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7451
7452         * common/common-regcache.h (enum register_status): Add
7453         underlying type "signed char".
7454         * regcache.h (reg_buffer) <m_register_status>: Change type to
7455         register_status *.
7456         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7457         register_status instead of signed char.
7458         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7459         (reg_buffer::get_register_status): Remove cast.
7460         (readable_regcache::raw_read): Remove cast.
7461         (readable_regcache::cooked_read): Remove cast.
7462
7463 2018-06-09  Tom Tromey  <tom@tromey.com>
7464
7465         * source.c (reverse_search_command, forward_search_command): Use
7466         scoped_fd.
7467
7468 2018-06-09  Tom Tromey  <tom@tromey.com>
7469
7470         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7471         (serial_ops_list): Now static, std::vector.
7472         (serial_interface_lookup, serial_add_interface): Update.
7473
7474 2018-06-09  Tom Tromey  <tom@tromey.com>
7475
7476         * dwarf2read.c (process_cu_includes): Update.
7477         (process_full_comp_unit): Update.
7478         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7479         std::vector.
7480
7481 2018-06-08  Paul Koning  <paul_koning@dell.com>
7482
7483         PR gdb/23252
7484
7485         * python/python.c (do_start_initialization):
7486         Avoid call to internal Python API.
7487         (init__gdb_module): New function.
7488
7489 2018-06-08  Gary Benson <gbenson@redhat.com>
7490
7491         * linux-thread-db.c (valprint.h): New include.
7492         (struct check_thread_db_info): New structure.
7493         (check_thread_db_on_load, tdb_testinfo): New static globals.
7494         (check_thread_db, check_thread_db_callback): New functions.
7495         (try_thread_db_load_1): Run integrity checks if requested.
7496         (maintenance_check_libthread_db): New function.
7497         (_initialize_thread_db): Register "maint check libthread-db"
7498         and "maint set/show check-libthread-db".
7499         * NEWS: Mention the above new commands.
7500
7501 2018-06-08  Tom Tromey  <tom@tromey.com>
7502
7503         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7504         now a method.
7505
7506 2018-06-08  Tom Tromey  <tom@tromey.com>
7507
7508         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7509
7510 2018-06-08  Tom Tromey  <tom@tromey.com>
7511
7512         * common/btrace-common.h (struct btrace_data): Add constructor,
7513         destructor, move assignment operator.
7514         <empty, clear, fini>: New methods.
7515         <format>: Initialize.
7516         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7517         (btrace_data_empty): Don't declare.
7518         * common/btrace-common.c (btrace_data_init): Remove.
7519         (btrace_data::fini): Rename from btrace_data_fini.
7520         (btrace_data::empty): Rename from btrace_data_empty.
7521         (btrace_data::clear): Rename from btrace_data_clear.  Return
7522         bool.
7523         * btrace.h (make_cleanup_btrace_data): Don't declare.
7524         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7525         (parse_xml_btrace): Update.
7526         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7527         (maint_btrace_clear_packet_history_cmd): Update.
7528
7529 2018-06-07  Pedro Alves  <palves@redhat.com>
7530
7531         * target.h (target_ops) <beneath>: Now a method.  All references
7532         updated.
7533         (class target_stack): New.
7534         * target.c (g_target_stack): New.
7535         (g_current_top_target): Delete.
7536         (current_top_target): Get the top target out of g_target_stack.
7537         (target_stack::push, target_stack::unpush): New.
7538         (push_target, unpush_target): Reimplement.
7539         (target_is_pushed): Reimplement in terms of g_target_stack.
7540         (target_ops::beneath, target_stack::find_beneath): New.
7541
7542 2018-06-07  Pedro Alves  <palves@redhat.com>
7543
7544         * target.h (find_target_beneath): Delete declaration.
7545         * target.c (find_target_beneath): Delete definition.
7546         * aix-thread.c: All callers of find_target_beneath adjusted to
7547         call target_ops::beneath instead.
7548         * bsd-uthread.c: Likewise.
7549         * linux-thread-db.c: Likewise.
7550         * ravenscar-thread.c: Likewise.
7551         * sol-thread.c: Likewise.
7552         * spu-multiarch.c: Likewise.
7553
7554 2018-06-07  Pedro Alves  <palves@redhat.com>
7555
7556         * target.h (target_ops) <beneath>: Now a method.  All references
7557         updated.
7558         (target_ops) <m_beneath>: New.
7559         * target.c (target_ops::beneath): New.
7560         * corelow.c: Adjust all references to target_ops::beneath.
7561         * linux-thread-db.c: Likewise.
7562         * make-target-delegates: Likewise.
7563         * record-btrace.c: Likewise.
7564         * record-full.c: Likewise.
7565         * remote.c: Likewise.
7566         * target.c: Likewise.
7567         * target-delegates.c: Regenerate.
7568
7569 2018-06-07  Pedro Alves  <palves@redhat.com>
7570
7571         * target.h (target_stack): Delete.
7572         (current_top_target): Declare function.
7573         * target.c (target_stack): Delete.
7574         (g_current_top_target): New.
7575         (current_top_target): New function.
7576         * auxv.c: Use current_top_target instead of target_stack
7577         throughout.
7578         * avr-tdep.c: Likewise.
7579         * breakpoint.c: Likewise.
7580         * corefile.c: Likewise.
7581         * elfread.c: Likewise.
7582         * eval.c: Likewise.
7583         * exceptions.c: Likewise.
7584         * frame.c: Likewise.
7585         * gdbarch-selftests.c: Likewise.
7586         * gnu-v3-abi.c: Likewise.
7587         * ia64-tdep.c: Likewise.
7588         * ia64-vms-tdep.c: Likewise.
7589         * infcall.c: Likewise.
7590         * infcmd.c: Likewise.
7591         * infrun.c: Likewise.
7592         * linespec.c: Likewise.
7593         * linux-tdep.c: Likewise.
7594         * minsyms.c: Likewise.
7595         * ppc-linux-nat.c: Likewise.
7596         * ppc-linux-tdep.c: Likewise.
7597         * procfs.c: Likewise.
7598         * regcache.c: Likewise.
7599         * remote.c: Likewise.
7600         * rs6000-tdep.c: Likewise.
7601         * s390-linux-nat.c: Likewise.
7602         * s390-tdep.c: Likewise.
7603         * solib-aix.c: Likewise.
7604         * solib-darwin.c: Likewise.
7605         * solib-dsbt.c: Likewise.
7606         * solib-spu.c: Likewise.
7607         * solib-svr4.c: Likewise.
7608         * solib-target.c: Likewise.
7609         * sparc-tdep.c: Likewise.
7610         * sparc64-tdep.c: Likewise.
7611         * spu-tdep.c: Likewise.
7612         * symfile.c: Likewise.
7613         * symtab.c: Likewise.
7614         * target-descriptions.c: Likewise.
7615         * target-memory.c: Likewise.
7616         * target.c: Likewise.
7617         * target.h: Likewise.
7618         * tracefile-tfile.c: Likewise.
7619         * tracepoint.c: Likewise.
7620         * valops.c: Likewise.
7621         * valprint.c: Likewise.
7622         * value.c: Likewise.
7623         * windows-tdep.c: Likewise.
7624         * mi/mi-main.c: Likewise.
7625
7626 2018-06-07  Tom Tromey  <tom@tromey.com>
7627
7628         * valprint.h (build_address_symbolic): Declare.
7629         * printcmd.c (print_address_symbolic): Update.
7630         (build_address_symbolic): Change "name" and "filename" to
7631         std::string.
7632         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7633         Update.
7634         * defs.h (build_address_symbolic): Remove declaration.
7635
7636 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7637
7638         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7639         (aarch64_vnv_type): Add function.
7640         (aarch64_pseudo_register_name): Add V regs for SVE.
7641         (aarch64_pseudo_register_type): Likewise.
7642         (aarch64_pseudo_register_reggroup_p): Likewise.
7643         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7644         (aarch64_pseudo_read_value): Add V regs for SVE.
7645         (aarch64_pseudo_write_2): Use V0 offset for SVE
7646         (aarch64_pseudo_write): Add V regs for SVE.
7647         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7648
7649 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7650
7651         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7652         (sve_vl_from_vq): Likewise.
7653
7654 2018-06-05  Tom Tromey  <tom@tromey.com>
7655
7656         * cli/cli-cmds.c (show_version): Update.
7657         * top.c (print_gdb_version): Add "interactive" parameter.
7658         Update.
7659         * main.c (captured_main_1): Update.
7660         * top.h (print_gdb_version): Add "interactive" parameter and a
7661         comment.
7662
7663 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7664
7665         * common/enum-flags.h: Add trailing semicolon to example in
7666         comment.
7667
7668 2018-06-05  Tom Tromey  <tom@tromey.com>
7669
7670         PR cli/12326:
7671         * NEWS: Add entry about pager.
7672         * utils.c (pagination_disabled_for_command): New global.
7673         (prompt_for_continue): Allow "c" response to prompt.
7674         (reinitialize_more_filter): Clear
7675         pagination_disabled_for_command.
7676         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7677
7678 2018-06-04  Tom Tromey  <tom@tromey.com>
7679
7680         * ada-lang.h (ada_lookup_symbol_list): Update.
7681         * ada-lang.c (resolve_subexp): Update.
7682         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7683         parameter.
7684         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7685         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7686         results parameter to std::vector.
7687         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7688         Update.
7689         * ada-exp.y (block_lookup): Update.
7690         (select_possible_type_sym): Change type of syms.  Remove nsyms
7691         parameter.
7692         (write_var_or_type, write_name_assoc): Update.
7693
7694 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7695
7696         * windows-nat.c (windows_nat_target::xfer_partial): Return
7697         TARGET_XFER_E_IO if we need to delegate to the target beneath
7698         but BENEATH is NULL.
7699
7700 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7701
7702         * Makefile.in (config.status): Add configure.nat as a
7703         dependency.
7704
7705 2018-06-04  Tom Tromey  <tom@tromey.com>
7706
7707         * cp-name-parser.y (cpname_state): Add method declarations.
7708         (HANDLE_QUAL): Update.
7709         (cpname_state::d_grab, cpname_state::fill_comp)
7710         (cpname_state::make_operator, cpname_state::make_dtor)
7711         (cpname_state::make_builtin_type, cpname_state::make_name)
7712         (cpname_state::d_qualify, cpname_state::d_int_type)
7713         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7714         (%union): Move earlier.
7715
7716 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7717
7718         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7719
7720 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7721
7722         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7723         (aarch64_pseudo_write_1): Likewise.
7724         (aarch64_pseudo_read_value): Use helper.
7725         (aarch64_pseudo_write): Likewise.
7726
7727 2018-06-04  Pedro Alves  <palves@redhat.com>
7728
7729         * darwin-nat.c (darwin_ops): Delete.
7730         (darwin_attach_pid): Use get_native_target.
7731
7732 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7733
7734         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7735         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7736
7737 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7738
7739         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7740         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7741         (aarch64_gdbarch_init): Check for SVE.
7742         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7743
7744 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7745
7746         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7747         * aarch64-tdep.h (aarch64_read_description): Likewise.
7748         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7749         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7750         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7751         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7752         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7753
7754 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7755
7756         * value.c (value_fetch_lazy_bitfield): New.
7757         (value_fetch_lazy_memory): New.
7758         (value_fetch_lazy_register): New.
7759         (value_fetch_lazy): Factor out to smaller functions.
7760
7761 2018-06-01  Tom Tromey  <tom@tromey.com>
7762
7763         * cp-name-parser.y (backslashable, represented): Now const.
7764
7765 2018-06-01  Tom Tromey  <tom@tromey.com>
7766
7767         * cp-name-parser.y: Include parser-defs.h.
7768         (parser_fprintf): Remove declaration.
7769
7770 2018-06-01  Tom Tromey  <tom@tromey.com>
7771
7772         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7773         %parse-param.
7774         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7775         (global_result): Remove globals.
7776         (struct cpname_state): New.
7777         (yyparse): Don't declare.
7778         (yylex, yyerror): Move declarations after %union.
7779         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7780         (make_name): Add state parameter.
7781         Update all callers.
7782         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7783         parameter.
7784         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7785         Update.
7786         (yylex): Add lvalp, state parameters.
7787         (yyerror): Add state parameter.
7788         (cp_demangled_name_to_comp): Update.
7789
7790 2018-06-01  Tom Tromey  <tom@tromey.com>
7791
7792         * cp-name-parser.y (parser_fprintf): Declare.
7793         (GDB_YY_REMAP_PREFIX): Define.
7794         Include yy-remap.h.  Don't redefine yy* identifiers.
7795
7796 2018-06-01  Tom Tromey  <tom@tromey.com>
7797
7798         * python/py-type.c (typy_legacy_template_argument): Update.
7799         * cp-support.h (cp_demangled_name_to_comp): Update.
7800         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7801         parameter to be a "std::string *".
7802         (main): Update.
7803
7804 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7805
7806         * ada-lex.l: Include "diagnostics.h" instead of
7807         "common/diagnostics.h".
7808         * unittests/environ-selftests.c: Likewise.
7809         * common/diagnostics.h: Moved to ../include.
7810
7811 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7812
7813         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7814         to language_mode_manual while calling breakpoint_re_set_one.
7815
7816 2018-06-01  Tom Tromey  <tom@tromey.com>
7817
7818         * valops.c (value_cast_structs, destructor_name_p): Update.
7819         * symtab.c (gdb_mangle_name): Update.
7820         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7821         Update.
7822         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7823         (pascal_object_print_value_fields, pascal_object_print_value):
7824         Update.
7825         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7826         * linespec.c (find_methods): Update.
7827         * gdbtypes.h (type_name_no_tag): Remove.
7828         (type_name_or_error): Rename from type_name_no_tag_or_error.
7829         * gdbtypes.c (type_name_no_tag): Remove.
7830         (type_name_or_error): Rename from type_name_no_tag_or_error.
7831         (lookup_struct_elt_type, check_typedef): Update.
7832         * expprint.c (print_subexp_standard): Update.
7833         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7834         * d-namespace.c (d_lookup_nested_symbol): Update.
7835         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7836         (cp_print_class_member): Update.
7837         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7838         * completer.c (add_struct_fields): Update.
7839         * c-typeprint.c (cp_type_print_derivation_info)
7840         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7841         Update.
7842         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7843         (ada_prefer_type, ada_is_exception_sym): Update.
7844
7845 2018-06-01  Tom Tromey  <tom@tromey.com>
7846
7847         * valops.c (enum_constant_from_type, value_namespace_elt)
7848         (value_maybe_namespace_elt): Update.
7849         * valarith.c (find_size_for_pointer_math): Update.
7850         * target-descriptions.c (make_gdb_type): Update.
7851         * symmisc.c (print_symbol): Update.
7852         * stabsread.c (define_symbol, read_type)
7853         (complain_about_struct_wipeout, add_undefined_type)
7854         (cleanup_undefined_types_1): Update.
7855         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7856         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7857         (rust_internal_print_type, rust_composite_type)
7858         (rust_evaluate_funcall, rust_evaluate_subexp)
7859         (rust_inclusive_range_type_p): Update.
7860         * python/py-type.c (typy_get_tag): Update.
7861         * p-typeprint.c (pascal_type_print_base): Update.
7862         * mdebugread.c (parse_symbol, parse_type): Update.
7863         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7864         Update.
7865         * guile/scm-type.c (gdbscm_type_tag): Update.
7866         * go-lang.c (sixg_string_p): Update.
7867         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7868         Update.
7869         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7870         (TYPE_TAG_NAME): Remove.
7871         * gdbtypes.c (type_name_no_tag): Simplify.
7872         (check_typedef, check_types_equal, recursive_dump_type)
7873         (copy_type_recursive, arch_composite_type): Update.
7874         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7875         in summary mode when needed.
7876         * eval.c (evaluate_funcall): Update.
7877         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7878         (process_structure_scope, read_enumeration_type)
7879         (read_namespace_type, read_module_type, determine_prefix): Update.
7880         * cp-support.c (inspect_type): Update.
7881         * coffread.c (process_coff_symbol, decode_base_type): Update.
7882         * c-varobj.c (c_is_path_expr_parent): Update.
7883         * c-typeprint.c (c_type_print_base_struct_union): Update.
7884         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7885         summary when using C language.
7886         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7887         (gen_maybe_namespace_elt): Update.
7888         * ada-lang.c (ada_type_name): Simplify.
7889         (empty_record, ada_template_to_fixed_record_type_1)
7890         (template_to_static_fixed_type)
7891         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7892
7893 2018-06-01  Tom Tromey  <tom@tromey.com>
7894
7895         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7896         c_print_type.
7897         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7898         (c_print_type): Update.
7899         (c_print_type): New overload.
7900         (c_type_print_varspec_prefix, c_type_print_args)
7901         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7902         (c_type_print_base_struct_union, c_type_print_base_1)
7903         (cp_type_print_method_args): Add "language" parameter.
7904         (c_type_print_base): Update.
7905         * c-lang.h (c_print_type): Add new overload.
7906
7907 2018-06-01  Tom Tromey  <tom@tromey.com>
7908
7909         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7910         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7911
7912 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7913
7914         * aarch64-tdep.c (aarch64_sve_register_names): New const
7915         var.
7916         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7917         (AARCH64_SVE_Z_REGS_NUM): New define.
7918         (AARCH64_SVE_P_REGS_NUM): Likewise.
7919         (AARCH64_SVE_NUM_REGS): Likewise.
7920
7921 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7922
7923         * nat/linux-ptrace.h [__alpha__]
7924         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7925         definitions.
7926
7927 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7928
7929         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7930         the endianness selected.
7931         * NEWS: Document `set endian auto' mode operation update.
7932
7933 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7934
7935         * Makefile.in: Add new header.
7936         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7937         (sve_vl_from_vg): Likewise.
7938         (sve_vq_from_vl): Likewise.
7939         (sve_vl_from_vq): Likewise.
7940         (sve_vq_from_vg): Likewise.
7941         (sve_vg_from_vq): Likewise.
7942         * configure.nat: Add new c file.
7943         * nat/aarch64-sve-linux-ptrace.c: New file.
7944         * nat/aarch64-sve-linux-ptrace.h: New file.
7945
7946 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7947
7948         * aarch64-linux-nat.c (aarch64_linux_read_description):
7949         Add parmeter zero.
7950         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7951         Likewise.
7952         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7953         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7954         (aarch64_gdbarch_init): Add parmeter zero.
7955         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7956         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7957         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7958         parmeter.
7959         * doc/gdb.texinfo: Describe SVE feature
7960         * features/aarch64-sve.c: New file.
7961
7962 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7963
7964         PR gdb/23210
7965         * gdbarch.sh (significant_addr_bit): Default to zero when
7966         not set by target architecture.
7967         * gdbarch.c: Re-generated.
7968         * utils.c (address_significant): Update.
7969
7970 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7971
7972         * stack.c (func_command): Remove trailing newline in call to error.
7973
7974 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7975
7976         * regcache.h (regcache_raw_collect): Remove, update callers to
7977         use regcache::raw_collect.
7978         * regcache.c (regcache_raw_collect): Remove.
7979
7980 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7981
7982         * regcache.h (regcache_raw_supply): Remove, update callers to
7983         use detached_regcache::raw_supply.
7984         * regcache.c (regcache_raw_supply): Remove.
7985
7986 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7987
7988         * regcache.h (regcache_cooked_write_part): Remove, update
7989         callers to use regcache::cooked_write_part.
7990         * regcache.c (regcache_cooked_write_part): Remove.
7991
7992 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7993
7994         * regcache.h (regcache_cooked_read_part): Remove, update callers
7995         to use readable_regcache::cooked_read_part.
7996         * regcache.c (regcache_cooked_read_part): Remove.
7997
7998 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7999
8000         * regcache.h (regcache_cooked_read_value): Remove, update
8001         callers to use readable_regcache::cooked_read_value.
8002         * regcache.c (regcache_cooked_read_value): Remove.
8003
8004 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8005
8006         * regcache.h (regcache_cooked_write): Remove, update callers to
8007         use regcache::cooked_write.
8008         * regcache.c (regcache_cooked_write): Remove.
8009
8010 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8011
8012         * regcache.h (regcache_invalidate): Remove, update callers to
8013         use detached_regcache::invalidate instead.
8014         * regcache.c (regcache_invalidate): Remove.
8015
8016 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8017
8018         * regcache.h (regcache_raw_write_part): Remove, update callers
8019         to use regcache::raw_write_part instead.
8020         * regcache.c (regcache_raw_write_part): Remove.
8021
8022 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8023
8024         * regcache.h (regcache_raw_read_part): Remove, update callers to
8025         use readable_regcache::raw_read_part instead.
8026         * regcache.c (regcache_raw_read_part): Remove.
8027
8028 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8029
8030         * regcache.h (regcache_cooked_read): Remove, update callers to
8031         use readable_regcache::cooked_read instead.
8032         * regcache.c (regcache_cooked_read): Remove.
8033
8034 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8035
8036         * regcache.h (regcache_raw_write): Remove, update callers to use
8037         regcache::raw_write instead.
8038         * regcache.c (regcache_raw_write): Remove.
8039
8040 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8041
8042         * regcache.h (regcache_raw_read): Remove, update callers to use
8043         readable_regcache::raw_read instead.
8044         * regcache.c (regcache_raw_read): Remove.
8045
8046 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8047
8048         * regcache.h (regcache_raw_update): Remove, update callers to
8049         use readable_regcache::raw_update instead.
8050         * regcache.c (regcache_raw_update): Remove.
8051
8052 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8053
8054         * regcache.h (regcache_register_status): Remove, update callers
8055         to use reg_buffer::get_register_status directly instead.
8056         * regcache.c (regcache_register_status): Remove.
8057
8058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8059
8060         * regcache.h (regcache_get_ptid): Remove, update all callers to
8061         call regcache::ptid instead.
8062         * regcache.c (regcache_get_ptid): Remove.
8063
8064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8065
8066         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8067
8068 2018-05-30  Pedro Alves  <palves@redhat.com>
8069
8070         * common/common-exceptions.h (exception_rethrow): Use
8071         ATTRIBUTE_NORETURN.
8072
8073 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8074
8075         * breakpoint.c (print_solib_event, check_status_catch_solib):
8076         Remove struct keyword in range-based for loops.
8077         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8078         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8079         Likewise.
8080         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8081         Likewise.
8082         * symfile.c (addr_info_make_relative): Likewise.
8083         * thread.c (value_in_thread_stack_temporaries): Likewise.
8084
8085 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8086
8087         PR gdb/16841
8088         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8089         aggregate type to get its real type before accessing it.
8090
8091 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8092
8093         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8094         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8095         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8096         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8097         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8098         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8099         * printcmd.c (info_address_command): Likewise.
8100
8101 2018-05-29  Tom Tromey  <tom@tromey.com>
8102
8103         * windows-nat.c (handle_exception): Update fall-through comment.
8104
8105 2018-05-29  Tom Tromey  <tom@tromey.com>
8106
8107         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8108         (struct program_space) <added_solibs>: Now a std::vector.
8109         * breakpoint.c (print_solib_event): Update.
8110         (check_status_catch_solib): Update.
8111         * progspace.c (clear_program_space_solib_cache): Update.
8112         * solib.c (update_solib_list): Update.
8113
8114 2018-05-29  Tom Tromey  <tom@tromey.com>
8115
8116         * python/py-type.c (typy_richcompare): Update.
8117         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8118         * gdbtypes.h (types_deeply_equal): Return bool.
8119         (types_equal): Likewise.
8120         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8121         declare VEC.
8122         (check_types_equal): Change worklist to std::vector.  Return
8123         bool.
8124         (struct type_equality_entry): Add constructor.
8125         (compare_maybe_null_strings): Return bool.
8126         (check_types_worklist): Return bool.  Change worklist to
8127         std::vector.
8128         (types_deeply_equal): Use std::vector.
8129         (types_equal): Return bool.
8130         (compare_maybe_null_strings): Simplify.
8131
8132 2018-05-29  Tom Tromey  <tom@tromey.com>
8133
8134         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8135
8136 2018-05-29  Tom Tromey  <tom@tromey.com>
8137
8138         * objc-lang.h: Don't include cp-support.h.
8139         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8140         declare VEC.
8141
8142 2018-05-27  Tom Tromey  <tom@tromey.com>
8143
8144         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8145
8146 2018-05-25  Tom Tromey  <tom@tromey.com>
8147
8148         * value.c (value::location): Initialize.
8149
8150 2018-05-25  Tom Tromey  <tom@tromey.com>
8151
8152         * dbxread.c (init_bincl_list): Remove.
8153         (bincl_list): Now a std::vector.
8154         (bincls_allocated, next_bincl): Remove.
8155         (free_bincl_list, do_free_bincl_list_cleanup)
8156         (make_cleanup_free_bincl_list): Remove.
8157         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8158         unique_xmalloc_ptr.
8159         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8160         (struct header_file_location): Add constructor.
8161         (add_bincl_to_list): Remove.
8162
8163 2018-05-25  Tom Tromey  <tom@tromey.com>
8164
8165         * tui/tui.c (tui_enable): Update.
8166         * mi/mi-interp.c (mi_interp::init): Update.
8167         * interps.h (class interp) <name>: New method.
8168         <m_name>: Rename from name.
8169         (~scoped_restore_interp): Update.
8170         * interps.c (interp::interp): Update.
8171         (interp_add, interp_set, interp_lookup_existing)
8172         (current_interp_named_p): Update.
8173
8174 2018-05-25  Tom Tromey  <tom@tromey.com>
8175
8176         * interps.c (interp_name): Remove.
8177         * mi/mi-interp.c (mi_interp::init): Update.
8178         * interps.h (interp_name): Remove.
8179         (~scoped_restore_interp): Update.
8180         * tui/tui.c (tui_enable): Update.
8181
8182 2018-05-25  Tom Tromey  <tom@tromey.com>
8183
8184         * utils.c (fputs_maybe_filtered): Update.
8185         * linespec.c (decode_line_full): Update.
8186         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8187         (mi_print_breakpoint_for_event, mi_solib_loaded)
8188         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8189         (mi_user_selected_context_changed): Update.
8190         * mi/mi-main.c (mi_execute_command): Update.
8191         * cli/cli-script.c (execute_control_command): Update.
8192         * python/python.c (execute_gdb_command): Update.
8193         * solib.c (info_sharedlibrary_command): Update.
8194         * interps.c (interp_ui_out): Remove.
8195         * interps.h (interp_ui_out): Remove.
8196
8197 2018-05-25  Tom Tromey  <tom@tromey.com>
8198
8199         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8200         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8201         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8202
8203 2018-05-25  Tom Tromey  <tom@tromey.com>
8204
8205         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8206         * interps.c (interp_exec): Use scoped_restore.
8207
8208 2018-05-25  Tom Tromey  <tom@tromey.com>
8209
8210         * remote.c (remote_target::remote_file_get): Use
8211         gdb::byte_vector.
8212         (remote_target::remote_file_put): Likewise.
8213
8214 2018-05-25  Tom Tromey  <tom@tromey.com>
8215
8216         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8217         a std::string.
8218         (get_pe_section_index, add_pe_exported_sym): Update.
8219         (read_pe_exported_syms): Use gdb::def_vector.
8220
8221 2018-05-25  Tom Tromey  <tom@tromey.com>
8222
8223         * frame.c (remove_prev_frame): Remove.
8224         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8225
8226 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8227
8228         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8229         Remove prototypes.
8230         * mips-linux-nat.c (supply_fpregset): Always call
8231         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8232         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8233         `mips_fill_fpregset'.
8234         * mips-linux-tdep.c (mips_supply_fpregset)
8235         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8236         (mips_fill_fpregset_wrapper): Remove functions.
8237         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8238         (mips_linux_fpregset): Remove variable.
8239         (mips_linux_iterate_over_regset_sections): Use
8240         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8241         (mips_linux_o32_sigframe_init): Remove comment.
8242
8243 2018-05-25  Pedro Alves  <palves@redhat.com>
8244
8245         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8246         (struct readahead_cache, struct packet_reg, struct
8247         remote_arch_state, class remote_state): Move higher up in the
8248         file.
8249         (remote_target::m_remote_state): Now an object instead of a pointer.
8250         (remote_target::get_remote_state): Adjust.
8251
8252 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8253
8254         * stack.c (select_and_print_frame): Delete.
8255         (struct function_bounds): Move struct within function.
8256         (func_command): Most content moved into new function
8257         find_frame_for_function, use new function, print result, add
8258         function comment.
8259         (find_frame_for_function): New function, now returns a result.
8260
8261 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8262
8263         * stack.c (iterate_over_block_arg_vars): Fix comment.
8264         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8265
8266 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8267
8268         PR gdb/23203
8269         * frame.c
8270         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8271         Define.
8272         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8273         Define.
8274         * frame.h (class scoped_restore_selected_frame): New class.
8275         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8276         of any exception, use scoped_restore_selected_frame to restore the
8277         frame instead.
8278
8279 2018-05-24  Pedro Alves  <palves@redhat.com>
8280
8281         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8282         override.
8283
8284 2018-05-23  Tom Tromey  <tom@tromey.com>
8285
8286         * complaints.c (struct complaints): Remove.
8287         (symfile_complaint_book): Remove.
8288         (series): New global.
8289         (complaint_internal): Update.
8290         (clear_complaints): Update.
8291
8292 2018-05-23  Tom Tromey  <tom@tromey.com>
8293
8294         * complaints.c (counters): New global.
8295         (struct complain): Remove.
8296         (struct complaints) <root>: Remove.
8297         (complaint_sentinel): Remove.
8298         (symfile_complaint_book): Update.
8299         (find_complaint) Remove.
8300         (complaint_internal, clear_complaints): Update.
8301
8302 2018-05-23  Tom Tromey  <tom@tromey.com>
8303
8304         * complaints.c (struct complain) <file, line>: Remove.
8305         (find_complaint): Remove file, line parameters.
8306         (complaint_internal): Update.
8307
8308 2018-05-23  Tom Tromey  <tom@tromey.com>
8309
8310         * complaints.c (vcomplaint): Remove.
8311         (complaint_internal) Merge in contents of vcomplaint.
8312
8313 2018-05-23  Tom Tromey  <tom@tromey.com>
8314
8315         * complaints.c (struct complaints) <explanation>: Remove.
8316         (symfile_explanations): Remove.
8317         (symfile_complaint_book): Update.
8318         (vcomplaint): Update.
8319         (struct explanation): Remove.
8320
8321 2018-05-23  Tom Tromey  <tom@tromey.com>
8322
8323         * complaints.c (symfile_complaints): Remove.
8324         (complaint_internal): Remove "complaints" parameter.
8325         (clear_complaints, vcomplaint): Remove "c" parameter.
8326         (get_complaints): Remove.
8327         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8328         (dwarf2_debug_line_missing_file_complaint)
8329         (dwarf2_debug_line_missing_end_sequence_complaint)
8330         (dwarf2_complex_location_expr_complaint)
8331         (dwarf2_const_value_length_mismatch_complaint)
8332         (dwarf2_section_buffer_overflow_complaint)
8333         (dwarf2_macro_malformed_definition_complaint)
8334         (dwarf2_invalid_attrib_class_complaint)
8335         (create_addrmap_from_index, dw2_symtab_iter_next)
8336         (dw2_expand_marked_cus)
8337         (dw2_debug_names_iterator::find_vec_in_debug_names)
8338         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8339         (create_debug_type_hash_table, init_cutu_and_read_dies)
8340         (partial_die_parent_scope, add_partial_enumeration)
8341         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8342         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8343         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8344         (create_cus_hash_table, create_dwp_hash_table)
8345         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8346         (dwarf2_rnglists_process, dwarf2_ranges_process)
8347         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8348         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8349         (handle_struct_member_die, process_structure_scope)
8350         (read_array_type, read_common_block, read_module_type)
8351         (read_tag_pointer_type, read_typedef, read_base_type)
8352         (read_subrange_type, load_partial_dies, partial_die_info::read)
8353         (partial_die_info::read, partial_die_info::read)
8354         (partial_die_info::read, read_checked_initial_length_and_offset)
8355         (dwarf2_string_attr, read_formatted_entries)
8356         (dwarf_decode_line_header)
8357         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8358         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8359         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8360         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8361         (get_signatured_type, get_DW_AT_signature_type)
8362         (decode_locdesc, file_file_name, consume_improper_spaces)
8363         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8364         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8365         (dwarf2_symbol_mark_computed, set_die_type)
8366         (read_attribute_value): Update.
8367         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8368         Update.
8369         * dbxread.c (unknown_symtype_complaint)
8370         (lbrac_mismatch_complaint, repeated_header_complaint)
8371         (set_namestring, function_outside_compilation_unit_complaint)
8372         (read_dbx_symtab, process_one_symbol): Update.
8373         * gdbtypes.c (stub_noname_complaint): Update.
8374         * windows-nat.c (handle_unload_dll): Update.
8375         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8376         (decode_base_type): Update.
8377         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8378         (eb_complaint, record_include_begin, record_include_end)
8379         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8380         (process_xcoff_symbol, read_symbol)
8381         (function_outside_compilation_unit_complaint)
8382         (scan_xcoff_symtab): Update.
8383         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8384         * buildsym.c (finish_block_internal, make_blockvector)
8385         (end_symtab_get_static_block, augment_type_symtab): Update.
8386         * dtrace-probe.c (dtrace_process_dof)
8387         (dtrace_static_probe_ops::get_probes): Update.
8388         * complaints.h (struct complaint): Don't declare.
8389         (symfile_complaints): Remove.
8390         (complaint_internal): Remove "complaints" parameter.
8391         (complaint): Likewise.
8392         (clear_complaints): Likewise.
8393         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8394         (reread_symbols): Update.
8395         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8396         (dwarf2_frame_cache, decode_frame_entry): Update.
8397         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8398         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8399         (info_selectors_command): Update.
8400         * macrotab.c (macro_include, check_for_redefinition)
8401         (macro_undef): Update.
8402         * objfiles.c (filter_overlapping_sections): Update.
8403         * stabsread.c (invalid_cpp_abbrev_complaint)
8404         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8405         (define_symbol, error_type, read_type, rs6000_builtin_type)
8406         (stabs_method_name_from_physname, read_member_functions)
8407         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8408         (attach_fields_to_type, complain_about_struct_wipeout)
8409         (read_range_type, read_args, common_block_start)
8410         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8411         Update.
8412         * mdebugread.c (index_complaint, unknown_ext_complaint)
8413         (basic_type_complaint, bad_tag_guess_complaint)
8414         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8415         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8416         (parse_procedure, parse_lines)
8417         (function_outside_compilation_unit_complaint)
8418         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8419         (bad_tag_guess_complaint, reg_value_complaint): Update.
8420         * cp-support.c (demangled_name_complaint): Update.
8421         * macroscope.c (sal_macro_scope): Update.
8422         * dwarf-index-write.c (class debug_names): Update.
8423
8424 2018-05-23  Tom Tromey  <tom@tromey.com>
8425
8426         * complaints.c (clear_complaints): Remove "noisy" parameter.
8427         * complaints.h (clear_complaints): Update.
8428         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8429         (reread_symbols): Update.
8430
8431 2018-05-23  Tom Tromey  <tom@tromey.com>
8432
8433         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8434         SUBSEQUENT_MESSAGE.
8435         (vcomplaint, clear_complaints): Update.
8436         (symfile_explanations): Remove some messages.
8437
8438 2018-05-23  Tom Tromey  <tom@tromey.com>
8439
8440         * complaints.c (internal_complaint): Remove.
8441         * complaints.h (internal_complaint): Remove.
8442
8443 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8444
8445         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8446
8447 2018-05-22  Pedro Alves  <palves@redhat.com>
8448
8449         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8450         (remote_fileio_badfd, remote_fileio_return_errno)
8451         (remote_fileio_return_success, remote_fileio_func_open)
8452         (remote_fileio_func_open, remote_fileio_func_close)
8453         (remote_fileio_func_read, remote_fileio_func_write)
8454         (remote_fileio_func_lseek, remote_fileio_func_rename)
8455         (remote_fileio_func_unlink, remote_fileio_func_stat)
8456         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8457         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8458         remote_target parameter.
8459         (remote_fio_func_map) <func>: Add remote_target parameter.
8460         (do_remote_fileio_request, remote_fileio_request):
8461         * remote-fileio.h (remote_fileio_request):
8462         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8463         remote_target parameter.
8464         (remote_notif_process, handle_notification): Adjust to pass down
8465         the remote.
8466         (remote_notif_state_allocate): Add remote_target parameter.  Save
8467         it.
8468         * remote-notif.h (struct remote_target): Forward declare.
8469         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8470         remote_target parameter.
8471         (struct remote_notif_state) <remote>: New field.
8472         (remote_notif_ack, remote_notif_parse): Add remote_target
8473         parameter.
8474         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8475         remote_target parameter.
8476         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8477         (threads_listing_context, rmt_thread_action, protocol_feature)
8478         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8479         (packet_result, struct threads_listing_context, remote_state):
8480         Move definitions and declarations higher up.
8481         (remote_target) <~remote_target>: Declare.
8482         (remote_download_command_source, remote_file_put, remote_file_get)
8483         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8484         (remote_hostio_pread_vFile, remote_hostio_send_command)
8485         (remote_hostio_set_filesystem, remote_hostio_open)
8486         (remote_hostio_close, remote_hostio_unlink, remote_state)
8487         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8488         (get_memory_write_packet_size, get_memory_read_packet_size)
8489         (append_pending_thread_resumptions, remote_detach_1)
8490         (append_resumption, remote_resume_with_vcont)
8491         (add_current_inferior_and_thread, wait_ns, wait_as)
8492         (process_stop_reply, remote_notice_new_inferior)
8493         (process_initial_stop_replies, remote_add_thread)
8494         (btrace_sync_conf, remote_btrace_maybe_reopen)
8495         (remove_new_fork_children, kill_new_fork_children)
8496         (discard_pending_stop_replies, stop_reply_queue_length)
8497         (check_pending_events_prevent_wildcard_vcont)
8498         (discard_pending_stop_replies_in_queue, stop_reply)
8499         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8500         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8501         (remote_interrupt_as, remote_interrupt_ns)
8502         (remote_get_noisy_reply, remote_query_attached)
8503         (remote_add_inferior, remote_current_thread, get_current_thread)
8504         (set_thread, set_general_thread, set_continue_thread)
8505         (set_general_process, write_ptid)
8506         (remote_unpack_thread_info_response, remote_get_threadinfo)
8507         (parse_threadlist_response, remote_get_threadlist)
8508         (remote_threadlist_iterator, remote_get_threads_with_ql)
8509         (remote_get_threads_with_qxfer)
8510         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8511         (get_offsets, remote_check_symbols, remote_supported_packet)
8512         (remote_query_supported, remote_packet_size)
8513         (remote_serial_quit_handler, remote_detach_pid)
8514         (remote_vcont_probe, remote_resume_with_hc)
8515         (send_interrupt_sequence, interrupt_query)
8516         (remote_notif_get_pending_events, fetch_register_using_p)
8517         (send_g_packet, process_g_packet, fetch_registers_using_g)
8518         (store_register_using_P, store_registers_using_G)
8519         (set_remote_traceframe, check_binary_download)
8520         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8521         (remote_xfer_live_readonly_partial, remote_read_bytes)
8522         (remote_send_printf, remote_flash_write, readchar)
8523         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8524         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8525         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8526         (extended_remote_disable_randomization, extended_remote_run)
8527         (send_environment_packet, extended_remote_environment_support)
8528         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8529         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8530         (packet_command): Now methods of ...
8531         (remote_target): ... this class.
8532         (m_remote_state) <remote_target>: New field.
8533         (struct remote_state) <stop_reply_queue,
8534         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8535         fields.
8536         (remote_state::remote_state): Allocate stop_reply_queue.
8537         (remote_state): Delete global.
8538         (get_remote_state_raw): Delete.
8539         (remote_target::get_remote_state): Allocate m_remote_state on
8540         demand.
8541         (get_current_remote_target): New.
8542         (remote_ops, extended_remote_ops): Delete.
8543         (wait_forever_enabled_p, remote_async_inferior_event_token):
8544         Delete, moved to struct remote_state.
8545         (remote_target::close): Delete self.  Destruction bits split to
8546         ...
8547         (remote_target::~remote_target): ... this.
8548         (show_memory_packet_size): Adjust to use
8549         get_current_remote_target.
8550         (struct protocol_feature) <func>: Add remote_target parameter.
8551         All callers adjusted.
8552         (curr_quit_handler_target): New.
8553         (remote_serial_quit_handler): Reimplement.
8554         (remote_target::open_1): Adjust to use get_current_remote_target.
8555         Heap-allocate remote_target/extended_remote_target instances.
8556         (vcont_builder::vcont_builder): Add remote_target parameter, and
8557         save it in m_remote.  All callers adjusted.
8558         (vcont_builder::m_remote): New field.
8559         (vcont_builder::restart, vcont_builder::flush)
8560         (vcont_builder::push_action): Use it.
8561         (remote_target::commit_resume): Use it.
8562         (struct queue_iter_param) <remote>: New field.
8563         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8564         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8565         (check_pending_event_prevents_wildcard_vcont_callback)
8566         (remote_target::check_pending_events_prevent_wildcard_vcont)
8567         (remote_target::discard_pending_stop_replies)
8568         (remote_target::discard_pending_stop_replies_in_queue)
8569         (remote_target::remote_notif_remove_queued_reply): Fill in
8570         'remote' field.
8571         (remote_notif_get_pending_events): New.
8572         (remote_target::readchar, remote_target::remote_serial_write):
8573         Save/restore curr_quit_handler_target.
8574         (putpkt): New.
8575         (kill_new_fork_children): Fill in 'remote' field.
8576         (packet_command): Use get_current_remote_target, defer to
8577         remote_target method of same name.
8578         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8579         parameter, and save it in m_remote.  All callers adjusted.
8580         (scoped_remote_fd::release): Use m_remote.
8581         (scoped_remote_fd::m_remote): New field.
8582         (remote_file_put, remote_file_get, remote_file_delete): Use
8583         get_current_remote_target, defer to remote_target method of same
8584         name.
8585         (remote_btrace_reset): Add remote_state paremeter.  Update all
8586         callers.
8587         (remote_async_inferior_event_handler). Pass down 'data'.
8588         (remote_new_objfile): Use get_current_remote_target.
8589         (remote_target::vcont_r_supported): New.
8590         (set_range_stepping): Use get_current_remote_target and
8591         remote_target::vcont_r_supported.
8592         (_initialize_remote): Don't allocate 'remote_state' and
8593         'stop_reply_queue' globals.
8594         * remote.h (struct remote_target): Forward declare.
8595         (getpkt, putpkt, remote_notif_get_pending_events): Add
8596         'remote_target' parameter.
8597
8598 2018-05-22  Pedro Alves  <palves@redhat.com>
8599
8600         * remote.c (vcont_builder): Now a class.  Make all data members
8601         private.
8602         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8603         Declare methods.
8604         (vcont_builder_restart): Rename to ...
8605         (vcont_builder::restart): ... this.
8606         (vcont_builder_flush): Rename to ...
8607         (vcont_builder::flush): ... this.
8608         (vcont_builder_push_action): Rename to ...
8609         (vcont_builder::push_action): ... this.
8610         (remote_target::commit_resume): Adjust.
8611
8612 2018-05-22  Pedro Alves  <palves@redhat.com>
8613
8614         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8615         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8616         (get_fixed_memory_packet_size): New.
8617         (get_memory_packet_size): Use it.
8618         (set_memory_packet_size): Don't override the config size with
8619         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8620         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8621         Don't refer to get_memory_packet_size if not connected to a remote
8622         target.  Show "(default)" if configured size is 0.
8623
8624 2018-05-22  Pedro Alves  <palves@redhat.com>
8625
8626         * remote.c (remote_target::mourn_inferior): Move
8627         discard_pending_stop_replies call here from ...
8628         (_initialize_remote): ... here.
8629
8630 2018-05-22  Pedro Alves  <palves@redhat.com>
8631
8632         * remote.c (compare_section_command): Remove set_general_process
8633         call.
8634
8635 2018-05-22  Pedro Alves  <palves@redhat.com>
8636
8637         * remote.c (struct packet_reg, struct remote_arch_state):
8638         Move higher up in the file.
8639         (remote_state) <m_arch_states>: Store remote_arch_state values
8640         instead of remote_arch_state pointers.
8641         (remote_state::get_remote_arch_state): Adjust.
8642
8643 2018-05-22  Pedro Alves  <palves@redhat.com>
8644
8645         * remote.c: Include <unordered_map>.
8646         (remote_state): Now a class.
8647         (remote_state) <get_remote_arch_state>: Declare method.
8648         <get_remote_arch_state>: New field.
8649         (remote_arch_state) <remote_arch_state>: Declare ctor.
8650         <regs>: Now a unique_ptr.
8651         (remote_gdbarch_data_handle): Delete.
8652         (get_remote_arch_state): Delete.
8653         (remote_state::get_remote_arch_state): New.
8654         (get_remote_state): Adjust to call remote_state's
8655         get_remote_arch_state method.
8656         (init_remote_state): Delete, bits factored out to ...
8657         (remote_arch_state::remote_arch_state): ... this new method.
8658         (get_remote_packet_size, get_memory_packet_size)
8659         (process_g_packet, remote_target::fetch_registers)
8660         (remote_target::prepare_to_store, store_registers_using_G)
8661         (remote_target::store_registers, remote_target::get_trace_status):
8662         Adjust to call remote_state's method.
8663         (_initialize_remote): Remove reference to
8664         remote_gdbarch_data_handle.
8665
8666 2018-05-22  Pedro Alves  <palves@redhat.com>
8667
8668         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8669         pread>: New method declarations.
8670         (remote_target::open_1): Adjust.
8671         (readahead_cache_invalidate): Rename to ...
8672         (readahead_cache::invalidate): ... this, and adjust to be a class
8673         method.
8674         (readahead_cache_invalidate_fd): Rename to ...
8675         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8676         class method.
8677         (remote_hostio_pwrite): Adjust.
8678         (remote_hostio_pread_from_cache): Rename to ...
8679         (readahead_cache::pread): ... this, and adjust to be a class
8680         method.
8681         (remote_hostio_close): Adjust.
8682
8683 2018-05-22  Pedro Alves  <palves@redhat.com>
8684
8685         * remote.c (remote_hostio_close_cleanup): Delete.
8686         (class scoped_remote_fd): New.
8687         (remote_file_put, remote_file_get): Use it.
8688
8689 2018-05-22  Pedro Alves  <palves@redhat.com>
8690
8691         (struct vCont_action_support): Use bool and initialize all fields.
8692         (struct readahead_cache): Initialize all fields.
8693         (remote_state): Use bool and initialize all fields.
8694         (remote_state::remote_state, remote_state::~remote_state): New.
8695         (new_remote_state): Delete.
8696         (_initialize_remote): Use new to allocate remote_state.
8697
8698 2018-05-22  Pedro Alves  <palves@redhat.com>
8699             張俊芝  <zjz@zjz.name>
8700
8701         PR gdb/22973
8702         * c-exp.y: Include "c-support.h".
8703         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8704         of tolower.  Use c_ident_is_alpha to scan names.
8705         * c-lang.c: Include "c-support.h".
8706         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8707         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8708         * c-support.h: New file, with bits factored out from ...
8709         * cp-name-parser.y: ... this file.
8710         Include "c-support.h".
8711         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8712         c-support.h and renamed.
8713         (symbol_end, yylex): Adjust.
8714
8715 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8716
8717         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8718         parameter type to CORE_ADDR.
8719         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8720         parameter type in declaration to CORE_ADDR.
8721         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8722         target_auxv_search to get AT_HWCAP and use the result to get the
8723         target description.
8724         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8725         to CORE_ADDR. Remove the cast of the return value to unsigned
8726         long. Fix error predicate of target_auxv_search.
8727         (ppc_linux_nat_target::read_description): Change the type of the
8728         hwcap variable to CORE_ADDR.
8729
8730 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8731
8732         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8733         if the size of fpscr is larger than 32 bits.
8734
8735 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8736
8737         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8738         (ppc32_linux_vsxregmap): New global.
8739         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8740         regcache_supply_regset, and regcache_collect_regset.
8741         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8742         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8743         (fetch_vsx_register, store_vsx_register): Remove.
8744         (fetch_vsx_registers): Add regno parameter. Get regset using
8745         ppc_linux_vsxregset. Use regset to supply registers.
8746         (store_vsx_registers): Add regno parameter. Get regset using
8747         ppc_linux_vsxregset. Use regset to collect registers.
8748         (fetch_register): Call fetch_vsx_registers instead of
8749         fetch_vsx_register.
8750         (store_register): Call store_vsx_registers instead of
8751         store_vsx_register.
8752         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8753         new regno parameter.
8754         (store_ppc_registers): Call store_vsx_registers with -1 for the
8755         new regno parameter.
8756         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8757         (ppc_collect_vsxregset): Remove.
8758
8759 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8760
8761         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8762         offset fields.
8763         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8764         for vector register offset fields.
8765         (ppc64_fbsd_reg_offsets): Likewise.
8766         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8767         to vector register offset fields.
8768         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8769         to vector register offset fields.
8770         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8771         vector register offset fields.
8772         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8773         initializers for vector register offset fields.
8774         (rs6000_aix64_reg_offsets): Likewise.
8775         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8776         (ppc_supply_vrregset): Remove.
8777         (ppc_collect_vrregset): Remove.
8778         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8779         (ppc_linux_vrregset) : New function.
8780         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8781         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8782         (ppc32_linux_vrregset): Remove.
8783         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8784         and use result instead of ppc32_linux_vrregset.
8785         (ppc32_linux_reg_offsets): Remove initializers for vector register
8786         offset fields.
8787         (ppc64_linux_reg_offsets): Likewise.
8788         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8789         * ppc-linux-nat.c: Include regset.h.
8790         (gdb_vrregset_t): Adjust comment to account for little-endian
8791         mode.
8792         (supply_vrregset, fill_vrregset): Remove.
8793         (fetch_altivec_register, store_altivec_register): Remove.
8794         (fetch_altivec_registers): Add regno parameter. Get regset using
8795         ppc_linux_vrregset. Use regset to supply registers.
8796         (store_altivec_registers): Add regno parameter. Get regset using
8797         ppc_linux_vrregset. Use regset to collect registers.
8798         (fetch_register): Call fetch_altivec_registers instead of
8799         fetch_altivec_register.
8800         (store_register): Call store_altivec_registers instead of
8801         store_altivec_register.
8802         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8803         the new regno parameter.
8804         (store_ppc_registers): Call store_altivec_registers with -1 for
8805         the new regno parameter.
8806
8807 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8808
8809         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8810         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8811         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8812         (gdb_vrregset_t): Change array type size to
8813         PPC_LINUX_SIZEOF_VRREGSET.
8814         (gdb_vsxregset_t): Change array type size to
8815         PPC_LINUX_SIZEOF_VSXREGSET.
8816         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8817         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8818         PPC_LINUX_SIZEOF_VSXREGSET.
8819
8820 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8821
8822         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8823         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8824         nat/ppc-linux.c.
8825         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8826         ppc_linux_target_wordsize with tid.
8827         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8828         wordsize with tid.
8829         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8830         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8831         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8832         tid parameter. Remove static specifier.
8833         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8834         (ppc_linux_target_wordsize): New declaration.
8835
8836 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8837
8838         * arch/ppc-linux-common.c: New file.
8839         * arch/ppc-linux-common.h: New file.
8840         * arch/ppc-linux-tdesc.h: New file.
8841         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8842         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8843         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8844         arch/ppc-linux-tdesc.h.
8845         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8846         arch/ppc-linux-tdesc.h.
8847         (ppc_linux_nat_target::read_description): Remove target
8848         description matching code. Fill a ppc_linux_features struct and
8849         call ppc_linux_match_description with it. Move comment about ISA
8850         2.05 to ppc-linux-common.c.
8851         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8852         arch/ppc-linux-tdesc.h.
8853         (ppc_linux_core_read_description): Remove target description
8854         matching code. Fill a ppc_linux_features struct and call
8855         ppc_linux_match_description with it.
8856         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8857         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8858         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8859         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8860         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8861         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8862         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8863         (tdesc_powerpc_e500l): Remove.
8864
8865 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8866
8867         * ada-lang.c (catch_assert_command): Pass empty string instead
8868         of NULL for excep_string argument.
8869
8870 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8871
8872         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8873         the width of the requested register exceeds the width of the
8874         `ptrace' data type.
8875
8876 2018-05-21  Tom Tromey  <tom@tromey.com>
8877
8878         * printcmd.c (output_command): Remove.
8879         (output_command_const): Rename to output_command.
8880         * valprint.h (output_command): Rename from output_command_const.
8881         * tracepoint.c (trace_dump_actions): Call output_command.
8882
8883 2018-05-21  Tom Tromey  <tom@tromey.com>
8884
8885         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8886         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8887         * ada-lang.h (create_ada_exception_catchpoint): Update.
8888         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8889         std::string.
8890         (create_excep_cond_exprs, ~ada_catchpoint)
8891         (should_stop_exception, print_one_exception)
8892         (print_mention_exception, print_recreate_exception): Update.
8893         (ada_get_next_arg): Remove.
8894         (catch_ada_exception_command_split): Use std::string.  Change type
8895         of "excep_string", "cond_string".
8896         (catch_ada_exception_command): Update.
8897         (create_ada_exception_catchpoint): Change type of excep_string.
8898         (ada_exception_sal): Remove excep_string parameter.
8899         (~ada_catchpoint): Remove.
8900
8901 2018-05-21  Tom Tromey  <tom@tromey.com>
8902
8903         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8904         cleanup.
8905
8906 2018-05-21  Tom Tromey  <tom@tromey.com>
8907
8908         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8909         Return unique_xmalloc_ptr.
8910         (print_it_exception): Update.
8911
8912 2018-05-21  Tom Tromey  <tom@tromey.com>
8913
8914         * tracepoint.c (trace_dump_actions): Use std::string.
8915
8916 2018-05-21  Tom Tromey  <tom@tromey.com>
8917
8918         * symfile.c (reread_symbols): Use std::string for original_name.
8919
8920 2018-05-21  Tom Tromey  <tom@tromey.com>
8921
8922         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8923         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8924         constructor.
8925
8926 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8927
8928         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8929         instance to...
8930         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8931         * objfiles.c (get_objfile_bfd_data): Allocate
8932         objfile_per_bfd_storage with obstack_new when allocating on
8933         obstack.
8934
8935 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8936
8937         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8938         OBSTACK_ZALLOC.
8939         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8940         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8941         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8942         (add_pending): Likewise.
8943         (parse_symbol): Likewise.
8944         (parse_partial_symbols): Likewise.
8945         (psymtab_to_symtab_1): Likewise.
8946         (new_psymtab): Likewise.
8947         (elfmdebug_build_psymtabs): Likewise.
8948         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8949         * objfiles.c (get_objfile_bfd_data): Likewise.
8950         (objfile_register_static_link): Likewise.
8951         * psymtab.c (allocate_psymtab): Likewise.
8952         * stabsread.c (read_member_functions): Likewise.
8953         * xcoffread.c (xcoff_end_psymtab): Likewise.
8954
8955 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8956
8957         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8958         compiler supports std::is_trivially_constructible.
8959         * common/poison.h: Include obstack.h.
8960         (IsMallocable): Define to is_trivially_constructible if the
8961         compiler supports it, define to true_type otherwise.
8962         (xobnew): New.
8963         (XOBNEW): Redefine.
8964         (xobnewvec): New.
8965         (XOBNEWVEC): Redefine.
8966         * gdb_obstack.h (obstack_zalloc): New.
8967         (OBSTACK_ZALLOC): Redefine.
8968         (obstack_calloc): New.
8969         (OBSTACK_CALLOC): Redefine.
8970         (obstack_new): New.
8971         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8972         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8973         gdbarch.c.
8974         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8975         obstack_calloc/obstack_zalloc.
8976         (gdbarch_obstack_zalloc): Remove.
8977         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8978
8979 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8980
8981         * stack.c (backtrace_command_1): Remove useless variable int i.
8982
8983 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8984
8985         * stack.c (print_frame_info): Fix comment.
8986
8987 2018-05-18  Tom Tromey  <tom@tromey.com>
8988
8989         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8990         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8991         (~dwarf2_per_objfile): Update
8992         (dwarf2_get_dwz_file): Use new.
8993         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8994         unique_ptr.
8995
8996 2018-05-18  Tom Tromey  <tom@tromey.com>
8997
8998         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8999         unique_ptr.
9000         * dwarf2read.c (struct dwp_file): Add constructor and
9001         initializers.
9002         (open_and_init_dwp_file): Return a unique_ptr.
9003         (dwarf2_per_objfile, create_dwp_hash_table)
9004         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9005         (lookup_dwo_unit_in_dwp): Update.
9006         (open_and_init_dwp_file, get_dwp_file): Update.
9007
9008 2018-05-18  Tom Tromey  <tom@tromey.com>
9009
9010         * dwarf2read.c (dwarf2_per_objfile): Update.
9011         (struct mapped_index): Add initializers.
9012         (dwarf2_read_index): Use new.
9013         (dw2_symtab_iter_init): Update.
9014         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9015         unique_ptr.
9016
9017 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9018
9019         * dwarf2read.c (mapped_index) <total_size>: Remove.
9020
9021 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9022
9023         * unittests/format_pieces-selftests.c (test_format_specifier):
9024         Add ARI comments.
9025
9026 2018-05-18  Tom Tromey  <tom@tromey.com>
9027
9028         * c-typeprint.c (maybe_print_hole): New function.
9029         (c_print_type_struct_field_offset): Update.
9030         (c_type_print_base_struct_union): Call maybe_print_hole.
9031
9032 2018-05-17  Keith Seitz  <keiths@redhat.com>
9033
9034         * breakpoint.c (build_bpstat_chain): New function, moved from
9035         bpstat_stop_status.
9036         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9037         If no stop chain is passed, call build_bpstat_chain to build it.
9038         * breakpoint.h (build_bpstat_chain): Declare.
9039         (bpstat_stop_status): Move documentation here from breakpoint.c.
9040         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9041         build the stop chain and pass it to skip_inline_frames.
9042         Pass this stop chain to bpstat_stop_status.
9043         * inline-frame.c: Include breakpoint.h.
9044         (stopped_by_user_bp_inline_frame): New function.
9045         (skip_inline_frames): Add parameter `stop_chain'.
9046         Move documention to inline-frame.h.
9047         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9048         whether the frame should be elided.
9049         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9050         Add moved documentation and update for new parameter.
9051
9052 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9053
9054         PR cli/14975
9055         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9056         unittests/format_pieces-selftests.c.
9057         * common/format.h (format_piece) <operator==>: New.
9058         (format_pieces) <operator[]>: Remove.
9059         * common/format.c (format_pieces::format_pieces): Handle \e.
9060         * unittests/format_pieces-selftests.c: New.
9061
9062 2018-05-17  Tom Tromey  <tom@tromey.com>
9063
9064         PR symtab/23010:
9065         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9066         (dw2_instantiate_symtab): Add skip_partial parameter.
9067         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9068         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9069         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9070         (dw2_expand_symtabs_matching_one)
9071         (dw2_find_pc_sect_compunit_symtab)
9072         (dw2_debug_names_lookup_symbol)
9073         (dw2_debug_names_expand_symtabs_for_function): Update.
9074         (init_cutu_and_read_dies): Add skip_partial parameter.
9075         (process_psymtab_comp_unit, build_type_psymtabs_1)
9076         (process_skeletonless_type_unit, load_partial_comp_unit)
9077         (psymtab_to_symtab_1): Update.
9078         (load_full_comp_unit): Add skip_partial parameter.
9079         (process_imported_unit_die, dwarf2_read_addr_index)
9080         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9081         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9082         (read_signatured_type): Update.
9083
9084 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9085
9086         * value.c (release_value): Remove unused variable.
9087         (record_latest_value): Likewise.
9088         (access_value_history): Likewise.
9089         (preserve_values): Likewise.
9090
9091 2018-05-17  Tom Tromey  <tom@tromey.com>
9092
9093         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9094         Initialize.
9095
9096 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9097
9098         PR gdb/22286
9099         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9100         Also handle registers whose width is not a multiple of
9101         PTRACE_TYPE_RET.
9102         (linux_nat_trad_target::store_register): Likewise.
9103
9104 2018-05-16  Tom Tromey  <tom@tromey.com>
9105
9106         * gdbcore.h (core_bfd): Redefine.
9107         * corelow.c (core_target::close): Update.
9108         (core_target_open): Update.
9109         * progspace.h (struct program_space) <cbfd>: Now a
9110         gdb_bfd_ref_ptr.
9111
9112 2018-05-16  Tom Tromey  <tom@tromey.com>
9113
9114         PR cli/19551:
9115         * symfile-add-flags.h (enum symfile_add_flags)
9116         <SYMFILE_NOT_FILENAME>: New constant.
9117         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9118         objfile name from BFD.
9119         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9120         * minidebug.c (find_separate_debug_file_in_section): Put
9121         ".gnu_debugdata" into BFD's file name.
9122
9123 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9124
9125         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9126         Remove.
9127
9128 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9129
9130         PR binutils/21446
9131         * aarch64-tdep.c (aarch64_analyze_prologue,
9132         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9133         Indicate not interested in errors.
9134
9135 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9136
9137         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9138         Supply the MIPS_ZERO_REGNUM register.
9139
9140 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9141
9142         * mips-tdep.c (mask_address_var): Make variable static.
9143
9144 2018-05-14  Tom Tromey  <tom@tromey.com>
9145
9146         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9147
9148 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9149
9150         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9151         FXSAVE_ADDR for the mxcsr register.
9152
9153 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9154
9155         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9156
9157 2018-05-11  Pedro Alves  <palves@redhat.com>
9158
9159         * corelow.c (core_target) <core_target>: No longer inline.
9160         Initialize m_core_gdbarch, m_core_vec and build the section table
9161         here.
9162         <~core_target>: New.
9163         <core_gdbarch, get_core_register_section>: New methods.
9164         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9165         factored out from ...
9166         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9167         (core_ops): Delete.
9168         (sniff_core_bfd): Add gdbarch parameter.
9169         (core_close): Delete, merged into ...
9170         (core_target::close): ... here.  Delete self.
9171         (core_close_cleanup): Delete.
9172         (core_target_open): Allocate a core_target on the heap.  Use a
9173         unique_ptr instead of a cleanup.  Bits moved into the core_target
9174         ctor.  Adjust to use core_target methods instead of globals.
9175         (get_core_register_section): Rename to ...
9176         (core_target::get_core_register_section): ... this and adjust.
9177         (struct get_core_registers_cb_data): New.
9178         (get_core_registers_cb): Use it.  Use bool.
9179         (core_target::fetch_registers, core_target::files_info)
9180         (core_target::xfer_partial, core_target::read_description)
9181         (core_target::pid_to, core_target::thread_name): Adjust to
9182         reference class fields instead of globals.
9183         * target.h (struct target_ops_deleter, target_ops_up): New.
9184
9185 2018-05-11  Pedro Alves  <palves@redhat.com>
9186
9187         * corefile.c (core_file_command): Move to corelow.c.
9188         * corelow.c (the_core_target): Delete.
9189         (core_file_command): Moved from corefile.c.  Check exec_bfd
9190         instead of the_core_target.  Use target_detach instead of calling
9191         into the_core_target directly.
9192         (maybe_say_no_core_file_now): New.
9193         (core_target::detach): Use it.
9194         (_initialize_corelow): Remove references to the_core_target.
9195         * gdbcore.h (the_core_target): Delete.
9196
9197 2018-05-11  Tom Tromey  <tromey@redhat.com>
9198             Pedro Alves  <palves@redhat.com>
9199
9200         * corefile.c (core_bfd): Remove.
9201         * gdbcore.h (core_bfd): Now a macro.
9202         * progspace.h (struct program_space) <cbfd>: New field.
9203
9204 2018-05-11  Tom Tromey  <tom@tromey.com>
9205
9206         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9207         gdb::def_vector.
9208
9209 2018-05-10  Tom Tromey  <tom@tromey.com>
9210
9211         * configure: Rebuild.
9212         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9213
9214 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9215
9216         PR server/23158:
9217         * regformats/regdat.sh: Adjust script, following the addition
9218         of the new expedite_regs parameter to init_target_desc.
9219
9220 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9221     
9222         PR gdb/23127
9223         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9224         set_gdbarch_significant_addr_bit.
9225         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9226         set_gdbarch_significant_addr_bit.
9227         * utils.c (address_significant): Update to sign extend addr.
9228
9229 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9230
9231         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9232         (xtensa_linux_init_abi): Limit tdep->num_regs by
9233         tdep->num_nopriv_regs.
9234         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9235         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9236         not initialized.
9237
9238 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9239
9240         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9241
9242 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9243
9244         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9245         (I387_MXCSR_INIT_VAL): New constant.
9246         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9247         buffer if it was supplied by the inferior.
9248         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9249         (i387_xsave_get_clear_bv): New function.
9250         (i387_supply_xsave): Only read x87 control registers from the
9251         xsave buffer if the feature is enabled, and the state will have
9252         been written, otherwise, provide a suitable default.
9253         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9254         including x87 control registers.  Update control registers if they
9255         have changed from the default value, and mark features as enabled
9256         as required.
9257         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9258
9259 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9260
9261         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9262
9263 2018-05-07  Tom Tromey  <tom@tromey.com>
9264
9265         * configure: Rebuild.
9266         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9267
9268 2018-05-07  Tom Tromey  <tom@tromey.com>
9269
9270         PR tdep/20362:
9271         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9272         bit.  Use correct value for VDIV.
9273
9274 2018-05-04  Tom Tromey  <tom@tromey.com>
9275
9276         * configure: Rebuild.
9277         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9278
9279 2018-05-04  Tom Tromey  <tom@tromey.com>
9280
9281         * linux-record.c (record_linux_system_call) <case
9282         RECORD_SYS_RECVFROM>: Add "break".
9283
9284 2018-05-04  Tom Tromey  <tom@tromey.com>
9285
9286         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9287         Add missing "break".
9288         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9289         Add missing "break".
9290
9291 2018-05-04  Tom Tromey  <tom@tromey.com>
9292
9293         * rs6000-tdep.c (ppc_process_record_op4)
9294         (ppc_process_record_op63): Add fall-through comment.
9295
9296 2018-05-04  Tom Tromey  <tom@tromey.com>
9297
9298         * i386-tdep.c (i386_process_record): Add fall-through comment.
9299
9300 2018-05-04  Tom Tromey  <tom@tromey.com>
9301
9302         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9303         comment.
9304
9305 2018-05-04  Tom Tromey  <tom@tromey.com>
9306
9307         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9308         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9309         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9310         comment.
9311         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9312         comment.
9313         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9314         comment.
9315
9316 2018-05-04  Tom Tromey  <tom@tromey.com>
9317
9318         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9319
9320 2018-05-04  Tom Tromey  <tom@tromey.com>
9321
9322         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9323         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9324         * symfile.c (section_is_mapped): Fix fall-through comment.
9325         * stabsread.c (define_symbol, read_member_functions): Fix
9326         fall-through comment.
9327         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9328         comment.
9329         * remote.c (remote_wait_as): Fix fall-through comment.
9330         * p-exp.y (yylex): Fix fall-through comment.
9331         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9332         comment.
9333         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9334         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9335         * jv-exp.y (yylex): Fix fall-through comment.
9336         * go-exp.y (lex_one_token): Fix fall-through comment.
9337         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9338         fall-through comment.
9339         * f-exp.y (yylex): Fix fall-through comment.
9340         * dwarf2read.c (process_die): Fix fall-through comments.
9341         * dbxread.c (process_one_symbol): Fix fall-through comment.
9342         * d-exp.y (lex_one_token): Fix fall-through comment.
9343         * cp-name-parser.y (yylex): Fix fall-through comment.
9344         * coffread.c (coff_symtab_read): Fix fall-through comment.
9345         * c-exp.y (lex_one_token): Fix fall-through comment.
9346         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9347         comment.
9348         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9349         comment.
9350
9351 2018-05-04  Tom Tromey  <tom@tromey.com>
9352
9353         PR python/22730:
9354         * NEWS: Mention gdb.execute change.
9355         * gdbcmd.h (execute_control_command): Don't declare.
9356         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9357         execute_control_commands, execute_control_commands_to_string.
9358         * cli/cli-script.h (execute_control_commands)
9359         (execute_control_commands_to_string): Declare.
9360         (execute_control_command): Add from_tty parameter.
9361         * cli/cli-script.c (execute_control_commands)
9362         (execute_control_commands_to_string): New functions.
9363         (execute_user_command): Use execute_control_commands.
9364         (execute_control_command_1): Add "from_tty" parameter.  Update.
9365         (execute_control_command): Likewise.
9366
9367 2018-05-04  Tom Tromey  <tom@tromey.com>
9368
9369         PR python/22731:
9370         * NEWS: Mention that breakpoint commands are writable.
9371         * python/py-breakpoint.c (bppy_set_commands): New function.
9372         (breakpoint_object_getset) <"commands">: Use it.
9373
9374 2018-05-04  Tom Tromey  <tom@tromey.com>
9375
9376         * tracepoint.c (actions_command): Update.
9377         * mi/mi-cmd-break.c (mi_command_line_array)
9378         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9379         (mi_read_next_line): Remove.
9380         (mi_cmd_break_commands): Update.
9381         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9382         function_view.
9383         * cli/cli-script.c (get_command_line): Update.
9384         (process_next_line): Use function_view.  Constify.
9385         (recurse_read_control_structure, read_command_lines)
9386         (read_command_lines_1): Change argument types to function_view.
9387         (do_define_command, document_command): Update.
9388         * breakpoint.h (check_tracepoint_command): Don't declare.
9389         * breakpoint.c (check_tracepoint_command): Remove.
9390         (commands_command_1, create_tracepoint_from_upload): Update.
9391
9392 2018-05-04  Tom Tromey  <tom@tromey.com>
9393
9394         PR gdb/11750:
9395         * cli/cli-script.h (enum command_control_type) <define_control>:
9396         New constant.
9397         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9398         (build_command_line, execute_control_command_1)
9399         (process_next_line): Likewise.
9400         (do_define_command): New function, extracted from define_command.
9401         (define_command): Use it.
9402
9403 2018-05-04  Tom Tromey  <tom@tromey.com>
9404
9405         * tracepoint.c (actions_command): Update.
9406         * cli/cli-script.h (read_command_lines): Update.
9407         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9408         (MAX_TMPBUF): Remove define.
9409         (define_command): Use string_printf.
9410         (document_command): Likewise.
9411         * breakpoint.c (commands_command_1): Update.
9412
9413 2018-05-04  Tom Tromey  <tom@tromey.com>
9414
9415         * top.c (execute_command): Update.
9416         * cli/cli-script.h (print_command_lines): Now varargs.
9417         * cli/cli-script.c (print_command_lines): Now varargs.
9418         (execute_control_command_1) <case while_control, case if_control>:
9419         Update.
9420
9421 2018-05-04  Tom Tromey  <tom@tromey.com>
9422
9423         * tracepoint.c (all_tracepoint_actions): Rename from
9424         all_tracepoint_actions_and_cleanup.  Change return type.
9425         (actions_command, encode_actions_1, encode_actions)
9426         (trace_dump_actions, tdump_command): Update.
9427         * remote.c (remote_download_command_source): Update.
9428         * python/python.c (gdbpy_eval_from_control_command)
9429         (python_command, python_interactive_command): Update.
9430         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9431         * guile/guile.c (guile_command)
9432         (gdbscm_eval_from_control_command, guile_command): Update.
9433         * compile/compile.c (compile_code_command)
9434         (compile_print_command, compile_to_object): Update.
9435         * cli/cli-script.h (struct command_lines_deleter): New.
9436         (counted_command_line): New typedef.
9437         (struct command_line): Add constructor, destructor.
9438         <body_list>: Remove.
9439         <body_list_0, body_list_1>: New members.
9440         (command_line_up): Remove typedef.
9441         (read_command_lines, read_command_lines_1, get_command_line):
9442         Update.
9443         (copy_command_lines): Don't declare.
9444         * cli/cli-script.c (build_command_line): Use "new".
9445         (get_command_line): Return counted_command_line.
9446         (print_command_lines, execute_user_command)
9447         (execute_control_command_1, while_command, if_command): Update.
9448         (realloc_body_list): Remove.
9449         (process_next_line, recurse_read_control_structure): Update.
9450         (read_command_lines, read_command_lines_1): Return counted_command_line.
9451         (free_command_lines): Use "delete".
9452         (copy_command_lines): Remove.
9453         (define_command, document_command, show_user_1): Update.
9454         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9455         a counted_command_line.
9456         * breakpoint.h (counted_command_line): Remove typedef.
9457         (breakpoint_set_commands): Update.
9458         * breakpoint.c (check_no_tracepoint_commands)
9459         (validate_commands_for_breakpoint): Update.
9460         (breakpoint_set_commands): Change commands to be a
9461         counted_command_line.
9462         (commands_command_1, update_dprintf_command_list)
9463         (create_tracepoint_from_upload): Update.
9464
9465 2018-05-04  Tom Tromey  <tom@tromey.com>
9466
9467         * cli/cli-decode.h (cmd_list_element): New constructor.
9468         (~cmd_list_element): New destructor.
9469         (struct cmd_list_element): Add initializers.
9470         * cli/cli-decode.c (do_add_cmd): Use "new".
9471         (delete_cmd): Use "delete".
9472
9473 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9474             Pedro Alves <palves@redhat.com>
9475
9476         PR breakpoints/19806 and support for PR external/20207.
9477         * NEWS: Mention Aarch64 watchpoint improvements.
9478         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9479         watchpoints and PR external/20207 watchpoints.
9480         * nat/aarch64-linux-hw-point.c
9481         (kernel_supports_any_contiguous_range): New.
9482         (aarch64_watchpoint_offset): New.
9483         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9484         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9485         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9486         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9487         next_addr_orig_p.  Support PR external/20207 watchpoints.
9488         (aarch64_downgrade_regs): New.
9489         (aarch64_dr_state_insert_one_point): New parameters offset and
9490         addr_orig.
9491         (aarch64_dr_state_remove_one_point): Likewise.
9492         (aarch64_handle_breakpoint): Update caller.
9493         (aarch64_handle_aligned_watchpoint): Likewise.
9494         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9495         aligned_offset.
9496         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9497         aarch64_downgrade_regs.
9498         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9499         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9500         (DR_CONTROL_MASK): ... this.
9501         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9502         (unsigned int aarch64_watchpoint_offset): New prototype.
9503         (aarch64_linux_set_debug_regs): Remove const from state.
9504         * utils.c (align_up, align_down): Move to ...
9505         * common/common-utils.c (align_up, align_down): ... here.
9506         * utils.h (align_up, align_down): Move to ...
9507         * common/common-utils.h (align_up, align_down): ... here.
9508
9509 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9510
9511         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9512         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9513         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9514         Re-implement to match the ABI as summarized in GCC's
9515         gcc/config/sparc/sparc.c.  All callers updated.
9516         (sparc32_store_arguments): Remove assertion.
9517
9518 2018-05-04  Tom Tromey  <tom@tromey.com>
9519
9520         * printcmd.c: Don't include tui.h.
9521         (decode_format): Use skip_spaces.
9522
9523 2018-05-04  Tom Tromey  <tom@tromey.com>
9524
9525         PR gdb/22619:
9526         * printcmd.c (last_count): New global.
9527         (x_command): Use saved count when repeating.
9528
9529 2018-05-04  Tom Tromey  <tom@tromey.com>
9530
9531         * nto-procfs.c (do_closedir_cleanup): Remove.
9532         (procfs_pidlist): Use gdb_dir_up.
9533         * procfs.c (do_closedir_cleanup): Remove.
9534         (proc_update_threads): Use gdb_dir_up.
9535         * common/filestuff.h (struct gdb_dir_deleter): New.
9536         (gdb_dir_up): New typedef.
9537
9538 2018-05-04  Tom Tromey  <tom@tromey.com>
9539
9540         * ada-lang.c (print_mention_exception): Use std::string.
9541
9542 2018-05-04  Tom Tromey  <tom@tromey.com>
9543
9544         * ada-lang.c (create_excep_cond_exprs): Update.
9545         (ada_exception_catchpoint_cond_string): Use std::string.
9546
9547 2018-05-04  Tom Tromey  <tom@tromey.com>
9548
9549         * ada-lang.c (xget_renaming_scope): Return std::string.
9550         (old_renaming_is_invisible): Update.
9551
9552 2018-05-04  Tom Tromey  <tom@tromey.com>
9553
9554         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9555         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9556
9557 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9558
9559         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9560
9561 2018-05-04  Tom Tromey  <tom@tromey.com>
9562
9563         * remote.c (remote_query_supported_append): Change type.
9564         (remote_check_symbols): Update.
9565
9566 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9567
9568         PR gdb/11420
9569         * configure.ac: Prepend libpython.
9570         * python/python-config.py: Likewise.
9571         * configure: Regenerate.
9572
9573 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9574
9575         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9576
9577 2018-05-03  Pedro Alves  <palves@redhat.com>
9578
9579         * s390-linux-nat.c
9580         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9581         override.  Write 'true' instead of '1'.
9582         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9583         declaration.
9584
9585 2018-05-02  Pedro Alves  <palves@redhat.com>
9586
9587         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9588         add_inf_child_target.
9589         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9590         add_inf_child_target.
9591         * aix-thread.c (aix_thread_target_info): New.
9592         (aix_thread_target) <shortname, longname, doc>: Delete.
9593         <info>: New.
9594         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9595         add_inf_child_target.
9596         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9597         add_inf_child_target.
9598         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9599         add_inf_child_target.
9600         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9601         add_inf_child_target.
9602         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9603         add_inf_child_target.
9604         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9605         add_inf_child_target.
9606         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9607         add_inf_child_target.
9608         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9609         add_inf_child_target.
9610         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9611         add_inf_child_target.
9612         * bfd-target.c (target_bfd_target_info): New.
9613         (target_bfd) <shortname, longname, doc>: Delete.
9614         <info>: New.
9615         * bsd-kvm.c (bsd_kvm_target_info): New.
9616         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9617         <info>: New.
9618         (bsd_kvm_target::open): Rename to ...
9619         (bsd_kvm_target_open): ... this.  Adjust.
9620         * bsd-uthread.c (bsd_uthread_target_info): New.
9621         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9622         <info>: New.
9623         * corefile.c (core_file_command): Adjust.
9624         * corelow.c (core_target_info): New.
9625         (core_target) <shortname, longname, doc>: Delete.
9626         <info>: New.
9627         (core_target::open): Rename to ...
9628         (core_target_open): ... this.  Adjust.
9629         * ctf.c (ctf_target_info): New.
9630         (ctf_target) <shortname, longname, doc>: Delete.
9631         <info>: New.
9632         (ctf_target::open): Rename to ...
9633         (ctf_target_open): ... this.
9634         (_initialize_ctf): Adjust.
9635         * exec.c (exec_target_info): New.
9636         (exec_target) <shortname, longname, doc>: Delete.
9637         <info>: New.
9638         (exec_target::open): Rename to ...
9639         (exec_target_open): ... this.
9640         * gdbcore.h (core_target_open): Declare.
9641         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9642         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9643         add_inf_child_target.
9644         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9645         add_inf_child_target.
9646         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9647         add_inf_child_target.
9648         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9649         add_inf_child_target.
9650         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9651         add_inf_child_target.
9652         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9653         add_inf_child_target.
9654         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9655         add_inf_child_target.
9656         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9657         add_inf_child_target.
9658         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9659         add_inf_child_target.
9660         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9661         add_inf_child_target.
9662         * inf-child.c (inf_child_target_info): New.
9663         (inf_child_target::info): New.
9664         (inf_child_open_target): Remove 'target' parameter.  Use
9665         get_native_target instead.
9666         (inf_child_target::open): Delete.
9667         (add_inf_child_target): New.
9668         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9669         Delete.
9670         <info>: New.
9671         (add_inf_child_target): Declare.
9672         (inf_child_open_target): Declare.
9673         * linux-thread-db.c (thread_db_target_info): New.
9674         (thread_db_target) <shortname, longname, doc>: Delete.
9675         <info>: New.
9676         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9677         add_inf_child_target.
9678         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9679         add_inf_child_target.
9680         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9681         add_inf_child_target.
9682         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9683         add_inf_child_target.
9684         * make-target-delegates (print_class): Adjust.
9685         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9686         add_inf_child_target.
9687         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9688         add_inf_child_target.
9689         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9690         add_inf_child_target.
9691         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9692         add_inf_child_target.
9693         * nto-procfs.c (nto_native_target_info): New.
9694         (nto_procfs_target_native) <shortname, longname, doc>:
9695         Delete.
9696         <info>: New.
9697         (nto_procfs_target_info): New.
9698         (nto_procfs_target_procfs) <shortname, longname, doc>:
9699         Delete.
9700         <info>: New.
9701         (init_procfs_targets): Adjust.
9702         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9703         add_inf_child_target.
9704         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9705         add_inf_child_target.
9706         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9707         add_inf_child_target.
9708         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9709         add_inf_child_target.
9710         * ravenscar-thread.c (ravenscar_target_info): New.
9711         (ravenscar_thread_target) <shortname, longname, doc>:
9712         Delete.
9713         <info>: New.
9714         * record-btrace.c (record_btrace_target_info):
9715         (record_btrace_target) <shortname, longname, doc>: Delete.
9716         <info>: New.
9717         (record_btrace_target::open): Rename to ...
9718         (record_btrace_target_open): ... this.  Adjust.
9719         * record-full.c (record_longname, record_doc): New.
9720         (record_full_base_target) <shortname, longname, doc>: Delete.
9721         <info>: New.
9722         (record_full_target_info): New.
9723         (record_full_target): <shortname>: Delete.
9724         <info>: New.
9725         (record_full_core_open_1, record_full_open_1): Update comments.
9726         (record_full_base_target::open): Rename to ...
9727         (record_full_open): ... this.
9728         (cmd_record_full_restore): Update.
9729         (_initialize_record_full): Update.
9730         * remote-sim.c (remote_sim_target_info): New.
9731         (gdbsim_target) <shortname, longname, doc>: Delete.
9732         <info>: New.
9733         (gdbsim_target::open): Rename to ...
9734         (gdbsim_target_open): ... this.
9735         (_initialize_remote_sim): Adjust.
9736         * remote.c (remote_doc): New.
9737         (remote_target_info): New.
9738         (remote_target) <shortname, longname, doc>: Delete.
9739         <info>: New.
9740         (extended_remote_target_info): New.
9741         (extended_remote_target) <shortname, longname, doc>: Delete.
9742         <info>: New.
9743         (remote_target::open_1): Make static.  Adjust.
9744         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9745         * s390-linux-nat.c (_initialize_s390_nat): Use
9746         add_inf_child_target.
9747         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9748         add_inf_child_target.
9749         * sol-thread.c (thread_db_target_info): New.
9750         (sol_thread_target) <shortname, longname, doc>: Delete.
9751         <info>: New.
9752         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9753         add_inf_child_target.
9754         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9755         add_inf_child_target.
9756         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9757         add_inf_child_target.
9758         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9759         add_inf_child_target.
9760         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9761         add_inf_child_target.
9762         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9763         add_inf_child_target.
9764         * spu-linux-nat.c (_initialize_spu_nat): Use
9765         add_inf_child_target.
9766         * spu-multiarch.c (spu_multiarch_target_info): New.
9767         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9768         <info>: New.
9769         * target-delegates.c: Regenerate.
9770         * target.c: Include <unordered_map>.
9771         (target_ops_p): Delete.
9772         (DEF_VEC_P(target_ops_p)): Delete.
9773         (target_factories): New.
9774         (test_target_info): New.
9775         (test_target_ops::info): New.
9776         (open_target): Adjust to use target_factories.
9777         (add_target_with_completer): Rename to ...
9778         (add_target): ... this.  Change prototype.  Register target_info
9779         and open callback in target_factories.  Register target_info in
9780         command context instead of target_ops.
9781         (add_target): Delete old implementation.
9782         (add_deprecated_target_alias): Change prototype.  Adjust.
9783         (the_native_target): New.
9784         (set_native_target, get_native_target): New.
9785         (find_default_run_target): Use the_native_target.
9786         (find_attach_target, find_run_target): Simplify.
9787         (target_ops::open): Delete.
9788         (dummy_target_info): New.
9789         (dummy_target::shortname, dummy_target::longname)
9790         (dummy_target::doc): Delete.
9791         (dummy_target::info): New.
9792         (debug_target::shortname, debug_target::longname)
9793         (debug_target::doc): Delete.
9794         (debug_target::info): New.
9795         * target.h (struct target_info): New.
9796         (target_ops::~target_ops): Add comment.
9797         (target_ops::info): New.
9798         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9799         longer virtual.  Implement in terms of target_info.
9800         (set_native_target, get_native_target): Declare.
9801         (target_open_ftype): New.
9802         (add_target, add_target_with_completer)
9803         (add_deprecated_target_alias): Change prototype.
9804         (test_target) <shortname, longname, doc>: Delete.
9805         <info>: New.
9806         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9807         add_inf_child_target.
9808         * tracefile-tfile.c (tfile_target_info): New.
9809         (tfile_target) <shortname, longname, doc>: Delete.
9810         <info>: New.
9811         (tfile_target::open): Rename to ...
9812         (tfile_target_open): ... this.
9813         (_initialize_tracefile_tfile): Adjust.
9814         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9815         add_inf_child_target.
9816         * windows-nat.c (_initialize_windows_nat): Use
9817         add_inf_child_target.
9818         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9819         add_inf_child_target.
9820
9821 2018-05-02  Pedro Alves  <palves@redhat.com>
9822
9823         * linux-nat.h (linux_nat_target) <low_new_thread,
9824         low_delete_thread, low_new_fork, low_forget_process,
9825         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9826         New virtual methods.
9827         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9828         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9829         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9830         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9831         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9832         Delete.
9833         * linux-fork.c (delete_fork): Adjust to call low method.
9834         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9835         (linux_nat_new_fork, linux_nat_forget_process_hook)
9836         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9837         (linux_nat_status_is_event):
9838         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9839         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9840         to call low method.
9841         (sigtrap_is_event): Rename to ...
9842         (linux_nat_target::low_status_is_event): ... this.
9843         (linux_nat_set_status_is_event): Delete.
9844         (save_stop_reason, linux_nat_wait_1)
9845         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9846         low methods.
9847         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9848         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9849         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9850         (linux_nat_set_prepare_to_resume): Delete.
9851         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9852         low virtual methods.
9853         * amd64-linux-nat.c: Likewise.
9854         * arm-linux-nat.c: Likewise.
9855         * i386-linux-nat.c: Likewise.
9856         * ia64-linux-nat.c: Likewise.
9857         * mips-linux-nat.c: Likewise.
9858         * ppc-linux-nat.c: Likewise.
9859         * s390-linux-nat.c: Likewise.
9860         * sparc64-linux-nat.c: Likewise.
9861         * x86-linux-nat.c: Likewise.
9862         * x86-linux-nat.h: Include "nat/x86-linux.h".
9863         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9864         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9865         Override methods.
9866
9867 2018-05-02  Pedro Alves  <palves@redhat.com>
9868
9869         * target.h (target_ops)
9870         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9871         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9872         stopped_by_watchpoint, have_continuable_watchpoint,
9873         stopped_data_address, watchpoint_addr_within_range,
9874         can_accel_watchpoint_condition, can_run, thread_alive,
9875         has_all_memory, has_memory, has_stack, has_registers,
9876         has_execution, can_async_p, is_async_p, supports_non_stop,
9877         always_non_stop_p, can_execute_reverse, supports_multi_process,
9878         supports_enable_disable_tracepoint,
9879         supports_disable_randomization, supports_string_tracing,
9880         supports_evaluation_of_breakpoint_conditions,
9881         can_run_breakpoint_commands, filesystem_is_local,
9882         can_download_tracepoint, get_trace_state_variable_value,
9883         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9884         record_is_replaying, record_will_replay,
9885         augmented_libraries_svr4_read>: Adjust to return bool.
9886         * aarch64-linux-nat.c: All implementations adjusted.
9887         * aix-thread.c: All implementations adjusted.
9888         * arm-linux-nat.c: All implementations adjusted.
9889         * breakpoint.c: All implementations adjusted.
9890         * bsd-kvm.c: All implementations adjusted.
9891         * bsd-uthread.c: All implementations adjusted.
9892         * corelow.c: All implementations adjusted.
9893         * ctf.c: All implementations adjusted.
9894         * darwin-nat.c: All implementations adjusted.
9895         * darwin-nat.h: All implementations adjusted.
9896         * exec.c: All implementations adjusted.
9897         * fbsd-nat.c: All implementations adjusted.
9898         * fbsd-nat.h: All implementations adjusted.
9899         * gnu-nat.c: All implementations adjusted.
9900         * gnu-nat.h: All implementations adjusted.
9901         * go32-nat.c: All implementations adjusted.
9902         * ia64-linux-nat.c: All implementations adjusted.
9903         * inf-child.c: All implementations adjusted.
9904         * inf-child.h: All implementations adjusted.
9905         * inf-ptrace.c: All implementations adjusted.
9906         * inf-ptrace.h: All implementations adjusted.
9907         * linux-nat.c: All implementations adjusted.
9908         * linux-nat.h: All implementations adjusted.
9909         * mips-linux-nat.c: All implementations adjusted.
9910         * nto-procfs.c: All implementations adjusted.
9911         * ppc-linux-nat.c: All implementations adjusted.
9912         * procfs.c: All implementations adjusted.
9913         * ravenscar-thread.c: All implementations adjusted.
9914         * record-btrace.c: All implementations adjusted.
9915         * record-full.c: All implementations adjusted.
9916         * remote-sim.c: All implementations adjusted.
9917         * remote.c: All implementations adjusted.
9918         * s390-linux-nat.c: All implementations adjusted.
9919         * sol-thread.c: All implementations adjusted.
9920         * spu-multiarch.c: All implementations adjusted.
9921         * target-delegates.c: All implementations adjusted.
9922         * target.c: All implementations adjusted.
9923         * target.h: All implementations adjusted.
9924         * tracefile-tfile.c: All implementations adjusted.
9925         * tracefile.c: All implementations adjusted.
9926         * tracefile.h: All implementations adjusted.
9927         * windows-nat.c: All implementations adjusted.
9928         * x86-linux-nat.h: All implementations adjusted.
9929         * x86-nat.h: All implementations adjusted.
9930
9931 2018-05-02  Pedro Alves  <palves@redhat.com>
9932
9933         * make-target-delegates (scan_target_h): Don't trim lines here.
9934         Replace sequences of tabs and/or whitespace with a single
9935         whitespace.
9936         (top level, parsing methods): Trim each line before processing it
9937         here.
9938
9939 2018-05-02  Pedro Alves  <palves@redhat.com>
9940             John Baldwin  <jhb@freebsd.org>
9941
9942         * target.h (enum strata) <debug_stratum>: New.
9943         (struct target_ops) <all delegation methods>: Replace by C++
9944         virtual methods, and drop "to_" prefix.  All references updated
9945         throughout.
9946         <to_shortname, to_longname, to_doc, to_data,
9947         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9948         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9949         virtual methods.  All references updated throughout.
9950         <can_attach, supports_terminal_ours, can_create_inferior,
9951         get_thread_control_capabilities, attach_no_wait>: New
9952         virtual methods.
9953         <insert_breakpoint, remove_breakpoint>: Now
9954         TARGET_DEFAULT_NORETURN methods.
9955         <info_proc>: Now returns bool.
9956         <to_magic>: Delete.
9957         (OPS_MAGIC): Delete.
9958         (current_target): Delete.  All references replaced by references
9959         to ...
9960         (target_stack): ... this.  New.
9961         (target_shortname, target_longname): Adjust.
9962         (target_can_run): Now a function declaration.
9963         (default_child_has_all_memory, default_child_has_memory)
9964         (default_child_has_stack, default_child_has_registers)
9965         (default_child_has_execution): Remove target_ops parameter.
9966         (complete_target_initialization): Delete.
9967         (memory_breakpoint_target): New template class.
9968         (test_target_ops): Refactor as a C++ class with virtual methods.
9969         * make-target-delegates (NAME_PART): Tighten.
9970         (POINTER_PART, CP_SYMBOL): New.
9971         (SIMPLE_RETURN_PART): Reimplement.
9972         (VEC_RETURN_PART): Expect less.
9973         (RETURN_PART, VIRTUAL_PART): New.
9974         (METHOD): Adjust to C++ virtual methods.
9975         (scan_target_h): Remove reference to C99.
9976         (dname): Output "target_ops::" prefix.
9977         (write_function_header): Adjust to output a C++ class method.
9978         (write_declaration): New.
9979         (write_delegator): Adjust to output a C++ class method.
9980         (tdname): Output "dummy_target::" prefix.
9981         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9982         method.
9983         (tdefault_names, debug_names): Delete.
9984         (return_types, tdefaults, styles, argtypes_array): New.
9985         (top level): All methods are delegators.
9986         (print_class): New.
9987         (top level): Print dummy_target and debug_target classes.
9988         * target-delegates.c: Regenerate.
9989         * target-debug.h (target_debug_print_enum_info_proc_what)
9990         (target_debug_print_thread_control_capabilities)
9991         (target_debug_print_thread_info_p): New.
9992         * target.c (dummy_target): Delete.
9993         (the_dummy_target, the_debug_target): New.
9994         (target_stack): Now extern.
9995         (set_targetdebug): Push/unpush debug target.
9996         (default_child_has_all_memory, default_child_has_memory)
9997         (default_child_has_stack, default_child_has_registers)
9998         (default_child_has_execution): Remove target_ops parameter.
9999         (complete_target_initialization): Delete.
10000         (add_target_with_completer): No longer call
10001         complete_target_initialization.
10002         (target_supports_terminal_ours): Use regular delegation.
10003         (update_current_target): Delete.
10004         (push_target): No longer check magic number.  Don't call
10005         update_current_target.
10006         (unpush_target): Don't call update_current_target.
10007         (target_is_pushed): No longer check magic number.
10008         (target_require_runnable): Skip for all stratums over
10009         process_stratum.
10010         (target_ops::info_proc): New.
10011         (target_info_proc): Use find_target_at and
10012         find_default_run_target.
10013         (target_supports_disable_randomization): Use regular delegation.
10014         (target_get_osdata): Use find_target_at.
10015         (target_ops::open, target_ops::close, target_ops::can_attach)
10016         (target_ops::attach, target_ops::can_create_inferior)
10017         (target_ops::create_inferior, target_ops::can_run)
10018         (target_can_run): New.
10019         (default_fileio_target): Use regular delegation.
10020         (target_ops::fileio_open, target_ops::fileio_pwrite)
10021         (target_ops::fileio_pread, target_ops::fileio_fstat)
10022         (target_ops::fileio_close, target_ops::fileio_unlink)
10023         (target_ops::fileio_readlink): New.
10024         (target_fileio_open_1, target_fileio_unlink)
10025         (target_fileio_readlink): Always call the target method.  Handle
10026         FILEIO_ENOSYS.
10027         (return_zero, return_zero_has_execution): Delete.
10028         (init_dummy_target): Delete.
10029         (dummy_target::dummy_target, dummy_target::shortname)
10030         (dummy_target::longname, dummy_target::doc)
10031         (debug_target::debug_target, debug_target::shortname)
10032         (debug_target::longname, debug_target::doc): New.
10033         (target_supports_delete_record): Use regular delegation.
10034         (setup_target_debug): Delete.
10035         (maintenance_print_target_stack): Skip debug_stratum.
10036         (initialize_targets): Instantiate the_dummy_target and
10037         the_debug_target.
10038         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10039         use target_stack.
10040         (target_auxv_search, fprint_target_auxv): Adjust.
10041         (info_auxv_command): Adjust to use target_stack.
10042         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10043         * exceptions.c (print_flush): Handle a NULL target_stack.
10044         * regcache.c (target_ops_no_register): Refactor as class with
10045         virtual methods.
10046
10047         * exec.c (exec_target): New class.
10048         (exec_ops): Now an exec_target.
10049         (exec_open, exec_close_1, exec_get_section_table)
10050         (exec_xfer_partial, exec_files_info, exec_has_memory)
10051         (exec_make_note_section): Refactor as exec_target methods.
10052         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10053         Delete.
10054         (exec_target::find_memory_regions): New.
10055         (_initialize_exec): Don't call init_exec_ops.
10056         * gdbcore.h (exec_file_clear): Delete.
10057
10058         * corefile.c (core_target): Delete.
10059         (core_file_command): Adjust.
10060         * corelow.c (core_target): New class.
10061         (the_core_target): New.
10062         (core_close): Remove target_ops parameter.
10063         (core_close_cleanup): Adjust.
10064         (core_target::close): New.
10065         (core_open, core_detach, get_core_registers, core_files_info)
10066         (core_xfer_partial, core_thread_alive, core_read_description)
10067         (core_pid_to_str, core_thread_name, core_has_memory)
10068         (core_has_stack, core_has_registers, core_info_proc): Rework as
10069         core_target methods.
10070         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10071         (_initialize_corelow): Initialize the_core_target.
10072         * gdbcore.h (core_target): Delete.
10073         (the_core_target): New.
10074
10075         * ctf.c: (ctf_target): New class.
10076         (ctf_ops): Now a ctf_target.
10077         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10078         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10079         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10080         methods.
10081         (init_ctf_ops): Delete.
10082         (_initialize_ctf): Don't call it.
10083         * tracefile-tfile.c (tfile_target): New class.
10084         (tfile_ops): Now a tfile_target.
10085         (tfile_open, tfile_close, tfile_files_info)
10086         (tfile_get_tracepoint_status, tfile_trace_find)
10087         (tfile_fetch_registers, tfile_xfer_partial)
10088         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10089         Refactor as tfile_target methods.
10090         (tfile_xfer_partial_features): Remove target_ops parameter.
10091         (init_tfile_ops): Delete.
10092         (_initialize_tracefile_tfile): Don't call it.
10093         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10094         (tracefile_has_stack, tracefile_has_registers)
10095         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10096         tracefile_target methods.
10097         (init_tracefile_ops): Delete.
10098         (tracefile_target::tracefile_target): New.
10099         * tracefile.h: Include "target.h".
10100         (tracefile_target): New class.
10101         (init_tracefile_ops): Delete.
10102
10103         * spu-multiarch.c (spu_multiarch_target): New class.
10104         (spu_ops): Now a spu_multiarch_target.
10105         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10106         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10107         (spu_search_memory, spu_mourn_inferior): Refactor as
10108         spu_multiarch_target methods.
10109         (init_spu_ops): Delete.
10110         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10111         complete_target_initialization.
10112
10113         * ravenscar-thread.c (ravenscar_thread_target): New class.
10114         (ravenscar_ops): Now a ravenscar_thread_target.
10115         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10116         (ravenscar_thread_alive, ravenscar_pid_to_str)
10117         (ravenscar_fetch_registers, ravenscar_store_registers)
10118         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10119         (ravenscar_stopped_by_hw_breakpoint)
10120         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10121         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10122         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10123         methods.
10124         (init_ravenscar_thread_ops): Delete.
10125         (_initialize_ravenscar): Remove references to
10126         init_ravenscar_thread_ops and complete_target_initialization.
10127
10128         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10129         (bsd_uthread_target): New class.
10130         (bsd_uthread_ops): Now a bsd_uthread_target.
10131         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10132         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10133         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10134         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10135         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10136         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10137         (bsd_uthread_target): Delete function.
10138         (_initialize_bsd_uthread): Remove reference to
10139         complete_target_initialization.
10140
10141         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10142         (target_bfd): ... this new class.
10143         (target_bfd_xfer_partial, target_bfd_get_section_table)
10144         (target_bfd_close): Refactor as target_bfd methods.
10145         (target_bfd::~target_bfd): New.
10146         (target_bfd_reopen): Adjust.
10147         (target_bfd::close): New.
10148
10149         * record-btrace.c (record_btrace_target): New class.
10150         (record_btrace_ops): Now a record_btrace_target.
10151         (record_btrace_open, record_btrace_stop_recording)
10152         (record_btrace_disconnect, record_btrace_close)
10153         (record_btrace_async, record_btrace_info)
10154         (record_btrace_insn_history, record_btrace_insn_history_range)
10155         (record_btrace_insn_history_from, record_btrace_call_history)
10156         (record_btrace_call_history_range)
10157         (record_btrace_call_history_from, record_btrace_record_method)
10158         (record_btrace_is_replaying, record_btrace_will_replay)
10159         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10160         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10161         (record_btrace_store_registers, record_btrace_prepare_to_store)
10162         (record_btrace_to_get_unwinder)
10163         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10164         (record_btrace_commit_resume, record_btrace_wait)
10165         (record_btrace_stop, record_btrace_can_execute_reverse)
10166         (record_btrace_stopped_by_sw_breakpoint)
10167         (record_btrace_supports_stopped_by_sw_breakpoint)
10168         (record_btrace_stopped_by_hw_breakpoint)
10169         (record_btrace_supports_stopped_by_hw_breakpoint)
10170         (record_btrace_update_thread_list, record_btrace_thread_alive)
10171         (record_btrace_goto_begin, record_btrace_goto_end)
10172         (record_btrace_goto, record_btrace_stop_replaying_all)
10173         (record_btrace_execution_direction)
10174         (record_btrace_prepare_to_generate_core)
10175         (record_btrace_done_generating_core): Refactor as
10176         record_btrace_target methods.
10177         (init_record_btrace_ops): Delete.
10178         (_initialize_record_btrace): Remove reference to
10179         init_record_btrace_ops.
10180         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10181         the execution_direction global.
10182         (record_full_base_target, record_full_target)
10183         (record_full_core_target): New classes.
10184         (record_full_ops): Now a record_full_target.
10185         (record_full_core_ops): Now a record_full_core_target.
10186         (record_full_target::detach, record_full_target::disconnect)
10187         (record_full_core_target::disconnect)
10188         (record_full_target::mourn_inferior, record_full_target::kill):
10189         New.
10190         (record_full_open, record_full_close, record_full_async): Refactor
10191         as methods of the record_full_base_target class.
10192         (record_full_resume, record_full_commit_resume): Refactor
10193         as methods of the record_full_target class.
10194         (record_full_wait, record_full_stopped_by_watchpoint)
10195         (record_full_stopped_data_address)
10196         (record_full_stopped_by_sw_breakpoint)
10197         (record_full_supports_stopped_by_sw_breakpoint)
10198         (record_full_stopped_by_hw_breakpoint)
10199         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10200         methods of the record_full_base_target class.
10201         (record_full_store_registers, record_full_xfer_partial)
10202         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10203         Refactor as methods of the record_full_target class.
10204         (record_full_can_execute_reverse, record_full_get_bookmark)
10205         (record_full_goto_bookmark, record_full_execution_direction)
10206         (record_full_record_method, record_full_info, record_full_delete)
10207         (record_full_is_replaying, record_full_will_replay)
10208         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10209         (record_full_stop_replaying): Refactor as methods of the
10210         record_full_base_target class.
10211         (record_full_core_resume, record_full_core_kill)
10212         (record_full_core_fetch_registers)
10213         (record_full_core_prepare_to_store)
10214         (record_full_core_store_registers, record_full_core_xfer_partial)
10215         (record_full_core_insert_breakpoint)
10216         (record_full_core_remove_breakpoint)
10217         (record_full_core_has_execution): Refactor
10218         as methods of the record_full_core_target class.
10219         (record_full_base_target::supports_delete_record): New.
10220         (init_record_full_ops): Delete.
10221         (init_record_full_core_ops): Delete.
10222         (record_full_save): Refactor as method of the
10223         record_full_base_target class.
10224         (_initialize_record_full): Remove references to
10225         init_record_full_ops and init_record_full_core_ops.
10226
10227         * remote.c (remote_target, extended_remote_target): New classes.
10228         (remote_ops): Now a remote_target.
10229         (extended_remote_ops): Now an extended_remote_target.
10230         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10231         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10232         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10233         (remote_pass_signals, remote_set_syscall_catchpoint)
10234         (remote_program_signals, )
10235         (remote_thread_always_alive): Remove target_ops parameter.
10236         (remote_thread_alive, remote_thread_name)
10237         (remote_update_thread_list, remote_threads_extra_info)
10238         (remote_static_tracepoint_marker_at)
10239         (remote_static_tracepoint_markers_by_strid)
10240         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10241         (remote_open): Refactor as methods of remote_target.
10242         (extended_remote_open, extended_remote_detach)
10243         (extended_remote_attach, extended_remote_post_attach):
10244         (extended_remote_supports_disable_randomization)
10245         (extended_remote_create_inferior): : Refactor as method of
10246         extended_remote_target.
10247         (remote_set_permissions, remote_open_1, remote_detach)
10248         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10249         (remote_resume, remote_commit_resume, remote_stop)
10250         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10251         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10252         (remote_prepare_to_store, remote_store_registers)
10253         (remote_flash_erase, remote_flash_done, remote_files_info)
10254         (remote_kill, remote_mourn, remote_insert_breakpoint)
10255         (remote_remove_breakpoint, remote_insert_watchpoint)
10256         (remote_watchpoint_addr_within_range)
10257         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10258         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10259         (remote_supports_stopped_by_sw_breakpoint)
10260         (remote_stopped_by_hw_breakpoint)
10261         (remote_supports_stopped_by_hw_breakpoint)
10262         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10263         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10264         (remote_verify_memory): Refactor as methods of remote_target.
10265         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10266         parameter.
10267         (remote_xfer_partial, remote_get_memory_xfer_limit)
10268         (remote_search_memory, remote_rcmd, remote_memory_map)
10269         (remote_pid_to_str, remote_get_thread_local_address)
10270         (remote_get_tib_address, remote_read_description): Refactor as
10271         methods of remote_target.
10272         (remote_target::fileio_open, remote_target::fileio_pwrite)
10273         (remote_target::fileio_pread, remote_target::fileio_close): New.
10274         (remote_hostio_readlink, remote_hostio_fstat)
10275         (remote_filesystem_is_local, remote_can_execute_reverse)
10276         (remote_supports_non_stop, remote_supports_disable_randomization)
10277         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10278         (remote_supports_enable_disable_tracepoint)
10279         (remote_supports_string_tracing)
10280         (remote_can_run_breakpoint_commands, remote_trace_init)
10281         (remote_download_tracepoint, remote_can_download_tracepoint)
10282         (remote_download_trace_state_variable, remote_enable_tracepoint)
10283         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10284         (remote_trace_start, remote_get_trace_status)
10285         (remote_get_tracepoint_status, remote_trace_stop)
10286         (remote_trace_find, remote_get_trace_state_variable_value)
10287         (remote_save_trace_data, remote_get_raw_trace_data)
10288         (remote_set_disconnected_tracing, remote_core_of_thread)
10289         (remote_set_circular_trace_buffer, remote_traceframe_info)
10290         (remote_get_min_fast_tracepoint_insn_len)
10291         (remote_set_trace_buffer_size, remote_set_trace_notes)
10292         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10293         (remote_disable_btrace, remote_teardown_btrace)
10294         (remote_read_btrace, remote_btrace_conf)
10295         (remote_augmented_libraries_svr4_read, remote_load)
10296         (remote_pid_to_exec_file, remote_can_do_single_step)
10297         (remote_execution_direction, remote_thread_handle_to_thread_info):
10298         Refactor as methods of remote_target.
10299         (init_remote_ops, init_extended_remote_ops): Delete.
10300         (remote_can_async_p, remote_is_async_p, remote_async)
10301         (remote_thread_events, remote_upload_tracepoints)
10302         (remote_upload_trace_state_variables): Refactor as methods of
10303         remote_target.
10304         (_initialize_remote): Remove references to init_remote_ops and
10305         init_extended_remote_ops.
10306
10307         * remote-sim.c (gdbsim_target): New class.
10308         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10309         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10310         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10311         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10312         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10313         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10314         Refactor as methods of gdbsim_target.
10315         (gdbsim_ops): Now a gdbsim_target.
10316         (init_gdbsim_ops): Delete.
10317         (gdbsim_cntrl_c): Adjust.
10318         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10319
10320         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10321         (the_amd64_linux_nat_target): New.
10322         (amd64_linux_fetch_inferior_registers)
10323         (amd64_linux_store_inferior_registers): Refactor as methods of
10324         amd64_linux_nat_target.
10325         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10326         * i386-linux-nat.c: Don't include "linux-nat.h".
10327         (i386_linux_nat_target): New class.
10328         (the_i386_linux_nat_target): New.
10329         (i386_linux_fetch_inferior_registers)
10330         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10331         as methods of i386_linux_nat_target.
10332         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10333         * inf-child.c (inf_child_ops): Delete.
10334         (inf_child_fetch_inferior_registers)
10335         (inf_child_store_inferior_registers): Delete.
10336         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10337         methods of inf_child_target.
10338         (inf_child_target::supports_terminal_ours)
10339         (inf_child_target::terminal_init)
10340         (inf_child_target::terminal_inferior)
10341         (inf_child_target::terminal_ours_for_output)
10342         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10343         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10344         New.
10345         (inf_child_open, inf_child_disconnect, inf_child_close)
10346         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10347         (inf_child_post_startup_inferior, inf_child_can_run)
10348         (inf_child_pid_to_exec_file): Refactor as methods of
10349         inf_child_target.
10350         (inf_child_follow_fork): Delete.
10351         (inf_child_target::can_create_inferior)
10352         (inf_child_target::can_attach): New.
10353         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10354         (inf_child_target::has_stack, inf_child_target::has_registers)
10355         (inf_child_target::has_execution): New.
10356         (inf_child_fileio_open, inf_child_fileio_pwrite)
10357         (inf_child_fileio_pread, inf_child_fileio_fstat)
10358         (inf_child_fileio_close, inf_child_fileio_unlink)
10359         (inf_child_fileio_readlink, inf_child_use_agent)
10360         (inf_child_can_use_agent): Refactor as methods of
10361         inf_child_target.
10362         (return_zero, inf_child_target): Delete.
10363         (inf_child_target::inf_child_target): New.
10364         * inf-child.h: Include "target.h".
10365         (inf_child_target): Delete function prototype.
10366         (inf_child_target): New class.
10367         (inf_child_open_target, inf_child_mourn_inferior)
10368         (inf_child_maybe_unpush_target): Delete.
10369         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10370         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10371         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10372         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10373         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10374         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10375         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10376         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10377         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10378         methods of inf_ptrace_target.
10379         (inf_ptrace_target): Delete function.
10380         * inf-ptrace.h: Include "inf-child.h".
10381         (inf_ptrace_target): Delete function declaration.
10382         (inf_ptrace_target): New class.
10383         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10384         * linux-nat.c (linux_target): New.
10385         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10386         (linux_nat_target::~linux_nat_target): New.
10387         (linux_child_post_attach, linux_child_post_startup_inferior)
10388         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10389         (linux_child_remove_fork_catchpoint)
10390         (linux_child_insert_vfork_catchpoint)
10391         (linux_child_remove_vfork_catchpoint)
10392         (linux_child_insert_exec_catchpoint)
10393         (linux_child_remove_exec_catchpoint)
10394         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10395         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10396         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10397         (linux_nat_stopped_data_address)
10398         (linux_nat_stopped_by_sw_breakpoint)
10399         (linux_nat_supports_stopped_by_sw_breakpoint)
10400         (linux_nat_stopped_by_hw_breakpoint)
10401         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10402         (linux_nat_kill, linux_nat_mourn_inferior)
10403         (linux_nat_xfer_partial, linux_nat_thread_alive)
10404         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10405         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10406         (linux_child_static_tracepoint_markers_by_strid)
10407         (linux_nat_is_async_p, linux_nat_can_async_p)
10408         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10409         (linux_nat_supports_multi_process)
10410         (linux_nat_supports_disable_randomization, linux_nat_async)
10411         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10412         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10413         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10414         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10415         methods of linux_nat_target.
10416         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10417         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10418         parameter.
10419         (check_stopped_by_watchpoint): Adjust.
10420         (linux_xfer_partial): Delete.
10421         (linux_target_install_ops, linux_target, linux_nat_add_target):
10422         Delete.
10423         (linux_nat_target::linux_nat_target): New.
10424         * linux-nat.h: Include "inf-ptrace.h".
10425         (linux_nat_target): New.
10426         (linux_target, linux_target_install_ops, linux_nat_add_target):
10427         Delete function declarations.
10428         (linux_target): Declare global.
10429         * linux-thread-db.c (thread_db_target): New.
10430         (thread_db_target::thread_db_target): New.
10431         (thread_db_ops): Delete.
10432         (the_thread_db_target): New.
10433         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10434         (thread_db_update_thread_list, thread_db_pid_to_str)
10435         (thread_db_extra_thread_info)
10436         (thread_db_thread_handle_to_thread_info)
10437         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10438         (thread_db_resume): Refactor as methods of thread_db_target.
10439         (init_thread_db_ops): Delete.
10440         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10441         * x86-linux-nat.c: Don't include "linux-nat.h".
10442         (super_post_startup_inferior): Delete.
10443         (x86_linux_nat_target::~x86_linux_nat_target): New.
10444         (x86_linux_child_post_startup_inferior)
10445         (x86_linux_read_description, x86_linux_enable_btrace)
10446         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10447         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10448         methods of x86_linux_nat_target.
10449         (x86_linux_create_target): Delete.  Bits folded ...
10450         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10451         pointer.
10452         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10453         (x86_linux_nat_target): New class.
10454         (x86_linux_create_target): Delete.
10455         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10456         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10457         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10458         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10459         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10460         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10461         make extern.
10462         (x86_use_watchpoints): Delete.
10463         * x86-nat.h: Include "breakpoint.h" and "target.h".
10464         (x86_use_watchpoints): Delete.
10465         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10466         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10467         (x86_insert_watchpoint, x86_remove_watchpoint)
10468         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10469         (x86_stopped_by_hw_breakpoint): New declarations.
10470         (x86_nat_target): New template class.
10471
10472         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10473         (the_ppc_linux_nat_target): New.
10474         (ppc_linux_fetch_inferior_registers)
10475         (ppc_linux_can_use_hw_breakpoint)
10476         (ppc_linux_region_ok_for_hw_watchpoint)
10477         (ppc_linux_ranged_break_num_registers)
10478         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10479         (ppc_linux_insert_mask_watchpoint)
10480         (ppc_linux_remove_mask_watchpoint)
10481         (ppc_linux_can_accel_watchpoint_condition)
10482         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10483         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10484         (ppc_linux_watchpoint_addr_within_range)
10485         (ppc_linux_masked_watch_num_registers)
10486         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10487         (ppc_linux_read_description): Refactor as methods of
10488         ppc_linux_nat_target.
10489         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10490
10491         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10492         (procfs_target): New class.
10493         (the_procfs_target): New.
10494         (procfs_target): Delete function.
10495         (procfs_auxv_parse, procfs_attach, procfs_detach)
10496         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10497         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10498         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10499         (procfs_create_inferior, procfs_update_thread_list)
10500         (procfs_thread_alive, procfs_pid_to_str)
10501         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10502         (procfs_stopped_data_address, procfs_insert_watchpoint)
10503         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10504         (proc_find_memory_regions, procfs_info_proc)
10505         (procfs_make_note_section): Refactor as methods of procfs_target.
10506         (_initialize_procfs): Adjust.
10507         * sol-thread.c (sol_thread_target): New class.
10508         (sol_thread_ops): Now a sol_thread_target.
10509         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10510         (sol_thread_fetch_registers, sol_thread_store_registers)
10511         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10512         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10513         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10514         (init_sol_thread_ops): Delete.
10515         (_initialize_sol_thread): Adjust.  Remove references to
10516         init_sol_thread_ops and complete_target_initialization.
10517
10518         * windows-nat.c (windows_nat_target): New class.
10519         (windows_fetch_inferior_registers)
10520         (windows_store_inferior_registers, windows_resume, windows_wait)
10521         (windows_attach, windows_detach, windows_pid_to_exec_file)
10522         (windows_files_info, windows_create_inferior)
10523         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10524         (windows_close, windows_pid_to_str, windows_xfer_partial)
10525         (windows_get_tib_address, windows_get_ada_task_ptid)
10526         (windows_thread_name, windows_thread_alive): Refactor as
10527         windows_nat_target methods.
10528         (do_initial_windows_stuff): Adjust.
10529         (windows_target): Delete function.
10530         (_initialize_windows_nat): Adjust.
10531
10532         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10533         (darwin_mourn_inferior, darwin_kill_inferior)
10534         (darwin_create_inferior, darwin_attach, darwin_detach)
10535         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10536         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10537         (darwin_supports_multi_process): Refactor as darwin_nat_target
10538         methods.
10539         (darwin_resume_to, darwin_files_info): Delete.
10540         (_initialize_darwin_inferior): Rename to ...
10541         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10542         * darwin-nat.h: Include "inf-child.h".
10543         (darwin_nat_target): New class.
10544         (darwin_complete_target): Delete.
10545         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10546         (darwin_target): New.
10547         (i386_darwin_fetch_inferior_registers)
10548         (i386_darwin_store_inferior_registers): Refactor as methods of
10549         darwin_nat_target.
10550         (darwin_complete_target): Delete, with ...
10551         (_initialize_i386_darwin_nat): ... bits factored out here.
10552
10553         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10554         (the_alpha_linux_nat_target): New.
10555         (alpha_linux_register_u_offset): Refactor as
10556         alpha_linux_nat_target method.
10557         (_initialize_alpha_linux_nat): Adjust.
10558         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10559         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10560         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10561         methods of linux_nat_trad_target.
10562         (linux_trad_target): Delete.
10563         * linux-nat-trad.h (linux_trad_target): Delete function.
10564         (linux_nat_trad_target): New class.
10565         * mips-linux-nat.c (mips_linux_nat_target): New class.
10566         (super_fetch_registers, super_store_registers, super_close):
10567         Delete.
10568         (the_mips_linux_nat_target): New.
10569         (mips64_linux_regsets_fetch_registers)
10570         (mips64_linux_regsets_store_registers)
10571         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10572         (mips_linux_register_u_offset, mips_linux_read_description)
10573         (mips_linux_can_use_hw_breakpoint)
10574         (mips_linux_stopped_by_watchpoint)
10575         (mips_linux_stopped_data_address)
10576         (mips_linux_region_ok_for_hw_watchpoint)
10577         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10578         (mips_linux_close): Refactor as methods of mips_linux_nat.
10579         (_initialize_mips_linux_nat): Adjust to C++ification.
10580
10581         * aix-thread.c (aix_thread_target): New class.
10582         (aix_thread_ops): Now an aix_thread_target.
10583         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10584         (aix_thread_fetch_registers, aix_thread_store_registers)
10585         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10586         (aix_thread_thread_alive, aix_thread_pid_to_str)
10587         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10588         Refactor as methods of aix_thread_target.
10589         (init_aix_thread_ops): Delete.
10590         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10591         and complete_target_initialization.
10592         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10593         (rs6000_nat_target): New class.
10594         (the_rs6000_nat_target): New.
10595         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10596         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10597         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10598         (super_create_inferior): Delete.
10599         (_initialize_rs6000_nat): Adjust to C++ification.
10600
10601         * arm-linux-nat.c (arm_linux_nat_target): New class.
10602         (the_arm_linux_nat_target): New.
10603         (arm_linux_fetch_inferior_registers)
10604         (arm_linux_store_inferior_registers, arm_linux_read_description)
10605         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10606         (arm_linux_remove_hw_breakpoint)
10607         (arm_linux_region_ok_for_hw_watchpoint)
10608         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10609         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10610         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10611         arm_linux_nat_target.
10612         (_initialize_arm_linux_nat): Adjust to C++ification.
10613
10614         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10615         (the_aarch64_linux_nat_target): New.
10616         (aarch64_linux_fetch_inferior_registers)
10617         (aarch64_linux_store_inferior_registers)
10618         (aarch64_linux_child_post_startup_inferior)
10619         (aarch64_linux_read_description)
10620         (aarch64_linux_can_use_hw_breakpoint)
10621         (aarch64_linux_insert_hw_breakpoint)
10622         (aarch64_linux_remove_hw_breakpoint)
10623         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10624         (aarch64_linux_region_ok_for_hw_watchpoint)
10625         (aarch64_linux_stopped_data_address)
10626         (aarch64_linux_stopped_by_watchpoint)
10627         (aarch64_linux_watchpoint_addr_within_range)
10628         (aarch64_linux_can_do_single_step): Refactor as methods of
10629         aarch64_linux_nat_target.
10630         (super_post_startup_inferior): Delete.
10631         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10632
10633         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10634         (the_hppa_linux_nat_target): New.
10635         (hppa_linux_fetch_inferior_registers)
10636         (hppa_linux_store_inferior_registers): Refactor as methods of
10637         hppa_linux_nat_target.
10638         (_initialize_hppa_linux_nat): Adjust to C++ification.
10639
10640         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10641         (the_ia64_linux_nat_target): New.
10642         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10643         (ia64_linux_stopped_data_address)
10644         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10645         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10646         ia64_linux_nat_target methods.
10647         (super_xfer_partial): Delete.
10648         (_initialize_ia64_linux_nat): Adjust to C++ification.
10649
10650         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10651         (the_m32r_linux_nat_target): New.
10652         (m32r_linux_fetch_inferior_registers)
10653         (m32r_linux_store_inferior_registers): Refactor as
10654         m32r_linux_nat_target methods.
10655         (_initialize_m32r_linux_nat): Adjust to C++ification.
10656
10657         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10658         (the_m68k_linux_nat_target): New.
10659         (m68k_linux_fetch_inferior_registers)
10660         (m68k_linux_store_inferior_registers): Refactor as
10661         m68k_linux_nat_target methods.
10662         (_initialize_m68k_linux_nat): Adjust to C++ification.
10663
10664         * s390-linux-nat.c (s390_linux_nat_target): New class.
10665         (the_s390_linux_nat_target): New.
10666         (s390_linux_fetch_inferior_registers)
10667         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10668         (s390_insert_watchpoint, s390_remove_watchpoint)
10669         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10670         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10671         (s390_auxv_parse, s390_read_description): Refactor as methods of
10672         s390_linux_nat_target.
10673         (_initialize_s390_nat): Adjust to C++ification.
10674
10675         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10676         (the_sparc_linux_nat_target): New.
10677         (_initialize_sparc_linux_nat): Adjust to C++ification.
10678         * sparc-nat.c (sparc_fetch_inferior_registers)
10679         (sparc_store_inferior_registers): Remove target_ops parameter.
10680         * sparc-nat.h (sparc_fetch_inferior_registers)
10681         (sparc_store_inferior_registers): Remove target_ops parameter.
10682         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10683         (the_sparc64_linux_nat_target): New.
10684         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10685
10686         * spu-linux-nat.c (spu_linux_nat_target): New class.
10687         (the_spu_linux_nat_target): New.
10688         (spu_child_post_startup_inferior, spu_child_post_attach)
10689         (spu_child_wait, spu_fetch_inferior_registers)
10690         (spu_store_inferior_registers, spu_xfer_partial)
10691         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10692         methods.
10693         (_initialize_spu_nat): Adjust to C++ification.
10694
10695         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10696         (the_tilegx_linux_nat_target): New.
10697         (fetch_inferior_registers, store_inferior_registers):
10698         Refactor as methods.
10699         (_initialize_tile_linux_nat): Adjust to C++ification.
10700
10701         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10702         (the_xtensa_linux_nat_target): New.
10703         (xtensa_linux_fetch_inferior_registers)
10704         (xtensa_linux_store_inferior_registers): Refactor as
10705         xtensa_linux_nat_target methods.
10706         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10707
10708         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10709         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10710         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10711         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10712         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10713         (fbsd_stopped_by_sw_breakpoint)
10714         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10715         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10716         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10717         (fbsd_post_startup_inferior, fbsd_post_attach)
10718         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10719         (fbsd_set_syscall_catchpoint)
10720         (super_xfer_partial, super_resume, super_wait)
10721         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10722         (fbsd_handle_debug_trap): Remove target_ops parameter.
10723         (fbsd_nat_add_target): Delete.
10724         * fbsd-nat.h: Include "inf-ptrace.h".
10725         (fbsd_nat_add_target): Delete.
10726         (USE_SIGTRAP_SIGINFO): Define.
10727         (fbsd_nat_target): New class.
10728
10729         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10730         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10731         (amd64bsd_target): Delete.
10732         * amd64-bsd-nat.h: New file.
10733         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10734         "x86-bsd-nat.h".
10735         (amd64_fbsd_nat_target): New class.
10736         (the_amd64_fbsd_nat_target): New.
10737         (amd64fbsd_read_description): Refactor as method of
10738         amd64_fbsd_nat_target.
10739         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10740         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10741         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10742         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10743         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10744         (i386bsd_target): Delete.
10745         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10746         (i386bsd_fetch_inferior_registers)
10747         (i386bsd_store_inferior_registers): Declare.
10748         (i386_bsd_nat_target): New class.
10749         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10750         (the_i386_fbsd_nat_target): New.
10751         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10752         i386_fbsd_nat_target methods.
10753         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10754         (_initialize_i386fbsd_nat): Adjust to C++ification.
10755         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10756         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10757         (_initialize_x86_bsd_nat): Adjust to C++ification.
10758         * x86-bsd-nat.h: Include "x86-nat.h".
10759         (x86bsd_target): Delete declaration.
10760         (x86bsd_nat_target): New class.
10761
10762         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10763         (the_aarch64_fbsd_nat_target): New.
10764         (aarch64_fbsd_fetch_inferior_registers)
10765         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10766         aarch64_fbsd_nat_target.
10767         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10768         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10769         (the_alpha_bsd_nat_target): New.
10770         (alphabsd_fetch_inferior_registers)
10771         (alphabsd_store_inferior_registers): Refactor as
10772         alpha_bsd_nat_target methods.
10773         (_initialize_alphabsd_nat): Refactor as methods of
10774         alpha_bsd_nat_target.
10775         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10776         (the_amd64_nbsd_nat_target): New.
10777         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10778         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10779         (the_amd64_obsd_nat_target): New.
10780         (_initialize_amd64obsd_nat): Adjust to C++ification.
10781         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10782         (the_arm_fbsd_nat_target): New.
10783         (arm_fbsd_fetch_inferior_registers)
10784         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10785         (_initialize_arm_fbsd_nat): Refactor as methods of
10786         arm_fbsd_nat_target.
10787         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10788         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10789         (the_arm_netbsd_nat_target): New.
10790         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10791         arm_netbsd_nat_target.
10792         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10793         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10794         (the_hppa_nbsd_nat_target): New.
10795         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10796         hppa_nbsd_nat_target methods.
10797         (_initialize_hppanbsd_nat): Adjust to C++ification.
10798         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10799         (the_hppa_obsd_nat_target): New.
10800         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10801         methods of hppa_obsd_nat_target.
10802         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10803         add_target.
10804         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10805         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10806         add_target.
10807         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10808         (_initialize_i386obsd_nat): Use add_target.
10809         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10810         (the_m68k_bsd_nat_target): New.
10811         (m68kbsd_fetch_inferior_registers)
10812         (m68kbsd_store_inferior_registers): Refactor as methods of
10813         m68k_bsd_nat_target.
10814         (_initialize_m68kbsd_nat): Adjust to C++ification.
10815         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10816         (the_mips_fbsd_nat_target): New.
10817         (mips_fbsd_fetch_inferior_registers)
10818         (mips_fbsd_store_inferior_registers): Refactor as methods of
10819         mips_fbsd_nat_target.
10820         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10821         add_target.
10822         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10823         (the_mips_nbsd_nat_target): New.
10824         (mipsnbsd_fetch_inferior_registers)
10825         (mipsnbsd_store_inferior_registers): Refactor as methods of
10826         mips_nbsd_nat_target.
10827         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10828         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10829         (the_mips64_obsd_nat_target): New.
10830         (mips64obsd_fetch_inferior_registers)
10831         (mips64obsd_store_inferior_registers): Refactor as methods of
10832         mips64_obsd_nat_target.
10833         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10834         add_target.
10835         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10836         nbsd_nat_target.
10837         * nbsd-nat.h: Include "inf-ptrace.h".
10838         (nbsd_nat_target): New class.
10839         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10840         (obsd_wait): Refactor as methods of obsd_nat_target.
10841         (obsd_add_target): Delete.
10842         * obsd-nat.h: Include "inf-ptrace.h".
10843         (obsd_nat_target): New class.
10844         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10845         (the_ppc_fbsd_nat_target): New.
10846         (ppcfbsd_fetch_inferior_registers)
10847         (ppcfbsd_store_inferior_registers): Refactor as methods of
10848         ppc_fbsd_nat_target.
10849         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10850         add_target.
10851         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10852         (the_ppc_nbsd_nat_target): New.
10853         (ppcnbsd_fetch_inferior_registers)
10854         (ppcnbsd_store_inferior_registers): Refactor as methods of
10855         ppc_nbsd_nat_target.
10856         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10857         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10858         (the_ppc_obsd_nat_target): New.
10859         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10860         methods of ppc_obsd_nat_target.
10861         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10862         add_target.
10863         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10864         (the_sh_nbsd_nat_target): New.
10865         (shnbsd_fetch_inferior_registers)
10866         (shnbsd_store_inferior_registers): Refactor as methods of
10867         sh_nbsd_nat_target.
10868         (_initialize_shnbsd_nat): Adjust to C++ification.
10869         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10870         (inf_ptrace_xfer_partial): Delete.
10871         (sparc_xfer_partial, sparc_target): Delete.
10872         * sparc-nat.h (sparc_fetch_inferior_registers)
10873         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10874         (sparc_target): Delete function declaration.
10875         (sparc_target): New template class.
10876         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10877         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10878         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10879         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10880         add_target.
10881         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10882         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10883         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10884         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10885         add_target.
10886         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10887         (the_vax_bsd_nat_target): New.
10888         (vaxbsd_fetch_inferior_registers)
10889         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10890         methods.
10891         (_initialize_vaxbsd_nat): Adjust to C++ification.
10892
10893         * bsd-kvm.c (bsd_kvm_target): New class.
10894         (bsd_kvm_ops): Now a bsd_kvm_target.
10895         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10896         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10897         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10898         bsd_kvm_target.
10899         (bsd_kvm_return_one): Delete.
10900         (bsd_kvm_add_target): Adjust to C++ification.
10901
10902         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10903         (nto_procfs_target_procfs): New classes.
10904         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10905         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10906         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10907         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10908         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10909         (procfs_remove_hw_breakpoint, procfs_resume)
10910         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10911         (procfs_kill_inferior, procfs_store_registers)
10912         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10913         as methods of nto_procfs_target.
10914         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10915         (nto_native_ops): Delete.
10916         (procfs_open, procfs_native_open): Delete.
10917         (nto_native_ops): Now an nto_procfs_target_native.
10918         (init_procfs_targets): Adjust to C++ification.
10919         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10920         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10921         Refactor as methods of nto_procfs_target.
10922
10923         * go32-nat.c (go32_nat_target): New class.
10924         (the_go32_nat_target): New.
10925         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10926         (go32_store_registers, go32_xfer_partial, go32_files_info)
10927         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10928         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10929         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10930         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10931         (go32_target): Delete.
10932         (_initialize_go32_nat): Adjust to C++ification.
10933
10934         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10935         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10936         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10937         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10938         gnu_nat_target.
10939         (gnu_target): Delete.
10940         * gnu-nat.h (gnu_target): Delete.
10941         (gnu_nat_target): New class.
10942         * i386-gnu-nat.c (gnu_base_target): New.
10943         (i386_gnu_nat_target): New class.
10944         (the_i386_gnu_nat_target): New.
10945         (_initialize_i386gnu_nat): Adjust to C++ification.
10946
10947 2018-05-02  Pedro Alves  <palves@redhat.com>
10948
10949         * bfd-target.c (target_bfd_xclose): Rename to ...
10950         (target_bfd_close): ... this.
10951         (target_bfd_reopen): Adjust.
10952         * target.c (target_close): Remove references to to_xclose.
10953         * target.h (target_ops::to_xclose): Delete.
10954         (target_ops::to_close): Update comments.
10955
10956 2018-05-02  Pedro Alves  <palves@redhat.com>
10957
10958         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10959         "linux-nat.h".
10960         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10961         * inf-ptrace.c (inf_ptrace_register_u_offset)
10962         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10963         (inf_ptrace_store_register, inf_ptrace_store_registers)
10964         (inf_ptrace_trad_target): Move to ...
10965         * linux-nat-trad.c: ... this new file.
10966         * linux-nat-trad.h: New file.
10967         * linux-nat.c (linux_target_install_ops): Make extern.
10968         (linux_trad_target): Delete.
10969         * linux-nat.h (linux_trad_target): Delete declaration.
10970         (linux_target_install_ops): Declare.
10971         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10972         "linux-nat.h".
10973
10974 2018-05-02  Pedro Alves  <palves@redhat.com>
10975
10976         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10977         procfs_target/add_target here.
10978         * procfs.c (procfs_target): Make static.
10979         (_initialize_procfs): Call add_target here.
10980         * procfs.h (struct target_ops): Remove forward declaration.
10981         (procfs_target): Remove declaration.
10982         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10983
10984 2018-05-02  Pedro Alves  <palves@redhat.com>
10985
10986         * procfs.c (procfs_stopped_by_watchpoint)
10987         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10988         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10989         Forward declare.
10990         (procfs_use_watchpoints): Delete, move contents...
10991         (procfs_target): ... here.
10992         * procfs.h (procfs_use_watchpoints): Delete declaration.
10993         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10994         procfs_use_watchpoints.
10995         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10996         procfs_use_watchpoints.
10997
10998 2018-05-02  Tom Tromey  <tom@tromey.com>
10999
11000         PR python/20084:
11001         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11002         and var_zuinteger_unlimited.
11003         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11004         and PARAM_ZUINTEGER_UNLIMITED.
11005         (set_parameter_value): Handle var_zuinteger and
11006         var_zuinteger_unlimited.
11007         (add_setshow_generic): Likewise.
11008         (parmpy_init): Likewise.
11009
11010 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11011
11012         PR rust/23124
11013         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11014         pointer is not null before dereferencing it.
11015
11016 2018-04-30  Tom Tromey  <tom@tromey.com>
11017
11018         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11019         is_mi_like_p.
11020
11021 2018-04-30  Tom Tromey  <tom@tromey.com>
11022
11023         * breakpoint.c (mention): Remove use of is_mi_like_p.
11024         (print_mention_ranged_breakpoint): Likewise.
11025         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11026         of is_mi_like_p.
11027
11028 2018-04-30  Tom Tromey  <tom@tromey.com>
11029
11030         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11031
11032 2018-04-30  Tom Tromey  <tom@tromey.com>
11033
11034         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11035         (info_spu_event_command): Remove some uses of is_mi_like_p.
11036
11037 2018-04-30  Tom Tromey  <tom@tromey.com>
11038
11039         * python/py-framefilter.c (py_print_single_arg)
11040         (enumerate_locals, py_print_args, py_print_frame): Remove some
11041         uses of is_mi_like_p.
11042
11043 2018-04-30  Tom Tromey  <tom@tromey.com>
11044
11045         * ui-out.c: Update.
11046         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11047         * ui-out.h (ui_out::is_mi_like_p): Now const.
11048         (ui_out::do_is_mi_like_p): Now const.
11049         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11050
11051 2018-04-30  Tom Tromey  <tom@tromey.com>
11052
11053         * varobj.c (varobj_set_visualizer): Use new_reference.
11054         * python/python.c (gdbpy_decode_line): Use new_reference.
11055         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11056         new_reference.
11057
11058 2018-04-30  Tom Tromey  <tom@tromey.com>
11059
11060         * varobj.c (install_new_value): Use new_reference.
11061         * value.h (value_incref): Return void.  Swap intro comment with
11062         value_decref.
11063         * value.c (set_value_parent): Use new_reference.
11064         (value_incref): Return void.  Update intro comment.
11065         (release_value): Use new_reference.
11066         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11067
11068 2018-04-30  Tom Tromey  <tom@tromey.com>
11069
11070         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11071         * gdb_bfd.h (new_bfd_ref): Remove.
11072         (gdb_bfd_open): Update comment.
11073         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11074         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11075         (gdb_bfd_fdopenr): Use new_reference.
11076         * exec.c (exec_file_attach): Use new_reference.
11077
11078 2018-04-30  Tom Tromey  <tom@tromey.com>
11079
11080         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11081         method.
11082
11083 2018-04-30  Tom Tromey  <tom@tromey.com>
11084
11085         * jit.c (jit_read_code_entry): Use type_align.
11086         * i386-tdep.c (i386_gdbarch_init): Don't call
11087         set_gdbarch_long_long_align_bit.
11088         * gdbarch.sh: Remove long_long_align_bit.
11089         * gdbarch.c, gdbarch.h: Rebuild.
11090         * arc-tdep.c (arc_type_align): New function.
11091         (arc_gdbarch_init): Use arc_type_align.  Don't call
11092         set_gdbarch_long_long_align_bit.
11093
11094 2018-04-30  Tom Tromey  <tom@tromey.com>
11095
11096         * rust-lang.c (rust_type_alignment): Remove.
11097         (rust_composite_type): Use type_align.
11098
11099 2018-04-30  Tom Tromey  <tom@tromey.com>
11100
11101         * NEWS: Mention Type.align.
11102         * python/py-type.c (typy_get_alignof): New function.
11103         (type_object_getset): Add "alignof".
11104
11105 2018-04-30  Tom Tromey  <tom@tromey.com>
11106
11107         PR exp/17095:
11108         * NEWS: Update.
11109         * std-operator.def (UNOP_ALIGNOF): New operator.
11110         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11111         New.
11112         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11113         * c-lang.c (c_op_print_tab): Add alignof.
11114         * c-exp.y (ALIGNOF): New token.
11115         (exp): Add "ALIGNOF" production.
11116         (ident_tokens): Add _Alignof and alignof.
11117
11118 2018-04-30  Tom Tromey  <tom@tromey.com>
11119
11120         * i386-tdep.c (i386_type_align): New function.
11121         (i386_gdbarch_init): Update.
11122         * gdbarch.sh (type_align): New method.
11123         * gdbarch.c, gdbarch.h: Rebuild.
11124         * arch-utils.h (default_type_align): Declare.
11125         * arch-utils.c (default_type_align): New function.
11126         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11127         (struct type) <align_log2>: New field.
11128         <instance_flags>: Now a bitfield.
11129         (TYPE_RAW_ALIGN): New macro.
11130         (type_align, type_raw_align, set_type_align): Declare.
11131         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11132         functions.
11133         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11134         (get_alignment, maybe_set_alignment): New functions.
11135         (read_structure_type, read_enumeration_type, read_array_type)
11136         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11137         (read_subrange_type, read_base_type): Set type alignment.
11138
11139 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11140
11141         * dwarf2read.c (read_index_from_section): Use bool.
11142
11143 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11144
11145         PR gdb/22950
11146         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11147         with #ifdef.
11148
11149 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11150
11151         PR build/22873
11152         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11153         last step, and do it atomically.
11154
11155 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11156
11157         * compile/compile-c-types.c (convert_int, convert_float):
11158         Update for C FE v1.
11159
11160 2018-04-27  Tom Tromey  <tom@tromey.com>
11161
11162         PR rust/22545:
11163         * rust-lang.c (rust_inclusive_range_type_p): New function.
11164         (rust_range): Handle inclusive ranges.
11165         (rust_compute_range): Likewise.
11166         * rust-exp.y (struct rust_op) <inclusive>: New field.
11167         (DOTDOTEQ): New constant.
11168         (range_expr): Add "..=" productions.
11169         (operator_tokens): Add "..=" token.
11170         (ast_range): Add "inclusive" parameter.
11171         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11172         ranges.
11173         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11174         bounds values.
11175         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11176         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11177         Update comments.
11178         * expprint.c (print_subexp_standard): Handle new bounds values.
11179         (dump_subexp_body_standard): Likewise.
11180
11181 2018-04-27  Tom Tromey  <tom@tromey.com>
11182
11183         * configure: Rebuild.
11184         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11185         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11186         "OVERRIDE".
11187         (class symbol_needs_eval_context): Likewise.
11188         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11189         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11190         "virtual".
11191         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11192         "override".
11193         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11194         * aarch64-tdep.c (instruction_reader::read): Use "override".
11195         (instruction_reader_test::read): Likewise.
11196         * arm-tdep.c (instruction_reader::read): Use "override".
11197         (instruction_reader_thumb::read): Likewise.
11198
11199 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11200
11201         PR remote/9665
11202         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11203         instead of remote_send.
11204         (remote_send): Remove.
11205
11206 2018-04-26  Pedro Alves  <palves@redhat.com>
11207
11208         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11209         find_function_start_sal instead of find_pc_line.
11210
11211 2018-04-26  Pedro Alves  <palves@redhat.com>
11212
11213         * breakpoint.c (set_breakpoint_location_function): Handle
11214         mst_data_gnu_ifunc.
11215         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11216         * elfread.c (elf_symtab_read): Give data symbols with
11217         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11218         (elf_rel_plt_read): Update comment.
11219         * linespec.c (convert_linespec_to_sals): Handle
11220         mst_data_gnu_ifunc.
11221         (minsym_found): Handle mst_data_gnu_ifunc.
11222         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11223         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11224         * parse.c (find_minsym_type_and_address): Handle
11225         mst_data_gnu_ifunc.
11226         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11227         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11228         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11229         comment.
11230         <mst_data_gnu_ifunc>: New enumerator.
11231
11232 2018-04-26  Pedro Alves  <palves@redhat.com>
11233
11234         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11235         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11236         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11237         Handle it.
11238         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11239         (lookup_minimal_symbol_by_pc): Adjust.
11240         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11241         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11242         * minsyms.h (lookup_msym_prefer): New enum.
11243         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11244         parameter by a lookup_msym_prefer parameter.
11245
11246 2018-04-26  Pedro Alves  <palves@redhat.com>
11247
11248         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11249         ends in "@plt" instead of looking at the symbol's section.
11250
11251 2018-04-26  Pedro Alves  <palves@redhat.com>
11252
11253         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11254         all references.
11255         (find_pc_partial_function_gnu_ifunc): Rename to ...
11256         (find_pc_partial_function): ... this, and remove references to
11257         'is_gnu_ifunc_p'.
11258         (find_pc_partial_function): Delete old implementation.
11259         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11260
11261 2018-04-26  Pedro Alves  <palves@redhat.com>
11262
11263         * linespec.c (struct bound_minimal_symbol_search_key): New.
11264         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11265         skip first line if we found a GNU ifunc minimal symbol by name.
11266         (compare_msymbols): Change parameters to work with a destructured
11267         lhs minsym.
11268         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11269         functions.
11270
11271 2018-04-26  Pedro Alves  <palves@redhat.com>
11272
11273         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11274         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11275         address/name.
11276         (add_location_to_breakpoint): Store the minsym and the objfile in
11277         the breakpoint location.
11278         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11279         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11280         Record the minsym in the sal.
11281         * symtab.h (symtab_and_line) <msymbol>: New field.
11282
11283 2018-04-26  Pedro Alves  <palves@redhat.com>
11284
11285         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11286         unless we actually resolved the ifunc.
11287
11288 2018-04-26  Pedro Alves  <palves@redhat.com>
11289
11290         * c-exp.y (variable production): Prefer ifunc minsyms over
11291         regular function symbols.
11292         * symtab.c (find_gnu_ifunc): New function.
11293         * minsyms.h (lookup_msym_prefer): New enum.
11294         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11295         parameter by a lookup_msym_prefer parameter.
11296         * symtab.h (find_gnu_ifunc): New declaration.
11297
11298 2018-04-26  Pedro Alves  <palves@redhat.com>
11299
11300         * blockframe.c (find_gnu_ifunc_target_type): New function.
11301         (find_function_type): New.
11302         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11303         return a value with a memory address.
11304         (eval_call): For calls to GNU ifunc functions, try to find the
11305         type of the target function from the type that the resolver
11306         returns.
11307         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11308         symbols.
11309         * infcall.c (find_function_return_type): Delete.
11310         (find_function_addr): Add 'function_type' parameter.  For calls to
11311         GNU ifunc functions, try to find the type of the target function
11312         from the type that the resolver returns, and return it via
11313         FUNCTION_TYPE.
11314         (call_function_by_hand_dummy): Adjust to use the function type
11315         returned by find_function_addr.
11316         (find_function_addr): Add 'function_type' parameter and move
11317         description here.
11318         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11319         declarations.
11320
11321 2018-04-26  Pedro Alves  <palves@redhat.com>
11322
11323         * c-exp.y (variable production): Skip finding an alias for ifunc
11324         symbols.
11325
11326 2018-04-26  Pedro Alves  <palves@redhat.com>
11327
11328         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11329
11330 2018-04-25  Pedro Alves  <palves@redhat.com>
11331
11332         * infcmd.c (kill_command): Print the pid as string, not the whole
11333         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11334         message.
11335         * remote.c (remote_detach_1): Print the pid as string, not the
11336         whole thread's ptid.
11337
11338 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11339             Sergio Durigan Junior  <sergiodj@redhat.com>
11340             Pedro Alves  <palves@redhat.com>
11341
11342         * infcmd.c (kill_command): Print message when inferior has
11343         been killed.
11344         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11345         '1'.
11346         (add_inferior): Improve message printed when
11347         'print_inferior_events' is on.
11348         (exit_inferior): Remove message printed when
11349         'print_inferior_events' is on.
11350         (detach_inferior): Improve message printed when
11351         'print_inferior_events' is on.
11352         (initialize_inferiors): Use 'add_inferior_silent' to set
11353         'current_inferior_'.
11354         * inferior.h (print_inferior_events): Declare here as
11355         'extern'.
11356         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11357         '[Detaching...]' messages when 'print_inferior_events' is on.
11358         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11359         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11360         'Detaching after fork from child...', replace it by '... from
11361         parent...'.
11362         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11363         prefix/suffix when printing 'Detaching...' messages.  Print
11364         them when 'print_inferior_events' is on.
11365         * remote.c (remote_detach_1): Print message when detaching
11366         from inferior and '!is_fork_parent'.
11367
11368 2018-04-24  Tom Tromey  <tom@tromey.com>
11369
11370         * cli-out.h: Reindent.
11371
11372 2018-04-24  Tom Tromey  <tom@tromey.com>
11373
11374         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11375         (cli_ui_out::do_field_string): Use fputs_filtered.
11376         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11377
11378 2018-04-23  Tom Tromey  <tom@tromey.com>
11379
11380         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11381         gdb::unique_xmalloc_ptr.
11382
11383 2018-04-23  Tom Tromey  <tom@tromey.com>
11384
11385         * configure: Rebuild.
11386
11387 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11388
11389         PR gdb/23095
11390         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11391         prepare_for_testing.  Set normal_bp to r_debug_state if target
11392         is bsd.
11393
11394 2018-04-21  Pedro Alves  <palves@redhat.com>
11395             Rajendra SY  <rajendra.sy@gmail.com>
11396
11397         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11398         * remote.c (extended_remote_attach): In all-stop mode, mark the
11399         thread as executing.
11400
11401 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11402
11403         * thread.c (thread_apply_all_command): Fix comment.
11404         (thread_command): Fix comment.
11405
11406 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11407
11408         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11409         parameter.
11410         * features/aarch64-core.c (create_feature_aarch64_core):
11411         Regenerate.
11412         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11413         Likewise.
11414         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11415         Likewise.
11416         * features/i386/32bit-avx512.c
11417         (create_feature_i386_32bit_avx512): Likewise.
11418         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11419         Likewise.
11420         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11421         Likewise.
11422         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11423         Likewise.
11424         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11425         Likewise.
11426         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11427         Likewise.
11428         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11429         Likewise.
11430         * features/i386/64bit-avx512.c
11431         (create_feature_i386_64bit_avx512): Likewise.
11432         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11433         Likewise.
11434         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11435         Likewise.
11436         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11437         Likewise.
11438         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11439         Likewise.
11440         * features/i386/64bit-segments.c
11441         (create_feature_i386_64bit_segments): Likewise.
11442         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11443         Likewise.
11444         * features/i386/x32-core.c
11445         (create_feature_i386_x32_core): Likewise.
11446         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11447         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11448         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11449         * target-descriptions.c: In generated code, don't pass xml
11450         filename.
11451
11452 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11453
11454         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11455         (print_xml_feature::visit_post): Likewise.
11456         (print_xml_feature::visit): Likewise.
11457         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11458         (print_xml_feature): Add new class.
11459         * regformats/regdat.sh: Null xmltarget on feature targets.
11460         * target-descriptions.c (struct target_desc): Add xmltarget.
11461         (maintenance_check_tdesc_xml_convert): Add unittest function.
11462         (tdesc_get_features_xml): Add function to get xml.
11463         (maintenance_check_xml_descriptions): Test xml generation.
11464         * xml-tdesc.c (string_read_description_xml): Add function.
11465         * xml-tdesc.h (string_read_description_xml): Add declaration.
11466
11467 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11468
11469         * features/Makefile: Add feature marker to targets with new style
11470         target descriptions.
11471         * regformats/aarch64.dat: Regenerate.
11472         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11473         * regformats/i386/amd64-avx-linux.dat: Likewise.
11474         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11475         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11476         * regformats/i386/amd64-linux.dat: Likewise.
11477         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11478         * regformats/i386/amd64.dat: Likewise.
11479         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11480         * regformats/i386/i386-avx-linux.dat: Likewise.
11481         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11482         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11483         * regformats/i386/i386-linux.dat: Likewise.
11484         * regformats/i386/i386-mmx-linux.dat: Likewise.
11485         * regformats/i386/i386-mpx-linux.dat: Likewise.
11486         * regformats/i386/i386.dat: Likewise.
11487         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11488         * regformats/i386/x32-avx-linux.dat: Likewise.
11489         * regformats/i386/x32-linux.dat: Likewise.
11490         * regformats/tic6x-c62x-linux.dat: Likewise.
11491         * regformats/tic6x-c64x-linux.dat: Likewise.
11492         * regformats/tic6x-c64xp-linux.dat: Likewise.
11493         * regformats/regdat.sh: Parse feature marker.
11494
11495 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11496
11497         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11498         (tdesc_osabi_name): Likewise.
11499         * target-descriptions.c (tdesc_architecture_name): Add new
11500         function.
11501         (tdesc_osabi_name): Likewise.
11502
11503 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11504
11505         * common/tdesc.c (tdesc_predefined_type): Move to here.
11506         (tdesc_named_type): Likewise.
11507         (tdesc_create_vector): Likewise.
11508         (tdesc_create_struct): Likewise.
11509         (tdesc_set_struct_size): Likewise.
11510         (tdesc_create_union): Likewise.
11511         (tdesc_create_flags): Likewise.
11512         (tdesc_create_enum): Likewise.
11513         (tdesc_add_field): Likewise.
11514         (tdesc_add_typed_bitfield): Likewise.
11515         (tdesc_add_bitfield): Likewise.
11516         (tdesc_add_flag): Likewise.
11517         (tdesc_add_enum_value): Likewise.
11518         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11519         (struct tdesc_type_vector): Likewise.
11520         (struct tdesc_type_field): Likewise.
11521         (struct tdesc_type_with_fields): Likewise.
11522         (tdesc_create_enum): Add declaration.
11523         (tdesc_add_typed_bitfield): Likewise.
11524         (tdesc_add_enum_value): Likewise.
11525         * target-descriptions.c (tdesc_type_field): Move from here.
11526         (tdesc_type_builtin): Likewise.
11527         (tdesc_type_vector): Likewise.
11528         (tdesc_type_with_fields): Likewise.
11529         (tdesc_predefined_types): Likewise.
11530         (tdesc_named_type): Likewise.
11531         (tdesc_create_vector): Likewise.
11532         (tdesc_create_struct): Likewise.
11533         (tdesc_set_struct_size): Likewise.
11534         (tdesc_create_union): Likewise.
11535         (tdesc_create_flags): Likewise.
11536         (tdesc_create_enum): Likewise.
11537         (tdesc_add_field): Likewise.
11538         (tdesc_add_typed_bitfield): Likewise.
11539         (tdesc_add_bitfield): Likewise.
11540         (tdesc_add_flag): Likewise.
11541         (tdesc_add_enum_value): Likewise.
11542         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11543         (tdesc_add_typed_bitfield): Likewise.
11544         (tdesc_add_enum_value): Likewise.
11545
11546 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11547
11548         * common/tdesc.c (tdesc_feature::accept): Move to here.
11549         (tdesc_feature::operator==): Likewise.
11550         (tdesc_create_reg): Likewise.
11551         * common/tdesc.h (tdesc_type_kind): Likewise.
11552         (struct tdesc_type): Likewise.
11553         (struct tdesc_feature): Likewise.
11554         * regformats/regdat.sh: Create a feature.
11555         * target-descriptions.c (tdesc_type_kind): Move from here.
11556         (tdesc_type): Likewise.
11557         (tdesc_type_up): Likewise.
11558         (tdesc_feature): Likewise.
11559         (tdesc_create_reg): Likewise.
11560
11561 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11562
11563         * Makefile.in: Add arch/tdesc.c
11564         * common/tdesc.c: New file.
11565         * common/tdesc.h (tdesc_element_visitor): Move to here.
11566         (tdesc_element): Likewise.
11567         (tdesc_reg): Likewise.
11568         (tdesc_reg_up): Likewise.
11569         * regformats/regdef.h (reg): Add offset to constructors.
11570         * target-descriptions.c (tdesc_element_visitor): Move from here.
11571         (tdesc_element): Likewise.
11572         (tdesc_reg): Likewise.
11573         (tdesc_reg_up): Likewise.
11574
11575 2018-04-17  Tom Tromey  <tom@tromey.com>
11576
11577         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11578         discriminant field.
11579
11580 2018-04-17  Tom Tromey  <tom@tromey.com>
11581
11582         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11583
11584 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11585
11586         * symtab.c (print_symbol_info): Skip printing filename and line
11587         number when `last' is NULL.
11588         (symtab_symbol_info): Use empty string instead of NULL for first
11589         invocation of print_symbol_info.
11590         (rbreak_command): Pass NULL to `last' parameter of
11591         print_symbol_info.
11592
11593 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11594
11595         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11596         instead of nullptr.
11597
11598 2018-04-16  Pedro Alves  <palves@redhat.com>
11599
11600         * MAINTAINERS (sh): Remove.
11601         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11602         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11603         (ALLDEPFILES): Remove sh64-tdep.c.
11604         * NEWS: Mentions that support for SH-5/SH64 is removed.
11605         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11606         (sh*-*-openbsd*): Ditto.
11607         (sh64-*-elf*): Remove.
11608         (sh*): Remove.
11609         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11610         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11611         * sh-tdep.c: No longer include "sh64-tdep.h".
11612         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11613         * sh64-tdep.c, sh64-tdep.h: Remove files.
11614
11615 2018-04-16  Pedro Alves  <palves@redhat.com>
11616
11617         * MAINTAINERS: Remove m88k.
11618         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11619         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11620         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11621         * NEWS: Mention that support for m88k was removed.
11622         * configure.host (m88*-*-*): Remove support.
11623         * configure.nat (m88k-*-*): Remove support.
11624         * configure.tgt (m88*-*-openbsd*): Remove.
11625         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11626
11627 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11628
11629         * configure.tgt (x86_tobjs): New variable.
11630         (amd64_tobjs, i386_tobjs): Use it.
11631
11632 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11633
11634         * symtab.c (print_symbol_info): Precede the symbol definition by
11635         the line number when available.
11636         * NEWS: Advertise this enhancement.
11637
11638 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11639
11640         * NEWS (New options): announce set/show record btrace cpu.
11641         * btrace.c: Include record-btrace.h.
11642         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11643         the vendor is unknown.
11644         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11645         Maybe overwrite the btrace configuration's cpu.
11646         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11647         (btrace_fetch): Add cpu parameter.  Update callers.
11648         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11649         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11650         errata workarounds if the vendor is unknown.
11651         * python/py-record-btrace.c: Include record-btrace.h.
11652         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11653         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11654         * record-btrace.c (record_btrace_cpu_state_kind): New.
11655         (record_btrace_cpu): New.
11656         (set_record_btrace_cpu_cmdlist): New.
11657         (record_btrace_get_cpu): New.
11658         (require_btrace_thread, record_btrace_info)
11659         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11660         (cmd_set_record_btrace_cpu_none): New.
11661         (cmd_set_record_btrace_cpu_auto): New.
11662         (cmd_set_record_btrace_cpu): New.
11663         (cmd_show_record_btrace_cpu): New.
11664         (_initialize_record_btrace): Initialize set/show record btrace cpu
11665         commands.
11666         * record-btrace.h (record_btrace_get_cpu): New.
11667
11668 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11669
11670         * record.c (set_record_command): Fix typo in message.
11671
11672 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11673
11674         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11675
11676 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11677
11678         * infrun.c (process_event_stop_test): Call
11679         gdbarch_in_indirect_branch_thunk.
11680         * gdbarch.sh (in_indirect_branch_thunk): New.
11681         * gdbarch.c: Regenerated.
11682         * gdbarch.h: Regenerated.
11683         * x86-tdep.h: New.
11684         * x86-tdep.c: New.
11685         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11686         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11687         (ALLDEPFILES): Add x86-tdep.c.
11688         * arch-utils.h (default_in_indirect_branch_thunk): New.
11689         * arch-utils.c (default_in_indirect_branch_thunk): New.
11690         * i386-tdep: Include x86-tdep.h.
11691         (i386_in_indirect_branch_thunk): New.
11692         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11693         function.
11694         * amd64-tdep: Include x86-tdep.h.
11695         (amd64_in_indirect_branch_thunk): New.
11696         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11697
11698 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11699
11700         PR gdb/23053
11701         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11702         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11703         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11704         regression.
11705
11706 2018-04-12  Tom Tromey  <tom@tromey.com>
11707
11708         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11709         (rust_evaluate_subexp): Likewise.
11710
11711 2018-04-12  Pedro Alves  <palves@redhat.com>
11712
11713         * procfs.c (procfs_detach): Make forward declaration's prototype
11714         match definition's protototype.
11715         (proc_get_LDT_entry): Remove stale do_cleanups call.
11716
11717 2018-04-12  Pedro Alves  <palves@redhat.com>
11718
11719         * target.h (target_ops::to_has_exited): Delete.
11720         (target_has_exited): Delete.
11721         * target-delegates.c: Regenerate.
11722
11723 2018-04-11  Pedro Alves  <palves@redhat.com>
11724
11725         * target.c (fileio_fh_t::t): Add comment.
11726         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11727         (target_fileio_close): Handle a NULL target.
11728         (invalidate_fileio_fh): New.
11729         (target_close): Call it.
11730         * remote.c (remote_hostio_send_command): No longer check whether
11731         remote_desc is open.
11732
11733 2018-04-11  Pedro Alves  <palves@redhat.com>
11734
11735         * target.c (fileio_fh_t): Make it a named struct instead of a
11736         typedef.
11737         (fileio_fh_t::is_closed): New method.
11738         (DEF_VEC_O (fileio_fh_t)): Remove.
11739         (fileio_fhandles): Now a std::vector.
11740         (is_closed_fileio_fh): Delete.
11741         (acquire_fileio_fd): Adjust.  Rename parameters.
11742         (release_fileio_fd): Adjust.
11743         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11744         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11745         (target_fileio_close): Adjust.
11746
11747 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11748
11749         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11750         index.
11751
11752 2018-04-10  Pedro Alves  <palves@redhat.com>
11753
11754         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11755         (scoped_finish_thread_state): New class.
11756         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11757         cleanup.
11758         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11759         (fetch_inferior_event, normal_stop): Likewise.
11760         * thread.c (finish_thread_state_cleanup): Delete.
11761
11762 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11763             Pedro Alves  <palves@redhat.com>
11764
11765         * value.c: Include "selftest.h" and "common/array-view.h".
11766         (struct range) <operator ==>: New.
11767         (test_ranges_contain): New.
11768         (check_ranges_vector): New.
11769         (test_insert_into_bit_range_vector): New.
11770         (_initialize_values): Register selftests.
11771         * common/array-view.h (operator==, operator!=): New.
11772
11773 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11774
11775         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11776         an iterator.
11777         * inline-frame.c: Include <algorithm>.
11778         (struct inline_state): Add constructor.
11779         (inline_state_s): Remove.
11780         (DEF_VEC_O(inline_state_s)): Remove.
11781         (inline_states): Change type to std::vector.
11782         (find_inline_frame_state): Adjust to std::vector.
11783         (allocate_inline_frame_state): Remove.
11784         (clear_inline_frame_state): Adjust to std::vector.
11785         (skip_inline_frames): Adjust to std::vector.
11786
11787 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11788
11789         * tracepoint.h (struct trace_state_variable): Add constructor.
11790         <name>: Change type to std::string.
11791         * tracepoint.c (tsv_s): Remove.
11792         (DEF_VEC_O(tsv_s)): Remove.
11793         (tvariables): Change to std::vector.
11794         (create_trace_state_variable): Adjust to std::vector.
11795         (find_trace_state_variable): Likewise.
11796         (find_trace_state_variable_by_number): Likewise.
11797         (delete_trace_state_variable): Likewise.
11798         (trace_variable_command): Adjust to std::string.
11799         (delete_trace_variable_command): Likewise.
11800         (tvariables_info_1): Adjust to std::vector.
11801         (save_trace_state_variables): Likewise.
11802         (start_tracing): Likewise.
11803         (merge_uploaded_trace_state_variables): Adjust to std::vector
11804         and std::string.
11805         * target.h (struct target_ops)
11806         <to_download_trace_state_variable>: Pass reference to
11807         trace_state_variable.
11808         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11809         * target-delegates.c: Re-generate.
11810         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11811         (mi_tsv_deleted): Likewise.
11812         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11813         * remote.c (remote_download_trace_state_variable): Change
11814         pointer to reference and adjust.
11815         * make-target-delegates (parse_argtypes): Handle references.
11816         (write_function_header): Likewise.
11817         (munge_type): Likewise.
11818
11819 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11820
11821         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11822         string_view-selftests.c.
11823         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11824         testsuite.
11825         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11826         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11827         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11828         * unittests/basic_string_view/element_access/char/1.cc:
11829         Likewise.
11830         * unittests/basic_string_view/element_access/char/empty.cc:
11831         Likewise.
11832         * unittests/basic_string_view/element_access/char/front_back.cc:
11833         Likewise.
11834         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11835         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11836         Likewise.
11837         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11838         Likewise.
11839         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11840         Likewise.
11841         * unittests/basic_string_view/operations/compare/char/1.cc:
11842         Likewise.
11843         * unittests/basic_string_view/operations/compare/char/13650.cc:
11844         Likewise.
11845         * unittests/basic_string_view/operations/copy/char/1.cc:
11846         Likewise.
11847         * unittests/basic_string_view/operations/data/char/1.cc:
11848         Likewise.
11849         * unittests/basic_string_view/operations/find/char/1.cc:
11850         Likewise.
11851         * unittests/basic_string_view/operations/find/char/2.cc:
11852         Likewise.
11853         * unittests/basic_string_view/operations/find/char/3.cc:
11854         Likewise.
11855         * unittests/basic_string_view/operations/find/char/4.cc:
11856         Likewise.
11857         * unittests/basic_string_view/operations/rfind/char/1.cc:
11858         Likewise.
11859         * unittests/basic_string_view/operations/rfind/char/2.cc:
11860         Likewise.
11861         * unittests/basic_string_view/operations/rfind/char/3.cc:
11862         Likewise.
11863         * unittests/basic_string_view/operations/substr/char/1.cc:
11864         Likewise.
11865         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11866         * unittests/string_view-selftests.c: New file.
11867
11868 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11869
11870         * unittests/basic_string_view/capacity/1.cc: New file.
11871         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11872         * unittests/basic_string_view/cons/char/1.cc: New file.
11873         * unittests/basic_string_view/cons/char/2.cc: New file.
11874         * unittests/basic_string_view/cons/char/3.cc: New file.
11875         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11876         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11877         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11878         * unittests/basic_string_view/element_access/char/1.cc: New file.
11879         * unittests/basic_string_view/element_access/char/2.cc: New file.
11880         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11881         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11882         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11883         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11884         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11885         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11886         * unittests/basic_string_view/include.cc: New file.
11887         * unittests/basic_string_view/inserters/char/1.cc: New file.
11888         * unittests/basic_string_view/inserters/char/2.cc: New file.
11889         * unittests/basic_string_view/inserters/char/3.cc: New file.
11890         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11891         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11892         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11893         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11894         * unittests/basic_string_view/literals/types.cc: New file.
11895         * unittests/basic_string_view/literals/values.cc: New file.
11896         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11897         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11898         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11899         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11900         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11901         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11902         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11903         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11904         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11905         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11906         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11907         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11908         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11909         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11910         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11911         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11912         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11913         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11914         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11915         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11916         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11917         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11918         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11919         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11920         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11921         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11922         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11923         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11924         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11925         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11926         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11927         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11928         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11929         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11930         * unittests/basic_string_view/operators/char/2.cc: New file.
11931         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11932         * unittests/basic_string_view/range_access/char/1.cc: New file.
11933         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11934         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11935         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11936         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11937         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11938         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11939         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11940         * unittests/basic_string_view/typedefs.cc: New file.
11941         * unittests/basic_string_view/types/1.cc: New file.
11942
11943 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11944
11945         * common/gdb_string_view.h: Remove libstdc++ implementation
11946         details, adjust to gdb reality.
11947         * common/gdb_string_view.tcc: Likewise.
11948         * cli/cli-script.c (struct string_view): Remove.
11949         (user_args) <m_args>: Change element type to gdb::string_view.
11950         (user_args::insert_args): Adjust.
11951
11952 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11953
11954         * common/gdb_string_view.h: New file.
11955         * common/gdb_string_view.tcc: New file.
11956
11957 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11958
11959         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11960         * configure: Re-generate.
11961
11962 2018-04-09  Pedro Alves  <palves@redhat.com>
11963
11964         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11965         (set_target_gdbarch): Call
11966         gdb::observers::architecture_changed.notify instead of
11967         observer_notify_architecture_changed.
11968
11969 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11970
11971         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11972         (do_restore_current_traceframe_cleanup): Remove.
11973         (restore_current_traceframe_cleanup_dtor): Remove.
11974         (make_cleanup_restore_current_traceframe): Remove.
11975         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11976         New.
11977         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11978         * infrun.c (fetch_inferior_event): Use
11979         scoped_restore_current_traceframe.
11980
11981 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11982
11983         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11984         Remove.
11985         <n_allocated_type_units>: Remove.
11986         <all_type_units>: Change to std::vector.
11987         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11988         to std::vector change.
11989         (dwarf2_per_objfile::get_cutu): Likewise.
11990         (dwarf2_per_objfile::get_tu): Likewise.
11991         (create_signatured_type_table_from_index): Likewise.
11992         (create_signatured_type_table_from_debug_names): Likewise.
11993         (dw2_symtab_iter_next): Likewise.
11994         (dw2_print_stats): Likewise.
11995         (dw2_expand_all_symtabs): Likewise.
11996         (dw2_expand_marked_cus): Likewise.
11997         (dw2_debug_names_iterator::next): Likewise.
11998         (dwarf2_initialize_objfile): Likewise.
11999         (add_signatured_type_cu_to_table): Likewise.
12000         (create_all_type_units): Likewise.
12001         (add_type_unit): Likewise.
12002         (struct tu_abbrev_offset): Add constructor.
12003         (build_type_psymtabs_1): Adjust to std::vector change.
12004         (print_tu_stats): Likewise.
12005         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12006         (write_debug_names): Likewise.
12007
12008 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12009
12010         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12011         Make an std::vector.
12012         <n_comp_units>: Remove.
12013         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12014         to std::vector change.
12015         (dwarf2_per_objfile::get_cutu): Likewise.
12016         (dwarf2_per_objfile::get_cu): Likewise.
12017         (create_cus_from_index): Likewise.
12018         (create_addrmap_from_index): Likewise.
12019         (create_addrmap_from_aranges): Likewise.
12020         (dwarf2_read_index): Likewise.
12021         (dw2_find_last_source_symtab): Likewise.
12022         (dw2_map_symtabs_matching_filename): Likewise.
12023         (dw2_symtab_iter_next): Likewise.
12024         (dw2_print_stats): Likewise.
12025         (dw2_expand_all_symtabs): Likewise.
12026         (dw2_expand_symtabs_with_fullname): Likewise.
12027         (dw2_expand_marked_cus): Likewise.
12028         (dw2_map_symbol_filenames): Likewise.
12029         (create_cus_from_debug_names): Likewise.
12030         (dwarf2_read_debug_names): Likewise.
12031         (dw2_debug_names_iterator::next): Likewise.
12032         (dwarf2_initialize_objfile): Likewise.
12033         (set_partial_user): Likewise.
12034         (dwarf2_build_psymtabs_hard): Likewise.
12035         (read_comp_units_from_section): Remove arguments, adjust to
12036         std::vector change.
12037         (create_all_comp_units): Adjust to std::vector and
12038         read_comp_units_from_section changes.
12039         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12040         change.
12041         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12042         (psyms_seen_size): Likewise.
12043         (write_gdbindex): Likewise.
12044         (write_debug_names): Likewise.
12045
12046 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12047
12048         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12049         with dwarf2_per_objfile.
12050         (create_cus_from_index): Likewise.
12051         (create_signatured_type_table_from_index): Likewise.
12052         (dwarf2_read_index): Likewise.
12053         (dwarf2_initialize_objfile): Likewise.
12054         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12055         per_cu rather than get_dwarf2_per_objfile.
12056
12057 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12058
12059         * dwarf2read.h (struct signatured_type): Forward declare.
12060         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12061         New methods.
12062         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12063         (dw2_get_cutu): ...this.
12064         (dwarf2_per_objfile::get_cu): Rename from...
12065         (dw2_get_cu): ...this.
12066         (dwarf2_per_objfile::get_tu): New.
12067         (create_addrmap_from_index): Adjust.
12068         (create_addrmap_from_aranges): Adjust.
12069         (dw2_find_last_source_symtab): Adjust.
12070         (dw2_map_symtabs_matching_filename): Adjust.
12071         (dw2_symtab_iter_next): Adjust.
12072         (dw2_print_stats): Adjust.
12073         (dw2_expand_all_symtabs): Adjust.
12074         (dw2_expand_symtabs_with_fullname): Adjust.
12075         (dw2_expand_marked_cus): Adjust.
12076         (dw_expand_symtabs_matching_file_matcher): Adjust.
12077         (dw2_map_symbol_filenames): Adjust.
12078         (dw2_debug_names_iterator::next): Adjust.
12079         (dwarf2_initialize_objfile): Adjust.
12080         (set_partial_user): Adjust.
12081         (dwarf2_build_psymtabs_hard): Adjust.
12082
12083 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12084
12085         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12086         Remove unused variables.
12087         (dw2_map_symtabs_matching_filename): Likewise.
12088         (dwarf2_record_block_ranges): Likewise.
12089         (dwarf2_read_addr_index): Likewise.
12090         (follow_die_offset): Likewise.
12091
12092 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12093
12094         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12095         to symbol_file_add_main.
12096
12097 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12098
12099         PR mi/22299
12100         * mi/mi-console.c (do_fputc_async_safe): New.
12101         (mi_console_file::write_async_safe): New.
12102         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12103         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12104         New.
12105         * ui-file.c (ui_file::putstrn): Adjust call to
12106         fputstrn_unfiltered.
12107         * utils.c (printchar): Replace do_fputs and do_fprintf
12108         parameters by do_fputc.
12109         (fputstr_filtered): Adjust call to printchar.
12110         (fputstr_unfiltered): Likewise.
12111         (fputstrn_filtered): Likewise.
12112         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12113         printchar.
12114         * utils.h (do_fputc_ftype): New typedef.
12115         (fputstrn_unfiltered): Add do_fputc parameter.
12116
12117 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12118
12119         * regformats/i386/i386-avx.dat: Remove.
12120
12121 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12122
12123         PR gdb/22979
12124         * amd64-tdep.c (amd64_none_init_abi): New function.
12125         (amd64_x32_none_init_abi): New function.
12126         (_initialize_amd64_tdep): Register handlers for x86-64 and
12127         x64_32 with GDB_OSABI_NONE.
12128         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12129         GDB_OSABI_NONE osabi.
12130
12131 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12132
12133         PR gdb/22980
12134         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12135         GDB_OSABI_NONE.
12136         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12137         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12138
12139 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12140
12141         * common/byte-vector.h (char_vector): New type.
12142         * target.h (target_read_alloc): Return
12143         gdb::optional<byte_vector>.
12144         (target_read_stralloc): Return gdb::optional<char_vector>.
12145         (target_get_osdata): Return gdb::optional<char_vector>.
12146         * target.c (target_read_alloc_1): Templatize.  Replacement
12147         manual memory management with vector.
12148         (target_read_alloc): Change return type, adjust.
12149         (target_read_stralloc): Change return type, adjust.
12150         (target_get_osdata): Change return type, adjust.
12151         * auxv.c (struct auxv_info) <length>: Remove.
12152         <data>: Change type to gdb::optional<byte_vector>.
12153         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12154         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12155         (target_auxv_search): Adjust.
12156         (fprint_target_auxv): Adjust.
12157         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12158         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12159         (linux_make_corefile_notes): Adjust.
12160         * osdata.c (get_osdata): Adjust.
12161         * remote.c (remote_get_threads_with_qxfer): Adjust.
12162         (remote_memory_map): Adjust.
12163         (remote_traceframe_info): Adjust.
12164         (btrace_read_config): Adjust.
12165         (remote_read_btrace): Adjust.
12166         (remote_pid_to_exec_file): Adjust.
12167         * solib-aix.c (solib_aix_get_library_list): Adjust.
12168         * solib-dsbt.c (decode_loadmap): Don't free buf.
12169         (dsbt_get_initial_loadmaps): Adjust.
12170         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12171         * solib-target.c (solib_target_current_sos): Adjust.
12172         * tracepoint.c (sdata_make_value): Adjust.
12173         * xml-support.c (xinclude_start_include): Adjust.
12174         (xml_fetch_content_from_file): Adjust.
12175         * xml-support.h (xml_fetch_another): Change return type.
12176         (xml_fetch_content_from_file): Change return type.
12177         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12178         * xml-tdesc.c (file_read_description_xml): Adjust.
12179         (fetch_available_features_from_target): Change return type.
12180         (target_fetch_description_xml): Adjust.
12181         (target_read_description_xml): Adjust.
12182
12183 2018-04-06  Tom Tromey  <tom@tromey.com>
12184
12185         * value.c (~value): Update.
12186         (struct value) <contents>: Now unique_xmalloc_ptr.
12187         (value_contents_bits_eq, allocate_value_contents)
12188         (value_contents_raw, value_contents_all_raw)
12189         (value_contents_for_printing, value_contents_for_printing_const)
12190         (set_value_enclosing_type): Update.
12191
12192 2018-04-06  Tom Tromey  <tom@tromey.com>
12193
12194         * value.c (range_s): Remove typedef, VEC.
12195         (struct range): Add operator<.
12196         (range_lessthan): Remove.
12197         (ranges_contain): Change type.
12198         (~value): Update.
12199         (struct value) <unavailable, optimized_out>: Now std::vector.
12200         (value_entirely_available)
12201         (value_entirely_covered_by_range_vector)
12202         (value_entirely_unavailable, value_entirely_optimized_out):
12203         Update.
12204         (insert_into_bit_range_vector): Change argument type.
12205         (find_first_range_overlap): Likewise.
12206         (struct ranges_and_idx, value_contents_bits_eq)
12207         (require_not_optimized_out, require_available): Update.
12208         (ranges_copy_adjusted): Change argument types.
12209         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12210
12211 2018-04-06  Tom Tromey  <tom@tromey.com>
12212
12213         * value.c (~value): Update.
12214         (struct value) <parent>: Now a value_ref_ptr.
12215         (value_parent, set_value_parent, value_address, value_copy):
12216         Update.
12217
12218 2018-04-06  Tom Tromey  <tom@tromey.com>
12219
12220         * value.c (struct value): Add constructor, destructor, and member
12221         initializers.
12222         (allocate_value_lazy, value_decref): Update.
12223
12224 2018-04-06  Tom Tromey  <tom@tromey.com>
12225
12226         * value.c (struct value) <released, next>: Remove.
12227         (all_values): Now a std::vector.
12228         (allocate_value_lazy): Update.
12229         (value_next): Remove.
12230         (value_mark, value_free_to_mark, release_value)
12231         (value_release_to_mark): Update.
12232
12233 2018-04-06  Tom Tromey  <tom@tromey.com>
12234
12235         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12236         (free_value_chain): Remove.
12237         * value.c (free_value_chain): Remove.
12238         (value_release_to_mark): Return a std::vector.
12239         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12240         std::vector.
12241         (check_condition): Update.
12242         * eval.c (fetch_subexp_value): Change "val_chain" to a
12243         std::vector.
12244         * breakpoint.c (update_watchpoint): Update.
12245         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12246
12247 2018-04-06  Tom Tromey  <tom@tromey.com>
12248
12249         * value.h (free_all_values): Remove.
12250         * value.c (free_all_values): Remove.
12251
12252 2018-04-06  Tom Tromey  <tom@tromey.com>
12253
12254         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12255         (value_history_chain, value_history_count): Remove.
12256         (value_history): New global.
12257         (record_latest_value, access_value_history, show_values)
12258         (preserve_values): Update.
12259
12260 2018-04-06  Tom Tromey  <tom@tromey.com>
12261
12262         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12263         * varobj.c (varobj_set_display_format, varobj_set_value)
12264         (install_default_visualizer, construct_visualizer)
12265         (install_new_value, ~varobj, varobj_get_value_type)
12266         (my_value_of_variable, varobj_editable_p): Update.
12267         * c-varobj.c (c_describe_child, c_value_of_variable)
12268         (cplus_number_of_children, cplus_describe_child): Update.
12269         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12270         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12271         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12272
12273 2018-04-06  Tom Tromey  <tom@tromey.com>
12274
12275         * printcmd.c (last_examine_address): Change type to
12276         value_ref_ptr.
12277         (do_examine, x_command): Update.
12278
12279 2018-04-06  Tom Tromey  <tom@tromey.com>
12280
12281         * value.c (release_value): Update.
12282         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12283         (struct bpstats) <val>: Now a value_ref_ptr.
12284         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12285         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12286         (~watchpoint, print_it_watchpoint, watch_command_1)
12287         (invalidate_bp_value_on_memory_change): Update.
12288
12289 2018-04-06  Tom Tromey  <tom@tromey.com>
12290
12291         * varobj.c (varobj_clear_saved_item)
12292         (update_dynamic_varobj_children, install_new_value, ~varobj):
12293         Update.
12294         * value.h (value_incref): Move declaration earlier.
12295         (value_decref): Rename from value_free.
12296         (struct value_ref_policy): New.
12297         (value_ref_ptr): New typedef.
12298         (struct value_deleter): Remove.
12299         (gdb_value_up): Remove typedef.
12300         (release_value): Change return type.
12301         (release_value_or_incref): Remove.
12302         * value.c (set_value_parent): Update.
12303         (value_incref): Change return type.
12304         (value_decref): Rename from value_free.
12305         (value_free_to_mark, free_all_values, free_value_chain): Update.
12306         (release_value): Return value_ref_ptr.
12307         (release_value_or_incref): Remove.
12308         (record_latest_value, set_internalvar, clear_internalvar):
12309         Update.
12310         * stack.c (info_frame_command): Don't call value_free.
12311         * python/py-value.c (valpy_dealloc, valpy_new)
12312         (value_to_value_object): Update.
12313         * printcmd.c (do_examine): Update.
12314         * opencl-lang.c (lval_func_free_closure): Update.
12315         * mi/mi-main.c (register_changed_p): Don't call value_free.
12316         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12317         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12318         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12319         value_free.
12320         * guile/scm-value.c (vlscm_free_value_smob)
12321         (vlscm_scm_from_value): Update.
12322         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12323         (frame_unwind_register_unsigned, get_frame_register_bytes)
12324         (put_frame_register_bytes): Don't call value_free.
12325         * findvar.c (address_from_register): Don't call value_free.
12326         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12327         * dwarf2loc.c (entry_data_value_free_closure)
12328         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12329         (dwarf2_evaluate_loc_desc_full): Update.
12330         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12331         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12332         (~watchpoint, watch_command_1)
12333         (invalidate_bp_value_on_memory_change): Update.
12334         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12335
12336 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12337
12338         PR gdb/23022
12339         * warning.m4: Add -Wno-error=deprecated-register.
12340         * configure: Re-generate.
12341
12342 2018-04-05  Tom Tromey  <tom@tromey.com>
12343
12344         * linespec.h: Remove include of "vec.h".
12345
12346 2018-04-05  Tom Tromey  <tom@tromey.com>
12347
12348         * linespec.c (typep): Remove typedef.
12349         (find_methods, find_superclass_methods): Take a std::vector.
12350         (find_method): Use std::vector.
12351
12352 2018-04-05  Tom Tromey  <tom@tromey.com>
12353
12354         * utils.c (compare_strings): Remove.
12355         * utils.h (compare_strings): Remove.
12356         * objc-lang.h (find_imps): Update.
12357         * objc-lang.c (find_methods): Take a std::vector.
12358         (uniquify_strings, find_imps): Likewise.
12359         * linespec.c (find_methods): Take a std::vector.
12360         (decode_objc): Use std::vector.
12361         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12362         a std::vector.
12363         (find_method, find_function_symbols): Use std::vector.
12364
12365 2018-04-05  Tom Tromey  <tom@tromey.com>
12366
12367         * completer.c (completion_tracker::completion_tracker): Remove
12368         cast.
12369         (completion_tracker::discard_completions): Likewise.
12370         * breakpoint.c (ambiguous_names_p): Remove cast.
12371         * ada-lang.c (_initialize_ada_language): Remove cast.
12372         * utils.h (streq): Update.
12373         (streq_hash): Add new declaration.
12374         * utils.c (streq): Return bool.
12375         (streq_hash): New function.
12376
12377 2018-04-05  Tom Tromey  <tom@tromey.com>
12378
12379         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12380         Remove a string copy.
12381
12382 2018-04-05  Tom Tromey  <tom@tromey.com>
12383
12384         * linespec.c (filter_results): Use std::vector.
12385         (decode_line_2, decode_line_full): Update.
12386
12387 2018-04-05  Tom Tromey  <tom@tromey.com>
12388
12389         * linespec.c (canonical_to_fullform): Return std::string.
12390         (filter_results): Update.
12391         (struct decode_line_2_item): Add constructor.
12392         <fullform, displayform>: Now std::string.
12393         (decode_line_2_compare_items): Now a std::sort comparator.
12394         (decode_line_2): Update.
12395
12396 2018-04-05  Tom Tromey  <tom@tromey.com>
12397
12398         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12399         (unexpected_linespec_error): Update.
12400         (linespec_parse_basic, parse_linespec): Update.
12401
12402 2018-04-05  Tom Tromey  <tom@tromey.com>
12403
12404         * linespec.c (linespec_parse_basic): Reindent.
12405
12406 2018-04-05  Tom Tromey  <tom@tromey.com>
12407
12408         * minsyms.h (iterate_over_minimal_symbols): Update.
12409         * minsyms.c (iterate_over_minimal_symbols): Take a
12410         gdb::function_view.
12411         * linespec.c (struct collect_minsyms): Remove.
12412         (compare_msyms): Now a std::sort comparator.
12413         (add_minsym): Add parameters.
12414         (search_minsyms_for_name): Update.  Use std::vector.
12415
12416 2018-04-03  Tom Tromey  <tom@tromey.com>
12417
12418         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12419         gdb::byte_vector.
12420
12421 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12422
12423         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12424
12425 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12426
12427         PR gdb/16959
12428         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12429         printing static type.
12430
12431 2018-04-01  Tom Tromey  <tom@tromey.com>
12432
12433         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12434         (rs6000_xfer_shared_libraries): Update.
12435
12436 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12437
12438         * common/gdb_vecs.h (char_ptr): Remove.
12439         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12440
12441 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12442
12443         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12444         with std::vector.
12445         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12446
12447 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12448
12449         * tracepoint.h (struct uploaded_tp): Initialize fields.
12450         <actions, step_actions, cmd_strings>: Change type to
12451         std::vector<char *>.
12452         * tracepoint.c (get_uploaded_tp): Allocate with new.
12453         (free_uploaded_tps): Free with delete.
12454         (parse_tracepoint_definition): Adjust to std::vector change.
12455         * breakpoint.c (read_uploaded_action): Likewise.
12456         (create_tracepoint_from_upload): Likewise.
12457         * ctf.c (ctf_write_uploaded_tp): Likewise.
12458         (SET_ARRAY_FIELD): Likewise.
12459         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12460
12461 2018-03-30  Tom Tromey  <tom@tromey.com>
12462
12463         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12464         std::unique_ptr.
12465         (svr4_keep_data_in_core): Update.
12466         (svr4_read_so_list): Update.
12467
12468 2018-03-30  Tom Tromey  <tom@tromey.com>
12469
12470         * windows-nat.c (handle_output_debug_string, handle_exception):
12471         Update.
12472         * target.h (target_read_string): Update.
12473         * target.c (target_read_string): Change "string" to
12474         unique_xmalloc_ptr.
12475         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12476         Update.
12477         * solib-frv.c (frv_current_sos): Update.
12478         * solib-dsbt.c (dsbt_current_sos): Update.
12479         * solib-darwin.c (darwin_current_sos): Update.
12480         * linux-thread-db.c (inferior_has_bug): Update.
12481         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12482         Update.  Remove alloca.
12483         * ada-lang.c (ada_main_name): Update.
12484
12485 2018-03-30  Tom Tromey  <tom@tromey.com>
12486
12487         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12488         (struct dwo_file_deleter): New.
12489         (dwo_file_up): New typedef.
12490         (open_and_init_dwo_file): Use dwo_file_up.
12491         (free_dwo_file_cleanup): Remove.
12492
12493 2018-03-30  Tom Tromey  <tom@tromey.com>
12494
12495         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12496         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12497
12498 2018-03-30  Tom Tromey  <tom@tromey.com>
12499
12500         * dwarf2read.c (class free_cached_comp_units): New class.
12501         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12502         (free_cached_comp_units): Remove function.
12503
12504 2018-03-30  Tom Tromey  <tom@tromey.com>
12505
12506         * utils.h (make_cleanup_unpush_target): Remove.
12507         * inf-ptrace.c (struct target_unpusher): New.
12508         (target_unpush_up) New typedef.
12509         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12510         target_unpush_up.
12511         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12512
12513 2018-03-27  Tom Tromey  <tom@tromey.com>
12514
12515         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12516
12517 2018-03-27  Pedro Alves  <palves@redhat.com>
12518             Tom Tromey  <tom@tromey.com>
12519
12520         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12521         destructor.  Now a class.
12522         (gdb_readline_wrapper_cleanup): Remove function.
12523         (gdb_readline_wrapper): Remove cleanups.
12524
12525 2018-03-27  Tom Tromey  <tom@tromey.com>
12526
12527         * typeprint.h (struct type_print_options) <local_typedefs,
12528         global_typedefs>: Remove "struct" keyword.
12529         (class typedef_hash_table): New class.
12530         (recursively_update_typedef_hash, add_template_parameters)
12531         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12532         (find_typedef_in_hash): Don't declare.
12533         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12534         (typedef_hash_table::recursively_update): Rename from
12535         recursively_update_typedef_hash.  Now a member.
12536         (typedef_hash_table::add_template_parameters): Rename from
12537         add_template_parameters.  Now a member.
12538         (typedef_hash_table::typedef_hash_table): Now a constructor;
12539         rename from create_typedef_hash.
12540         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12541         rename from free_typedef_hash.
12542         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12543         (do_free_global_table): Remove.
12544         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12545         from copy_type_recursive.
12546         (create_global_typedef_table): Remove.
12547         (typedef_hash_table::find_global_typedef): Now a member of
12548         typedef_hash_table.
12549         (typedef_hash_table::find_typedef): Rename from
12550         find_typedef_in_hash; now a member.
12551         (whatis_exp): Update.
12552         * extension.h (struct ext_lang_type_printers): Add constructor and
12553         destructor.
12554         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12555         declare.
12556         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12557         Now a constructor; rename from start_ext_lang_type_printers.
12558         (ext_lang_type_printers): Now a destructor; rename from
12559         free_ext_lang_type_printers.
12560         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12561         Update.
12562         (c_type_print_base_struct_union): Update.  Remove cleanups.
12563
12564 2018-03-27  Tom Tromey  <tom@tromey.com>
12565
12566         * dwarf-index-write.c: Include <cmath>.
12567
12568 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12569
12570         * NEWS: Add entry describing new "set|show varsize-limit" command.
12571         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12572         command.
12573         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12574         "set variable".
12575
12576 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12577
12578         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12579         dwarf-index-write.c
12580         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12581         * dwarf-index-common.c: New file.
12582         * dwarf-index-common.h: New file.
12583         * dwarf-index-write.c: New file.
12584         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12585         (struct dwarf2_section_info): Move from here.
12586         (dwarf2_section_info_def): Likewise.
12587         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12588         (offset_type): Likewise.
12589         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12590         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12591         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12592         (byte_swap): Likewise.
12593         (MAYBE_SWAP): Likewise.
12594         (dwarf2_per_cu_ptr): Likewise.
12595         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12596         (struct tu_stats): Likewise.
12597         (struct dwarf2_per_objfile): Likewise.
12598         (struct dwarf2_per_cu_data): Likewise.
12599         (struct signatured_type): Likewise.
12600         (sig_type_ptr): Likewise.
12601         (DEF_VEC_P (sig_type_ptr)): Likewise.
12602         (INDEX4_SUFFIX): Likewise.
12603         (INDEX5_SUFFIX): Likewise.
12604         (DEBUG_STR_SUFFIX): Likewise.
12605         (dwarf2_read_section): Make non-static.
12606         (mapped_index_string_hash): Move from here.
12607         (dwarf5_djb_hash): Likewise.
12608         (file_write): Likewise.
12609         (class data_buf): Likewise.
12610         (struct symtab_index_entry): Likewise.
12611         (struct mapped_symtab): Likewise.
12612         (find_slot): Likewise.
12613         (hash_expand): Likewise.
12614         (add_index_entry): Likewise.
12615         (uniquify_cu_indices): Likewise.
12616         (class c_str_view): Likewise.
12617         (class c_str_view_hasher): Likewise.
12618         (class vector_hasher): Likewise.
12619         (write_hash_table): Likewise.
12620         (psym_index_map): Likewise.
12621         (struct addrmap_index_data): Likewise.
12622         (add_address_entry): Likewise.
12623         (add_address_entry_worker): Likewise.
12624         (write_address_map): Likewise.
12625         (symbol_kind): Likewise.
12626         (write_psymbols): Likewise.
12627         (struct signatured_type_index_data): Likewise.
12628         (write_one_signatured_type): Likewise.
12629         (recursively_count_psymbols): Likewise.
12630         (recursively_write_psymbols): Likewise.
12631         (class debug_names): Likewise.
12632         (check_dwarf64_offsets): Likewise.
12633         (psyms_seen_size): Likewise.
12634         (write_gdbindex): Likewise.
12635         (write_debug_names): Likewise.
12636         (assert_file_size): Likewise.
12637         (write_psymtabs_to_index): Likewise.
12638         (save_gdb_index_command): Likewise.
12639         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12640         command.
12641         * dwarf2read.h: New file.
12642
12643 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12644
12645         PR gdb/22670
12646         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12647         symbol name if the CU's language stores symbol names in linkage
12648         format.
12649         * language.h (struct language_defn)
12650         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12651         all instances of this struct.
12652
12653 2018-03-26  Tom Tromey  <tom@tromey.com>
12654
12655         * stack.c (backtrace_command_1): Remove verbose code.
12656
12657 2018-03-26  Tom Tromey  <tom@tromey.com>
12658
12659         * python/py-framefilter.c (py_print_type): Don't catch
12660         exceptions.  Return void.
12661         (py_print_value): Likewise.
12662         (py_print_single_arg): Likewise.
12663         (enumerate_args): Don't catch exceptions.
12664         (py_print_args): Likewise.
12665         (py_print_frame): Likewise.
12666         (gdbpy_apply_frame_filter): Catch exceptions here.
12667
12668 2018-03-26  Tom Tromey  <tom@tromey.com>
12669
12670         * stack.c (_initialize_stack): Remove trailing newlines from help
12671         text.  Add "Usage" line to "backtrace" help.
12672
12673 2018-03-26  Tom Tromey  <tom@tromey.com>
12674
12675         PR python/16486:
12676         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12677
12678 2018-03-26  Tom Tromey  <tom@tromey.com>
12679
12680         * python/py-framefilter.c (py_print_single_arg): Return
12681         EXT_LANG_BT_ERROR from catch.
12682
12683 2018-03-26  Tom Tromey  <tom@tromey.com>
12684
12685         PR backtrace/15584:
12686         * stack.c (backtrace_command_1): Move some code into no-filters
12687         "if".
12688
12689 2018-03-26  Tom Tromey  <tom@tromey.com>
12690
12691         * python/py-framefilter.c (throw_quit_or_print_exception): New
12692         function.
12693         (gdbpy_apply_frame_filter): Use it.
12694
12695 2018-03-26  Tom Tromey  <tom@tromey.com>
12696
12697         PR cli/17716:
12698         * python/py-framefilter.c (py_print_type, py_print_value)
12699         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12700         RETURN_MASK_ERROR.
12701
12702 2018-03-26  Tom Tromey  <tom@tromey.com>
12703
12704         * python/py-framefilter.c (enumerate_args): Use
12705         gdb::unique_xmalloc_ptr.
12706
12707 2018-03-26  Tom Tromey  <tom@tromey.com>
12708
12709         * python/py-framefilter.c (py_print_frame): Return
12710         EXT_LANG_BT_OK.
12711         (gdbpy_apply_frame_filter): Update comment.
12712         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12713         Remove.
12714         <EXT_LANG_BT_NO_FILTERS>: Change value.
12715
12716 2018-03-26  Tom Tromey  <tom@tromey.com>
12717
12718         PR backtrace/15582:
12719         * stack.c (backtrace_command): Parse "hide" argument.
12720         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12721         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12722         constant.
12723
12724 2018-03-26  Tom Tromey  <tom@tromey.com>
12725
12726         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12727         add "flags".
12728         (backtrace_command): Remove "fulltrace", add "flags".
12729
12730 2018-03-26  Tom Tromey  <tom@tromey.com>
12731
12732         * stack.c (backtrace_command): Rewrite command line parsing.
12733
12734 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12735
12736         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12737
12738 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12739
12740         * filename-seen-cache.h: Add include guard.
12741
12742 2018-03-26  Keith Seitz  <keiths@redhat.com>
12743
12744         * symfile.c (place_section): Remove "struct" from section_addr_info
12745         in comment.
12746         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12747         "struct" keyword from section_addr_info.
12748
12749 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12750
12751         * regformats/regdef.h (reg): Add constructors.
12752
12753 2018-03-25  Pedro Alves  <palves@redhat.com>
12754
12755         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12756         if then/else bodies in var_func_name extraction.
12757
12758 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12759
12760         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12761         lookup_minimal_symbol() to find symbol entry.
12762         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12763
12764 2018-03-23  Keith Seitz  <keiths@redhat.com>
12765
12766         PR c++/22968
12767         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12768         nested type definitions for C++, too.
12769
12770 2018-03-23  Tom Tromey  <tom@tromey.com>
12771
12772         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12773         a typedef.
12774         (macho_register_oso): Remove.
12775         (macho_symtab_read): Take a std::vector.
12776         (oso_el_compare_name): Now a std::sort comparator.
12777         (macho_symfile_read_all_oso): Take a std::vector.
12778         (macho_symfile_read): Use std::vector.  Remove cleanups.
12779
12780 2018-03-22  Tom Tromey  <tom@tromey.com>
12781
12782         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12783         (record_full_goto_bookmark): Use std::string.
12784
12785 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12786
12787         PR tdep/18295
12788         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12789         a single mask.
12790
12791 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12792
12793         * rs6000-tdep.c (store_insn_p): New function.
12794         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12795         and cr_reg to their unshifted values. Use store_insn_p to
12796         match LR saves using either R1 or fdata->alloca_reg. Use
12797         store_insn_p to match CR saves. Set alloca_reg_offset
12798         when alloca_reg and framep are set. Remove lr_reg shift
12799         when assigning to fdata->lr_register.
12800
12801 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12802
12803         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12804         command line args instead of emitting a warning.
12805
12806 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12807
12808         * tracepoint.h (struct static_tracepoint_marker): Initialize
12809         fields, define default constructor, move constructor and move
12810         assignment, disable the rest.
12811         <str_id, extra>: Make std::string.
12812         (release_static_tracepoint_marker): Remove.
12813         (free_current_marker): Remove.
12814         * tracepoint.c (free_current_marker): Remove.
12815         (parse_static_tracepoint_marker_definition): Adjust to
12816         std::string, use new hex2str overload.
12817         (release_static_tracepoint_marker): Remove.
12818         (print_one_static_tracepoint_marker): Get marker by reference
12819         and adjust to std::string.
12820         (info_static_tracepoint_markers_command): Adjust to std::vector
12821         changes
12822         * target.h (static_tracepoint_marker_p): Remove typedef.
12823         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12824         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12825         bool.
12826         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12827         * target-debug.h
12828         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12829         (target_debug_print_std_vector_static_tracepoint_marker): New.
12830         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12831         to...
12832         (target_debug_print_static_tracepoint_marker_p): ... this.
12833         * target-delegates.c: Re-generate.
12834         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12835         Make std::string.
12836         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12837         (decode_static_tracepoint_spec): Adjust to std::vector.
12838         (tracepoint_print_one_detail): Adjust to std::string.
12839         (strace_marker_decode_location): Adjust to std::string.
12840         (update_static_tracepoint): Adjust to std::string, remove call
12841         to release_static_tracepoint_marker.
12842         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12843         Adjust to std::vector.
12844         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12845         (remote_static_tracepoint_markers_by_strid): Adjust to
12846         std::vector.
12847         * common/rsp-low.h (hex2str): New overload with explicit count
12848         of bytes.
12849         * common/rsp-low.c (hex2str): New overload with explicit count
12850         of bytes.
12851         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12852         (_initialize_rsp_low_selftests): Add test_hex2str test.
12853         * unittests/tracepoint-selftests.c
12854         (test_parse_static_tracepoint_marker_definition): Adjust to
12855         std::string.
12856
12857 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12858
12859         * tracepoint.c (parse_static_tracepoint_marker_definition):
12860         Consider case where the definition is followed by more
12861         definitions.
12862         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12863         tracepoint-selftests.c.
12864         * unittests/tracepoint-selftests.c: New.
12865
12866 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12867
12868         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12869         Carvalho.
12870
12871 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12872
12873         * symtab.c (find_pc_sect_line): fixed indentation.
12874
12875 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12876
12877         * symtab.c (find_pc_sect_line): now uses binary search.
12878
12879 2018-03-19  Tom Tromey  <tom@tromey.com>
12880
12881         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12882         "IDENT" production.
12883
12884 2018-03-19  Pedro Alves  <palves@redhat.com>
12885             Tom Tromey  <tom@tromey.com>
12886
12887         * unittests/observable-selftests.c: New file.
12888         * common/observable.h: New file.
12889         * observable.h: New file.
12890         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12891         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12892         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12893         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12894         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12895         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12896         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12897         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12898         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12899         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12900         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12901         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12902         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12903         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12904         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12905         tui/tui-interp.c, valops.c: Update all users.
12906         * tui/tui-hooks.c (tui_bp_created_observer)
12907         (tui_bp_deleted_observer, tui_bp_modified_observer)
12908         (tui_inferior_exit_observer, tui_before_prompt_observer)
12909         (tui_normal_stop_observer, tui_register_changed_observer):
12910         Remove.
12911         (tui_observers_token): New global.
12912         (attach_or_detach, tui_attach_detach_observers): New functions.
12913         (tui_install_hooks, tui_remove_hooks): Use
12914         tui_attach_detach_observers.
12915         * record-btrace.c (record_btrace_thread_observer): Remove.
12916         (record_btrace_thread_observer_token): New global.
12917         * observer.sh: Remove.
12918         * observer.c: Rename to observable.c.
12919         * observable.c (namespace gdb_observers): Define new objects.
12920         (observer_debug): Move into gdb_observers namespace.
12921         (struct observer, struct observer_list, xalloc_observer_list_node)
12922         (xfree_observer_list_node, generic_observer_attach)
12923         (generic_observer_detach, generic_observer_notify): Remove.
12924         (_initialize_observer): Update.
12925         Don't include observer.inc.
12926         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12927         (clean mostlyclean): Likewise.
12928         (observer.h, observer.inc): Remove targets.
12929         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12930         (COMMON_SFILES): Use observable.c, not observer.c.
12931         * .gitignore: Remove observer.h.
12932
12933 2018-03-18  Tom Tromey  <tom@tromey.com>
12934
12935         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12936         gdb::def_vector.
12937         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12938
12939 2018-03-17  Tom Tromey  <tom@tromey.com>
12940
12941         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12942
12943 2018-03-17  Tom Tromey  <tom@tromey.com>
12944
12945         * target.c (class scoped_target_fd): New.
12946         (target_fileio_close_cleanup): Remove.
12947         (target_fileio_read_alloc_1): Use scoped_target_fd.
12948
12949 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12950
12951         * silent-rules.mk: New.
12952         * Makefile.in: Include silent-rules.mk
12953         (srcdir, VPATH, top_srcdir): Move up.
12954         (COMPILE): Add ECHO_CXX.
12955         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12956         (init.c): Add ECHO_INIT_C.
12957         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12958         (version.c): Add ECHO_GEN.
12959         (printcmd.o): Add ECHO_CXX.
12960         (target-float.o): Add ECHO_CXX.
12961         (ada-exp.o): Add ECHO_CXX.
12962         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12963         (insight$(EXEEXT)): Add ECHO_CXXLD.
12964         * gnulib/configure.ac: Add AM_SILENT_RULES.
12965         * gnulib/aclocal.m4: Re-generate.
12966         * gnulib/configure: Re-generate.
12967         * gnulib/import/Makefile.in: Re-generate.
12968
12969 2018-03-16  Tom Tromey  <tom@tromey.com>
12970
12971         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12972         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12973         * utils.c (do_free_section_addr_info)
12974         (make_cleanup_free_section_addr_info): Remove.
12975         * symfile.h (struct other_sections): Add constructor.
12976         (struct section_addr_info): Remove.
12977         (section_addr_info): New typedef.
12978         (struct sym_fns) <sym_offsets>: Change type of parameter.
12979         (build_section_addr_info_from_objfile)
12980         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12981         (default_symfile_offsets, symbol_file_add)
12982         (symbol_file_add_from_bfd)
12983         (build_section_addr_info_from_section_table): Update.
12984         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12985         * symfile.c (alloc_section_addr_info): Remove.
12986         (build_section_addr_info_from_section_table): Change return type.
12987         Update.
12988         (build_section_addr_info_from_bfd)
12989         (build_section_addr_info_from_objfile): Likewise.
12990         (free_section_addr_info): Remove.
12991         (relative_addr_info_to_section_offsets): Change type of "addrs".
12992         (addrs_section_compar): Now a std::sort comparator.
12993         (addrs_section_sort): Change return type.
12994         (addr_info_make_relative): Change type of "addrs".  Update.
12995         (default_symfile_offsets, syms_from_objfile_1)
12996         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12997         (symbol_file_add_separate): Update.
12998         (symbol_file_add): Change type of "addrs".  Update.
12999         (add_symbol_file_command): Update.  Remove cleanups.
13000         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13001         cleanups.
13002         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13003         * solib.c (solib_read_symbols): Update.
13004         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13005         * machoread.c (macho_symfile_offsets): Update.
13006         * jit.c (jit_bfd_try_read_symtab): Update.
13007
13008 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13009
13010         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13011         unittests/utils-selftests.c.
13012         * unittests/utils-selftests.c: New file.
13013
13014 2018-03-14  Tom Tromey  <tom@tromey.com>
13015
13016         PR cli/14977:
13017         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13018         for NULL.
13019
13020 2018-03-14  Tom Tromey  <tom@tromey.com>
13021
13022         PR cli/19918:
13023         * printcmd.c (printf_pointer): Allow "-" in format.
13024
13025 2018-03-14  Tom Tromey  <tom@tromey.com>
13026
13027         * printcmd.c (_initialize_printcmd): Add usage to printf.
13028
13029 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13030
13031         * MAINTAINERS: Update my email address.
13032
13033 2018-03-13  Tom Tromey  <tom@tromey.com>
13034
13035         * machoread.c (macho_check_dsym): Change filenamep to a
13036         std::string*.
13037         (macho_symfile_read): Update.
13038         * symfile.c (load_command): Use std::string.
13039
13040 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13041
13042         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13043         to error message string.
13044         (riscv_register_name): Use xsnprintf instead of sprintf.
13045         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13046         internal_error.
13047         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13048         error.
13049         (riscv_push_dummy_call): Likewise.
13050
13051 2018-03-12  Tom Tromey  <tom@tromey.com>
13052
13053         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13054         Use gdb::byte_vector.
13055         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13056
13057 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13058
13059         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13060         parameter type to readable_regcache.
13061         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13062         the declaration.
13063
13064 2018-03-11  Tom Tromey  <tom@tromey.com>
13065
13066         * dwarf2read.c (struct nextfield): Add initializers.
13067         (struct nextfnfield): Remove.
13068         (struct fnfieldlist): Add initializers.  Remove "length" and
13069         "head", use std::vector.
13070         (struct decl_field_list): Remove.
13071         (struct field_info): Add initializers.
13072         <fields, baseclasses>: Now std::vector.
13073         <nbaseclasses, nfnfields, typedef_field_list_count,
13074         nested_types_list_count>: Remove.
13075         (dwarf2_add_field, dwarf2_add_type_defn)
13076         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13077         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13078         (process_structure_scope): Update.
13079
13080 2018-03-11  Tom Tromey  <tom@tromey.com>
13081
13082         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13083         for use by std::sort.
13084         (build_type_psymtabs_1): Use std::vector.
13085
13086 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13087
13088         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13089         and LIBMPFR in the printed configuration.
13090
13091 2018-03-08  Tom Tromey  <tom@tromey.com>
13092
13093         * source.c (get_filename_and_charpos): Use scoped_fd.
13094         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13095         (procfs_pidlist): Likewise.
13096         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13097         (iterate_over_mappings): Likewise.
13098
13099 2018-03-08  Tom Tromey  <tom@tromey.com>
13100
13101         * infcall.c (struct call_return_meta_info)
13102         <stack_temporaries_enabled>: Remove.
13103         (get_call_return_value, call_function_by_hand_dummy): Update.
13104         * thread.c (disable_thread_stack_temporaries): Remove.
13105         (enable_thread_stack_temporaries): Remove.
13106         (thread_stack_temporaries_enabled_p): Return bool.
13107         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13108         (get_last_thread_stack_temporary): Update.
13109         * eval.c (evaluate_subexp): Update.
13110         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13111         class, not a function.
13112         (value_ptr, value_vec): Remove typedefs.
13113         (class thread_info) <stack_temporaries_enabled>: Now bool.
13114         <stack_temporaries>: Now a std::vector.
13115         (thread_stack_temporaries_enabled_p)
13116         (value_in_thread_stack_temporaries): Return bool.
13117
13118 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13119
13120         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13121         (getpkt_or_notif_sane_1): Likewise.
13122
13123 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13124
13125         * build-id.c (build_id_to_debug_bfd): Use std::string.
13126
13127 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13128
13129         * build-id.c (find_separate_debug_file_by_buildid): Return
13130         std::string.
13131         * build-id.h (find_separate_debug_file_by_buildid): Return
13132         std::string.
13133         * coffread.c (coff_symfile_read): Adjust to std::string.
13134         * elfread.c (elf_symfile_read): Adjust to std::string.
13135         * symfile.c (separate_debug_file_exists): Change parameter to
13136         std::string.
13137         (find_separate_debug_file): Return std::string.
13138         (find_separate_debug_file_by_debuglink): Return std::string.
13139         * symfile.h (find_separate_debug_file_by_debuglink): Return
13140         std::string.
13141
13142 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13143
13144         * common/xml-utils.c (xml_escape_text): Move code to...
13145         (xml_escape_text_append): ... this new function.
13146         * common/xml-utils.h (xml_escape_text_append): New declaration.
13147         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13148         New function.
13149         (_initialize_xml_utils): register test_xml_escape_text_append as
13150         a selftest.
13151
13152 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13153
13154         * defs.h: Remove MAX_REGISTER_SIZE.
13155         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13156         asserts.
13157         * python/py-unwind.c (pyuw_sniffer): Likewise.
13158
13159 2018-03-07  Tom Tromey  <tom@tromey.com>
13160
13161         * linux-tdep.c (linux_info_proc): Update.
13162         * target.h (struct target_ops) <to_fileio_readlink>: Return
13163         optional<string>.
13164         (target_fileio_readlink): Return optional<string>.
13165         * remote.c (remote_hostio_readlink): Return optional<string>.
13166         * inf-child.c (inf_child_fileio_readlink): Return
13167         optional<string>.
13168         * target.c (target_fileio_readlink): Return optional<string>.
13169
13170 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13171
13172         * regcache.c (cooked_read_test): Add riscv to the list of
13173         architectures that have a save_reggroup.
13174
13175 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13176
13177         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13178         value is not a dynamic class object.
13179
13180 2018-03-06  Tom Tromey  <tom@tromey.com>
13181
13182         * rust-exp.y: Formatting fixes.
13183
13184 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13185
13186         * riscv-tdep.c (riscv_register_name): Remove target description
13187         support.
13188         (riscv_gdbarch_init): Remove target description check.
13189
13190 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13191
13192         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13193         comment.
13194         * riscv-tdep.h: Likewise.
13195
13196 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13197
13198         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13199         (riscv_pseudo_register_write): Delete.
13200         (riscv_gdbarch_init): Remove all use of pseudo registers.
13201
13202 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13203
13204         * record-btrace.c (btrace_print_lines): Replace cleanup
13205         parameter with RAII equivalents.
13206         (btrace_insn_history): Replace cleanup with RAII equivalents.
13207         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13208         make_cleanup_ui_out_tuple_begin_end): Remove.
13209         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13210         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13211         make_cleanup_ui_out_list_begin_end): Remove.
13212
13213 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13214
13215         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13216         parameter types to std::vector.  Use bool.
13217         (record_btrace_wait): Replace VEC(tp_t) with
13218         std::vector<thread_info *>.
13219         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13220
13221 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13222
13223         * record-btrace.c (record_btrace_disable_callback): Remove.
13224         (struct scoped_btrace_disable): New.
13225         (record_btrace_open): Use scoped_btrace_disable.
13226
13227 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13228
13229         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13230         reading values from registers.
13231
13232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13233
13234         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13235         where appropriate.
13236
13237 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13238
13239         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13240         change parameter type.  Use GDB's print functions, and use
13241         core_addr_to_string where appropriate.
13242         (riscv_push_dummy_call): Use core_addr_to_string where
13243         appropriate, update call to riscv_print_arg_location, and reindent
13244         a few lines.
13245         (riscv_return_value): Update call to riscv_print_arg_location.
13246
13247 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13248             Tim Newsome <tim@sifive.com>
13249             Albert Ou <a0u@eecs.berkeley.edu>
13250             Darius Rad <darius@bluespec.com>
13251
13252         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13253         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13254         (ALLDEPFILES): Add riscv-tdep.c
13255         * configure.tgt: Add riscv support.
13256         * riscv-tdep.c: New file.
13257         * riscv-tdep.h: New file.
13258         * NEWS: Mention new target.
13259         * MAINTAINERS: Add entry for riscv.
13260
13261 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13262
13263         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13264         fields within aggregates.
13265
13266 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13267
13268         * record-btrace.c (btrace_print_lines): Change type of flags to
13269         gdb_disassembly_flags.
13270
13271 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13272
13273         * fbsd-nat.c: Include "inf-ptrace.h".
13274         (USE_SIGTRAP_SIGINFO): Conditionally define.
13275         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13276         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13277         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13278         function.
13279         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13280         Likewise.
13281         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13282         Likewise.
13283         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13284         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13285         "supports_stopped_by_hw_breakpoint" target methods.
13286
13287 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13288
13289         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13290         * fbsd-nat.c (debug_fbsd_nat): New variable.
13291         (show_fbsd_nat_debug): New function.
13292         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13293         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13294
13295 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13296
13297         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13298         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13299         prototype.
13300         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13301         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13302         method.
13303
13304 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13305
13306         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13307         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13308
13309 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13310
13311         * charset.c (struct charset_vector): New.
13312         (charsets): Change type to charset_vector.
13313         (find_charset_names): Adjust.
13314         (add_one): Adjust.
13315         (_initialize_charset): Adjust.
13316
13317 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13318
13319         * progspace.h (struct program_space) <deleted_solibs>: Change
13320         type to std::vector<std::string>.
13321         * progspace.c (clear_program_space_solib_cache): Adjust.
13322         * breakpoint.c (print_solib_event): Adjust.
13323         (check_status_catch_solib): Adjust.
13324         * solib.c (update_solib_list): Adjust.
13325         * ui-out.h (class ui_out) <field_string>: New overload.
13326         * ui-out.c (ui_out::field_string): New overload.
13327
13328 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13329
13330         * progspace.h (struct program_space): Add constructor and
13331         destructor, initialize fields.
13332         (add_program_space): Remove.
13333         * progspace.c (add_program_space): Rename to...
13334         (program_space::program_space): ... this.
13335         (release_program_space): Rename to...
13336         (program_space::~program_space): ... this.
13337         (delete_program_space): Use delete to delete program_space.
13338         (initialize_progspace): Use new to allocate program_space.
13339         * inferior.c (add_inferior_with_spaces): Likewise.
13340         (clone_inferior_command): Likewise.
13341         * infrun.c (follow_fork_inferior): Likewise.
13342         (handle_vfork_child_exec_or_exit): Likewise.
13343
13344 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13345
13346         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13347         (delim_string_to_char_ptr_vec): Return std::vector of
13348         gdb::unique_xmalloc_ptr.
13349         (dirnames_to_char_ptr_vec_append): Take std::vector of
13350         gdb::unique_xmalloc_ptr.
13351         (dirnames_to_char_ptr_vec): Return std::vector of
13352         gdb::unique_xmalloc_ptr.
13353         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13354         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13355         (delim_string_to_char_ptr_vec): Return an std::vector of
13356         gdb::unique_xmalloc_ptr, adjust the code.
13357         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13358         gdb::unique_xmalloc_ptr, adjust the code.
13359         (dirnames_to_char_ptr_vec): Return an std::vector of
13360         gdb::unique_xmalloc_ptr, adjust the code.
13361         * auto-load.c (auto_load_safe_path_vec): Change type to
13362         std::vector of gdb::unique_xmalloc_ptr.
13363         (auto_load_expand_dir_vars): Return an std::vector of
13364         gdb::unique_xmalloc_ptr, adjust the code.
13365         (auto_load_safe_path_vec_update): Adjust.
13366         (filename_is_in_auto_load_safe_path_vec): Adjust.
13367         (auto_load_objfile_script_1): Adjust.
13368         * build-id.c (build_id_to_debug_bfd): Adjust.
13369         * linux-thread-db.c (thread_db_load_search): Adjust.
13370         * source.c (add_path): Adjust.
13371         (openp): Adjust.
13372         * symfile.c (find_separate_debug_file): Adjust.
13373         * utils.c (do_free_char_ptr_vec): Remove.
13374         (make_cleanup_free_char_ptr_vec): Remove.
13375
13376 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13377
13378         PR gdb/22907
13379         * common/pathstuff.c: Conditionally include "<windows.h>".
13380
13381 2018-03-01  Georg Sauthoff  <mail@georg.so>
13382
13383         PR gdb/22888
13384         * gcore.in: Quote variables and switch interpreter to bash.
13385
13386 2018-03-01  Tom Tromey  <tom@tromey.com>
13387
13388         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13389         assertion.  Add assertion for discriminant_index.
13390         (quirk_rust_enum): Use correct base type name in univariant case.
13391
13392 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13393
13394         * record.c (get_call_history_modifiers): Return a
13395         record_print_flags.
13396         (cmd_record_call_history): Adjust.
13397         * record-btrace.c (record_btrace_call_history): Adjust.
13398         (record_btrace_call_history_range): Adjust.
13399         (record_btrace_call_history_from): Adjust.
13400         * target-debug.h (target_debug_print_record_print_flags): New.
13401         * target-delegates.c: Re-generate.
13402         * target.c (target_call_history): Change flags type.
13403         (target_call_history_from): Likewise.
13404         (target_call_history_range): Likewise.
13405         * target.h (struct target_ops) <target_call_history>: Likewise.
13406         (target_call_history_from): Likewise.
13407         (target_call_history_range): Likewise.
13408
13409 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13410             Simon Marchi  <simon.marchi@polymtl.ca>
13411
13412         * common/common-utils.c: Include "sys/stat.h".
13413         (is_regular_file): Move here from "source.c"; change return
13414         type to "bool".
13415         * common/common-utils.h (is_regular_file): New prototype.
13416         * common/pathstuff.c (contains_dir_separator): New function.
13417         * common/pathstuff.h (contains_dir_separator): New prototype.
13418         * source.c: Don't include "sys/stat.h".
13419         (is_regular_file): Move to "common/common-utils.c".
13420
13421 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13422
13423         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13424         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13425         * auto-load.c: Include "common/pathstuff.h".
13426         * common/common-def.h (current_directory): Move here.
13427         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13428         function.
13429         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13430         prototype.
13431         * common/pathstuff.c: New file.
13432         * common/pathstuff.h: New file.
13433         * compile/compile.c: Include "common/pathstuff.h".
13434         * defs.h (current_directory): Move to "common/common-defs.h".
13435         * dwarf2read.c: Include "common/pathstuff.h".
13436         * exec.c: Likewise.
13437         * guile/scm-safe-call.c: Likewise.
13438         * linux-thread-db.c: Likewise.
13439         * main.c: Likewise.
13440         * nto-tdep.c: Likewise.
13441         * objfiles.c: Likewise.
13442         * source.c: Likewise.
13443         * symtab.c: Likewise.
13444         * utils.c: Include "common/pathstuff.h".
13445         (gdb_realpath): Move to "common/pathstuff.c".
13446         (gdb_realpath_keepfile): Likewise.
13447         (gdb_abspath): Likewise.
13448         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13449         (gdb_realpath_keepfile): Likewise.
13450         (gdb_abspath): Likewise.
13451
13452 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13453
13454         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13455         wildcard process pid for super_resume for kernels with a
13456         specific bug.
13457
13458 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13459
13460         * compile/compile.c (get_args): Add additional comments
13461         explaining function.
13462
13463 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13464             Tom Tromey  <tom@tromey.com>
13465
13466         * target.h (memory_write_request_s): Remove typedef.  Don't define
13467         VEC.
13468         (target_write_memory_blocks): Change argument to std::vector.
13469         (struct memory_write_request): Add constructor.
13470         * target-memory.c (compare_block_starting_address): Return bool.
13471         Change argument types.
13472         (claim_memory): Change arguments to use std::vector.
13473         (split_regular_and_flash_blocks, blocks_to_erase)
13474         (compute_garbled_blocks): Likewise.
13475         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13476         (target_write_memory_blocks): Change argument to std::vector.
13477         * symfile.c (struct load_section_data): Add constructor and
13478         destructor.  Use std::vector for "requests".
13479         (struct load_progress_data): Add initializers.
13480         (load_section_callback): Update.  Use "new".
13481         (clear_memory_write_data): Remove.
13482         (generic_load): Update.
13483
13484 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13485
13486         * arch/aarch64.h: Use common/tdesc.h.
13487
13488 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13489
13490         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13491         architecture with a 64-bit ABI.
13492
13493 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13494
13495         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13496         ahead of target description loading.
13497
13498 2018-02-26  Tom Tromey  <tom@tromey.com>
13499
13500         * stack.c (backtrace_command_1): Update.
13501         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13502         of "flags".
13503         * python/py-framefilter.c (py_print_frame)
13504         (gdbpy_apply_frame_filter): Change type of "flags".
13505         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13506         of "flags".
13507         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13508         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13509         * extension.h (enum frame_filter_flag): Rename from
13510         frame_filter_flags.
13511         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13512         (apply_ext_lang_frame_filter): Change type of "flags".
13513         * extension.c (apply_ext_lang_frame_filter): Change type of
13514         "flags".
13515         * extension-priv.h (struct extension_language_ops)
13516         <apply_frame_filter>: Change type of "flags".
13517
13518 2018-02-26  Tom Tromey  <tom@tromey.com>
13519
13520         PR python/16497:
13521         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13522         off-by-one in py_end computation.
13523         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13524         PRINT_MORE_FRAMES.
13525         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13526         constant.
13527
13528 2018-02-26  Tom Tromey  <tom@tromey.com>
13529
13530         * dwarf2read.c (struct variant_field): New.
13531         (struct nextfield) <variant>: New field.
13532         (dwarf2_add_field): Handle DW_TAG_variant_part.
13533         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13534         discriminated union.
13535         (read_structure_type): Handle DW_TAG_variant_part.
13536         (handle_struct_member_die): New function, extracted from
13537         process_structure_scope.  Handle DW_TAG_variant.
13538         (process_structure_scope): Handle discriminated unions.  Call
13539         handle_struct_member_die.
13540
13541 2018-02-26  Tom Tromey  <tom@tromey.com>
13542
13543         * rust-lang.h (rust_last_path_segment): Declare.
13544         * rust-lang.c (rust_last_path_segment): Now public.  Change
13545         contract.
13546         (struct disr_info): Remove.
13547         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13548         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13549         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13550         (rust_enum_p, rust_enum_variant): New function.
13551         (rust_underscore_fields): Remove "offset" parameter.
13552         (rust_print_enum): New function.
13553         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13554         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13555         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13556         enums.
13557         (rust_internal_print_type): New function, from rust_print_type.
13558         Remove enum code.
13559         (rust_print_type): Call rust_internal_print_type.
13560         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13561         Update enum handling.
13562         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13563         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13564         (rust_union_quirks): New functions.
13565         (process_full_comp_unit, process_full_type_unit): Call
13566         rust_union_quirks.
13567         (process_structure_scope): Update rust_unions if necessary.
13568
13569 2018-02-26  Tom Tromey  <tom@tromey.com>
13570
13571         * value.h (value_union_variant): Declare.
13572         * valops.c (value_union_variant): New function.
13573         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13574         (struct discriminant_info): New.
13575         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13576         enumerator.
13577         (struct main_type) <flag_discriminated_union>: New field.
13578
13579 2018-02-26  Tom Tromey  <tom@tromey.com>
13580
13581         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13582         unittests/unpack-selftests.c.
13583         * unittests/unpack-selftests.c: New file.
13584         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13585
13586 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13587
13588         * dwarf2read.c (struct partial_die_info) <read>: New method.
13589         (read_partial_die): Remove the declaration.
13590         (load_partial_dies): Update.
13591         (partial_die_info::partial_die_info):
13592         (read_partial_die): Change it to partial_die_info::read.
13593
13594 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13595
13596         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13597         (fixup_partial_die): Remove declaration.
13598         (scan_partial_symbols): Update.
13599         (partial_die_parent_scope): Likewise.
13600         (partial_die_full_name): Likewise.
13601         (fixup_partial_die): Change it to partial_die_info::fixup.
13602
13603 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13604
13605         * dwarf2read.c (read_partial_die): Update the declaration.
13606         (load_partial_dies): Caller update.
13607         (read_partial_die): Remove one argument abbrev_len.
13608
13609 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13610
13611         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13612         assignment operator.
13613         (load_partial_dies): Use ctor and copy ctor.
13614         (read_partial_die): Update.
13615         (dwarf2_cu::find_partial_die): Use ctor.
13616
13617 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13618
13619         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13620         (find_partial_die_in_comp_unit): Change it to
13621         dwarf2_cu::find_partial_die.
13622         (find_partial_die): Update.
13623
13624 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13625
13626         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13627         is NULL.
13628
13629 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13630
13631         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13632
13633 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13634
13635         * arch/amd64.h: Use common/tdesc.h.
13636         * arch/i386.c: Likewise.
13637         * arch/i386.h: Likewise.
13638         * arch/tic6x.c: Likewise.
13639         * arch/tdesc.h: Move file from here...
13640         * common/tdesc.h: ...to here.
13641         * features/aarch64-core.c: Regenerate.
13642         * features/aarch64-fpu.c: Regenerate.
13643         * features/i386/32bit-avx.c: Regenerate.
13644         * features/i386/32bit-avx512.c: Regenerate.
13645         * features/i386/32bit-core.c: Regenerate.
13646         * features/i386/32bit-linux.c: Regenerate.
13647         * features/i386/32bit-mpx.c: Regenerate.
13648         * features/i386/32bit-pkeys.c: Regenerate.
13649         * features/i386/32bit-sse.c: Regenerate.
13650         * features/i386/64bit-avx.c: Regenerate.
13651         * features/i386/64bit-avx512.c: Regenerate.
13652         * features/i386/64bit-core.c: Regenerate.
13653         * features/i386/64bit-linux.c: Regenerate.
13654         * features/i386/64bit-mpx.c: Regenerate.
13655         * features/i386/64bit-pkeys.c: Regenerate.
13656         * features/i386/64bit-segments.c: Regenerate.
13657         * features/i386/64bit-sse.c: Regenerate.
13658         * features/i386/x32-core.c: Regenerate.
13659         * features/tic6x-c6xp.c: Regenerate.
13660         * features/tic6x-core.c: Regenerate.
13661         * features/tic6x-gp.c: Regenerate.
13662         * target-descriptions.c: Use common/tdesc.h.
13663         * target-descriptions.h: Likewise.
13664
13665 2018-02-24  Tom Tromey  <tom@tromey.com>
13666
13667         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13668         (try_thread_db_load_from_dir, thread_db_load_search): Use
13669         std::string.
13670         (info_auto_load_libthread_db_compare): Return bool.  Change
13671         argument types.
13672         (info_auto_load_libthread_db): Use std::vector, std::string.
13673         Remove cleanups.
13674
13675 2018-02-24  Tom Tromey  <tom@tromey.com>
13676
13677         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13678         std::string.
13679         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13680         std::string*.
13681         * gdbarch.c: Rebuild.
13682         * gdbarch.h: Rebuild.
13683         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13684         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13685         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13686         std::string*.
13687
13688 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13689
13690         * gdbtypes.h (sect_offset): Change type to uint64_t.
13691         (sect_offset_str): New function.
13692         * dwarf2read.c (create_addrmap_from_aranges): Use
13693         sect_offset_str.
13694         (error_check_comp_unit_head): Likewise.
13695         (create_debug_type_hash_table): Likewise.
13696         (read_cutu_die_from_dwo): Likewise.
13697         (init_cutu_and_read_dies): Likewise.
13698         (init_cutu_and_read_dies_no_follow): Likewise.
13699         (process_psymtab_comp_unit_reader): Likewise.
13700         (partial_die_parent_scope): Likewise.
13701         (peek_die_abbrev): Likewise.
13702         (process_queue): Likewise.
13703         (dwarf2_physname): Likewise.
13704         (read_namespace_alias): Likewise.
13705         (read_import_statement): Likewise.
13706         (create_dwo_cu_reader): Likewise.
13707         (create_cus_hash_table): Likewise.
13708         (lookup_dwo_cutu): Likewise.
13709         (inherit_abstract_dies): Likewise.
13710         (read_func_scope): Likewise.
13711         (read_call_site_scope): Likewise.
13712         (dwarf2_add_member_fn): Likewise.
13713         (read_common_block): Likewise.
13714         (read_module_type): Likewise.
13715         (read_typedef): Likewise.
13716         (read_subrange_type): Likewise.
13717         (load_partial_dies): Likewise.
13718         (read_partial_die): Likewise.
13719         (find_partial_die): Likewise.
13720         (read_str_index): Likewise.
13721         (dwarf2_string_attr): Likewise.
13722         (build_error_marker_type): Likewise.
13723         (lookup_die_type): Likewise.
13724         (dump_die_shallow): Likewise.
13725         (follow_die_ref): Likewise.
13726         (dwarf2_fetch_die_loc_sect_off): Likewise.
13727         (dwarf2_fetch_constant_bytes): Likewise.
13728         (follow_die_sig): Likewise.
13729         (get_signatured_type): Likewise.
13730         (get_DW_AT_signature_type): Likewise.
13731         (dwarf2_find_containing_comp_unit): Likewise.
13732         (set_die_type): Likewise.
13733
13734 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13735
13736         * arch/aarch64.c: Include "common-defs.h".
13737         * arch/amd64.c: Likewise.
13738         * arch/i386.c: Likewise.
13739
13740 2018-02-21  Tom Tromey  <tom@tromey.com>
13741
13742         * value.h: (extract_field_op): Update.
13743         * eval.c (extract_field_op): Return a const char *.
13744         * expression.h (parse_expression_for_completion): Update.
13745         * completer.c (complete_expression): Update.
13746         (add_struct_fields): Make fieldname const.
13747         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13748         (mark_completion_tag, parse_exp_in_context_1): Update.
13749         (parse_expression_for_completion): Change "name" to
13750         unique_xmalloc_ptr*.
13751
13752 2018-02-21  Tom Tromey  <tom@tromey.com>
13753
13754         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13755
13756 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13757
13758         * avr-tdep.c (avr_read_pc): Change parameter type to
13759         readable_regcache.
13760         * gdbarch.sh (read_pc): Likewise.
13761         * gdbarch.c: Re-generated.
13762         * gdbarch.h: Re-generated.
13763         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13764         readable_regcache.
13765         * ia64-tdep.c (ia64_read_pc): Likewise.
13766         * mips-tdep.c (mips_read_pc): Likewise.
13767         * spu-tdep.c (spu_read_pc): Likewise.
13768
13769 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13770
13771         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13772         * regcache-dump.c: New file.
13773         * regcache.c: Move register_dump to regcache-dump.c.
13774         (maintenance_print_registers): Likewise.
13775         (maintenance_print_raw_registers): Likewise.
13776         (maintenance_print_cooked_registers): Likewise.
13777         (maintenance_print_register_groups): Likewise.
13778         (maintenance_print_remote_registers): Likewise.
13779         (_initialize_regcache): Likewise.
13780         * regcache.h (register_dump): Moved from regcache.c.
13781
13782 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13783
13784         * regcache.c (regcache::regcache): Update.
13785         (regcache::invalidate): Move it to detached_regcache::invalidate.
13786         (get_thread_arch_aspace_regcache): Update.
13787         (regcache::raw_update): Update.
13788         (regcache::cooked_read): Remove some code.
13789         (regcache::cooked_read_value): Likewise.
13790         (regcache::raw_write): Remove assert on m_readonly_p.
13791         (regcache::raw_supply_integer): Move it to
13792         detached_regcache::raw_supply_integer.
13793         (regcache::raw_supply_zeroed): Likewise.
13794         * regcache.h (detached_regcache) <raw_supply_integer>: New
13795         declaration.
13796         <raw_supply_zeroed, invalidate>: Likewise.
13797         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13798         <invalidate>: Likewise.
13799         <m_readonly_p>: Removed.
13800
13801 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13802
13803         * infcmd.c (get_return_value): Let stop_regs point to
13804         get_current_regcache.
13805         * regcache.c (regcache::regcache): Remove.
13806         (register_dump_reg_buffer): New class.
13807         (regcache_print): Adjust.
13808         * regcache.h (regcache): Remove constructors.
13809
13810 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13811
13812         * regcache.c (class register_dump): New class.
13813         (register_dump_regcache, register_dump_none): New class.
13814         (register_dump_remote, register_dump_groups): New class.
13815         (regcache_print): Update.
13816         * regcache.h (regcache_dump_what): Move it to regcache.c.
13817         (regcache) <dump>: Remove.
13818
13819 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13820
13821         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13822          reg_buffer_rw *.
13823         (jit_unwind_reg_set_impl): Call raw_supply.
13824         (jit_frame_sniffer): Use reg_buffer_rw.
13825         * record-full.c (record_full_core_regbuf): Change its type.
13826         (record_full_core_open_1): Use reg_buffer_rw.
13827         (record_full_close): Likewise.
13828         (record_full_core_fetch_registers): Use regcache->raw_supply.
13829         (record_full_core_store_registers): Likewise.
13830         * regcache.c (regcache::get_register_status): Move it to
13831         reg_buffer.
13832         (regcache_raw_set_cached_value): Remove.
13833         (regcache::raw_set_cached_value): Remove.
13834         (regcache::raw_write): Call raw_supply.
13835         (regcache::raw_supply): Move it to reg_buffer_rw.
13836         * regcache.h (regcache_raw_set_cached_value): Remove.
13837         (reg_buffer_rw): New class.
13838
13839 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13840
13841         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13842         readonly_detached_regcache.
13843         (dummy_frame_prev_register): Use regcache->cooked_read.
13844         * frame.c (frame_save_as_regcache): Change return type.
13845         (frame_pop): Update.
13846         * frame.h (frame_save_as_regcache): Update declaration.
13847         * inferior.h (get_infcall_suspend_state_regcache): Update
13848         declaration.
13849         * infrun.c (infcall_suspend_state) <registers>: use
13850         readonly_detached_regcache.
13851         (save_infcall_suspend_state): Don't use regcache_dup.
13852         (get_infcall_suspend_state_regcache): Change return type.
13853         * linux-fork.c (struct fork_info) <savedregs>: Change to
13854         readonly_detached_regcache.
13855         <pc>: New field.
13856         (fork_save_infrun_state): Don't use regcache_dup.
13857         (info_checkpoints_command): Adjust.
13858         * mi/mi-main.c (register_changed_p): Update declaration.
13859         (mi_cmd_data_list_changed_registers): Use
13860         readonly_detached_regcache.
13861         (register_changed_p): Change parameter type to
13862         readonly_detached_regcache.
13863         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13864         readonly_detached_regcache.
13865         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13866         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13867         New.
13868         (regcache::save): Move it to reg_buffer.
13869         (regcache::restore): Change parameter type.
13870         (regcache_dup): Remove.
13871         * regcache.h (reg_buffer) <save>: New method.
13872         (readonly_detached_regcache): New class.
13873         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13874         readonly_detached_regcache.
13875         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13876
13877 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13878
13879         * frame.c (frame_save_as_regcache): Use regcache method save.
13880         (frame_pop): Use regcache method restore.
13881         * infrun.c (restore_infcall_suspend_state): Likewise.
13882         * linux-fork.c (fork_load_infrun_state): Likewise.
13883         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13884         save.
13885         * regcache.c (regcache_save): Remove.
13886         (regcache::restore): More asserts.
13887         (regcache_cpy): Remove.
13888         * regcache.h (regcache_save): Remove the declaration.
13889         (regcache::restore): Move from private to public.
13890         Remove the friend declaration of regcache_cpy.
13891         (regcache_cpy): Remove declaration.
13892
13893 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13894
13895         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13896         parameter type to 'readable_regcache *'.
13897         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13898         * arm-tdep.c (arm_neon_quad_read): Likewise.
13899         (arm_pseudo_read): Likewise.
13900         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13901         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13902         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13903         * gdbarch.c: Re-generated.
13904         * gdbarch.h: Re-generated.
13905         * gdbarch.sh (pseudo_register_read): Change parameter type to
13906         'readable_regcache *'.
13907         (pseudo_register_read_value): Likewise.
13908         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13909         (h8300_pseudo_register_read): Likewise.
13910         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13911         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13912         (i386_pseudo_register_read_into_value): Likewise.
13913         (i386_pseudo_register_read_value): Likewise.
13914         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13915         declaration.
13916         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13917         * m32c-tdep.c (m32c_raw_read): Likewise.
13918         (m32c_read_flg): Likewise.
13919         (m32c_banked_register): Likewise.
13920         (m32c_banked_read): Likewise.
13921         (m32c_sb_read): Likewise.
13922         (m32c_part_read): Likewise.
13923         (m32c_cat_read): Likewise.
13924         (m32c_r3r2r1r0_read): Likewise.
13925         (m32c_pseudo_register_read): Likewise.
13926         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13927         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13928         (mep_pseudo_cr64_read): Likewise.
13929         (mep_pseudo_register_read): Likewise.
13930         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13931         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13932         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13933         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13934         (regcache::cooked_read): Likewise.
13935         (regcache::cooked_read_value): Likewise.
13936         (regcache_cooked_read_signed):
13937         (regcache::cooked_read): Likewise.
13938         * regcache.h (readable_regcache): New class.
13939         (regcache): Inherit readable_regcache.  Move some methods to
13940         readable_regcache.
13941         * rl78-tdep.c (rl78_pseudo_register_read): Change
13942         parameter type to 'readable_regcache *'.
13943         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13944         (e500_pseudo_register_read): Change parameter type to
13945         'readable_regcache *'.
13946         (dfp_pseudo_register_read): Likewise.
13947         (vsx_pseudo_register_read): Likewise.
13948         (efpr_pseudo_register_read): Likewise.
13949         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13950         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13951         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13952         (sh64_pseudo_register_read): Likewise.
13953         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13954         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13955         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13956         (spu_pseudo_register_read): Likewise.
13957         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13958         (xtensa_pseudo_register_read): Likewise.
13959
13960 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13961
13962         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13963         (regcache::arch): Move it to reg_buffer::arch.
13964         (regcache::register_buffer): Likewise.
13965         (regcache::assert_regnum): Likewise.
13966         (regcache::num_raw_registers): Likewise.
13967         * regcache.h (reg_buffer): New class.
13968         (regcache): Inherit reg_buffer.
13969
13970 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13971
13972         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13973         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13974
13975 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13976
13977         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13978
13979 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13980
13981         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13982         (SFILES): Remove common/*.c files.
13983         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13984         * common/common.host: Add common reference.
13985         * configure.ac: Likewise.
13986         * configure: Regenerate.
13987
13988 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13989
13990         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13991         (block_initialize_namespace): Use new.
13992         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13993         (dwarf2_free_objfile): Use delete.
13994         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13995         (copy_type_recursive): Use new.
13996         * gdb_obstack.h (allocate_on_obstack): New.
13997
13998 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13999
14000         PR gdb/22849
14001         * inferior.c (exit_inferior_1): Reset inf->control.
14002
14003 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14004
14005         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14006         declaration.
14007
14008 2018-02-14  Pedro Alves  <palves@redhat.com>
14009
14010         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14011         frame_cleanup_after_sniffer on exception.
14012
14013 2018-02-14  Tom Tromey  <tom@tromey.com>
14014
14015         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14016         const.
14017         (solib_bfd_open): Make pathname const.
14018         * solib.c (solib_bfd_open): Make pathname const.
14019         * solib-spu.c (spu_bfd_fopen): Make name const.
14020         (spu_bfd_open): Make pathname const.
14021         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14022         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14023
14024 2018-02-14  Tom Tromey  <tom@tromey.com>
14025
14026         * symfile.c (symfile_bfd_open): Update.
14027         * source.h (openp, source_full_path_of, find_and_open_source):
14028         Change argument type to unique_xmalloc_ptr.
14029         * source.c (openp): Take a unique_xmalloc_ptr.
14030         (source_full_path_of, find_and_open_source): Likewise.
14031         (open_source_file, symtab_to_fullname): Update.
14032         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14033         unique_xmalloc_ptr.
14034         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14035         (exec_file_find): Update.
14036         * psymtab.c (psymtab_to_fullname): Update.
14037         * nto-tdep.h (nto_find_and_open_solib): Update.
14038         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14039         unique_xmalloc_ptr.
14040         * exec.c (exec_file_attach): Update.
14041         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14042         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14043
14044 2018-02-14  Tom Tromey  <tom@tromey.com>
14045
14046         * solib.c: Include source.h.
14047         * nto-tdep.c: Include source.h.
14048         * mi/mi-cmd-env.c: Include source.h.
14049         * infcmd.c: Include source.h.
14050         * exec.c: Include source.h.
14051         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14052         (add_path, directory_switch, source_path, init_source_path): Move
14053         declarations...
14054         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14055         (add_path, directory_switch, source_path, init_source_path):
14056         ...here.
14057
14058 2018-02-14  Tom Tromey  <tom@tromey.com>
14059
14060         * solist.h (exec_file_find, solib_find): Return
14061         unique_xmalloc_ptr.
14062         (solib_bfd_fopen): Take a const char *.
14063         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14064         (exec_file_find, solib_find): Likewise.
14065         (solib_bfd_fopen): Do not take ownership of "pathname".
14066         (solib_bfd_open): Use unique_xmalloc_ptr.
14067         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14068         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14069         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14070         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14071
14072 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14073
14074         * ada-lang.c (name_match_type_from_name): Remove reference to
14075         ada_name_for_lookup in function's documentation.
14076         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14077
14078 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14079
14080         * defs.h (enum openp_flags): New enum.
14081         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14082         Move to enum openp_flags.
14083         (openp_flags): New enum flags.
14084         (openp): Change parameter type to openp_flags.
14085         * source.c (openp): Change parameter type to openp_flags.
14086         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14087         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14088
14089 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14090
14091         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14092         per-command.
14093
14094 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14095
14096         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14097         into...
14098         (class dwarf2_queue_guard): ...the destructor of this new class.
14099         (dw2_do_instantiate_symtab): Create instance of the new class
14100         dwarf2_queue_guard, remove cleanup.
14101
14102 2018-02-09  Tom Tromey  <tom@tromey.com>
14103
14104         * source.c (find_source_lines): Don't reference past the end of
14105         the vector.
14106
14107 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14108
14109         * remote.c (remote_btrace_maybe_reopen): Change error message.
14110         * btrace.c (btrace_enable): Likewise.
14111         (parse_xml_btrace): Likewise.
14112         (parse_xml_btrace_conf): Likewise.
14113
14114 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14115
14116         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14117         (linux_enable_pt, linux_enable_bts): Call
14118         diagnose_perf_event_open_fail.
14119
14120 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14121
14122         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14123         Remove parameter and change return type.  Update callers.  Move it.
14124         (linux_enable_bts, linux_enable_pt): Improve error message.
14125         (linux_enable_pt): Remove zero buffer size check.
14126         (linux_enable_btrace): Improve error messages.  Remove NULL return
14127         check.
14128
14129 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14130
14131         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14132         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14133         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14134         (linux_supports_pt, linux_supports_btrace): Remove.
14135         (linux_enable_bts): Call cpu_supports_bts.
14136         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14137         * remote.c (remote_supports_btrace): Remove.
14138         (init_remote_ops): Remove remote_supports_btrace.
14139         * target-delegates.c: Regenerated.
14140         * target.c (target_supports_btrace): Remove.
14141         * target.h (target_ops) <to_supports_btrace>: Remove
14142         (target_supports_btrace): Remove.
14143         * x86-linux-nat.c (x86_linux_create_target): Remove
14144         linux_supports_btrace.
14145
14146 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14147
14148         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14149         btrace failed.
14150         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14151         exception and use message in own exception.
14152
14153 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14154
14155         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14156         (perf_event_pt_event_type): Use gdb_file_up.
14157         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14158         scoped_fd, and scoped_mmap.
14159
14160 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14161
14162         * common/scoped_mmap.h: New.
14163         * unittests/scoped_mmap-selftest.c: New.
14164         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14165         unittests/scoped_mmap-selftest.c.
14166
14167 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14168
14169         * common/scoped_fd.h: New.
14170         * unittests/scoped_fd-selftest.c: New.
14171         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14172         unittests/scoped_fd-selftest.c.
14173
14174 2018-02-09  Tom Tromey  <tom@tromey.com>
14175
14176         * auto-load.c (auto_load_section_scripts): Use
14177         gdb::unique_xmalloc_ptr.
14178
14179 2018-02-09  Tom Tromey  <tom@tromey.com>
14180
14181         * auto-load.c (execute_script_contents): Use std::string.
14182
14183 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14184
14185         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14186         Python function, rather than a new command.
14187
14188 2018-02-08  Tom Tromey  <tom@tromey.com>
14189
14190         * solib.c (solib_find_1): Use std::string.
14191         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14192
14193 2018-02-08  Tom Tromey  <tom@tromey.com>
14194
14195         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14196
14197 2018-02-08  Tom Tromey  <tom@tromey.com>
14198
14199         * source.c (find_source_lines): Use gdb::def_vector.
14200
14201 2018-02-08  Tom Tromey  <tom@tromey.com>
14202
14203         * macrocmd.c (struct temporary_macro_definition): New.
14204         (macro_define_command): Use temporary_macro_definition.  Remove
14205         cleanups.
14206         (free_macro_definition_ptr): Remove.
14207
14208 2018-02-08  Tom Tromey  <tom@tromey.com>
14209
14210         * macroexp.c (maybe_expand): Use std::string.
14211
14212 2018-02-08  Tom Tromey  <tom@tromey.com>
14213
14214         * macroexp.c (struct macro_buffer): Add initializers for some
14215         members.
14216         (init_buffer, init_shared_buffer, free_buffer)
14217         (free_buffer_return_text): Remove.
14218         (macro_buffer): New constructors.
14219         (~macro_buffer): New destructor.
14220         (macro_buffer::set_shared): New method.
14221         (macro_buffer::resize_buffer, macro_buffer::appendc)
14222         (macro_buffer::appendmem): Now methods, not free functions.
14223         (set_token, append_tokens_without_splicing, stringify)
14224         (macro_stringify): Update.
14225         (gather_arguments): Change return type.  Remove argc_p argument,
14226         add args_ptr argument.  Use std::vector.
14227         (substitute_args): Remove argc argument.  Accept std::vector.
14228         (expand): Update.  Use std::vector.
14229         (scan, macro_expand, macro_expand_next): Update.
14230
14231 2018-02-08  Tom Tromey  <tom@tromey.com>
14232
14233         * symtab.c (default_collect_symbol_completion_matches_break_on):
14234         Use unique_xmalloc_ptr.
14235         * macroscope.h: (sal_macro_scope, user_macro_scope)
14236         (default_macro_scope): Return unique_xmalloc_ptr.
14237         * macroscope.c (sal_macro_scope, user_macro_scope)
14238         (default_macro_scope): Return unique_xmalloc_ptr.
14239         * macroexp.h (macro_expand, macro_expand_once): Return
14240         unique_xmalloc_ptr.
14241         * macroexp.c (macro_expand, macro_expand_once): Return
14242         unique_xmalloc_ptr.
14243         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14244         (info_macro_command, info_macros_command): Use
14245         unique_xmalloc_ptr.
14246         * compile/compile-c-support.c (write_macro_definitions): Use
14247         unique_xmalloc_ptr.
14248         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14249
14250 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14251
14252         * value.c (value_static_field): Assign field type instead of
14253         containing type when returning an optimized out value.
14254
14255 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14256
14257         * ft32-tdep.c (ft32_read_pc): Remove.
14258         (ft32_write_pc): Remove.
14259         (ft32_gdbarch_init): Update.
14260         * m32r-tdep.c (m32r_read_pc): Remove.
14261         (m32r_gdbarch_init): Update.
14262         * mep-tdep.c (mep_read_pc): Remove.
14263         (mep_gdbarch_init): Update.
14264         * microblaze-tdep.c (microblaze_write_pc): Remove.
14265         (microblaze_gdbarch_init): Update.
14266         * mn10300-tdep.c (mn10300_read_pc): Remove.
14267         (mn10300_write_pc): Remove.
14268         (mn10300_gdbarch_init): Update.
14269         * moxie-tdep.c (moxie_read_pc): Remove.
14270         (moxie_write_pc): Remove.
14271         (moxie_gdbarch_init): Update.
14272
14273 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14274
14275         * expprint.c (print_subexp_standard): Handle
14276         OP_F77_UNDETERMINED_ARGLIST.
14277         (dump_subexp_body_standard): Likewise.
14278
14279 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14280
14281         * target-descriptions.c (tdesc_element_visitor) Add empty
14282         implementations.
14283         (tdesc_type): Move make_gdb_type from here.
14284         (tdesc_type_builtin): Likewise.
14285         (tdesc_type_vector): Likewise.
14286         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14287         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14288         (make_gdb_type_union): Likewise.
14289         (make_gdb_type_flags): Likewise.
14290         (make_gdb_type_enum): Likewise.
14291         (make_gdb_type): New function.
14292         (tdesc_register_type): Use static make_gdb_type.
14293
14294 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14295
14296         * infcmd.c (default_print_one_register_info): Align natural-format
14297         column values consistently one under another.
14298         (pad_to_column): New function.
14299
14300 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14301
14302         * dwarf2read.c (dwarf2_physname): Move commment.
14303
14304 2018-02-01  Leszek Swirski  <leszeks@google.com>
14305
14306         * varobj.c (varobj_formatted_print_options): Allow recursive
14307         pretty printing if pretty printing is enabled.
14308
14309 2018-02-01  Leszek Swirski  <leszeks@google.com>
14310
14311         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14312         names after a structop as a filename.
14313
14314 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14315
14316         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14317         (arm_record_coproc_data_proc): Likewise.
14318
14319 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14320
14321         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14322
14323 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14324
14325         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14326         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14327
14328 2018-01-31  Pedro Alves  <palves@redhat.com>
14329
14330         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14331         * inflow.c (child_terminal_save_inferior): Wrap reference to
14332         tcgetpgrp in HAVE_TERMIOS_H.
14333         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14334         _WIN32.
14335         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14336         always iterate over all inferiors.
14337         (gdbsim_cntrl_c): Adjust.
14338         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14339
14340 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14341
14342         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14343         index type is objfile-owned if the element type is as well.
14344
14345 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14346
14347         GDB 8.1 released.
14348
14349 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14350
14351         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14352         "features/s390x-linux64.c".
14353         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14354         s390_linux32 and s390x_linux64.
14355         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14356         default tdesc.
14357         * s390-tdep.c: Include "features/s390-linux32.c" and
14358         "features/s390x-linux64.c".
14359         (s390_tdesc_valid): Add check for tdesc_has_registers.
14360         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14361         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14362         tdesc_s390x_linux64.
14363         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14364         tdesc_s390x_linux64 to...
14365         * s390-tdep.h: ...here.
14366
14367 2018-01-30  Pedro Alves  <palves@redhat.com>
14368
14369         PR gdb/13211
14370         * config.in, configure: Regenerate.
14371         * configure.ac: Check for getpgid.
14372         * go32-nat.c (go32_pass_ctrlc): New.
14373         (go32_target): Install it.
14374         * inf-child.c (inf_child_target): Install
14375         child_terminal_save_inferior, child_pass_ctrlc and
14376         child_interrupt.
14377         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14378         (inf_ptrace_target): No longer install it.
14379         * infcmd.c (interrupt_target_1): Adjust.
14380         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14381         (child_interrupt): Declare.
14382         (inferior::terminal_state): New.
14383         * inflow.c (struct terminal_info): Update comments.
14384         (inferior_process_group): Delete.
14385         (terminal_is_ours): Delete.
14386         (gdb_tty_state): New.
14387         (child_terminal_init): Adjust.
14388         (is_gdb_terminal, sharing_input_terminal_1)
14389         (sharing_input_terminal): New functions.
14390         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14391         Set the process's actual process group in the foreground if
14392         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14393         mark terminal as the inferior's if not sharing GDB's terminal.
14394         Don't check attach_flag.
14395         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14396         pass down a target_terminal_state.
14397         (child_terminal_save_inferior): New, factored out from ...
14398         (child_terminal_ours_1): ... this.  Handle
14399         target_terminal_state::is_ours_for_output.
14400         (child_interrupt, child_pass_ctrlc): New.
14401         (inflow_inferior_exit): Clear the inferior's terminal_state.
14402         (copy_terminal_info): Copy the inferior's terminal state.
14403         (_initialize_inflow): Remove reference to terminal_is_ours.
14404         * inflow.h (inferior_process_group): Delete.
14405         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14406         * procfs.c (procfs_target): Don't install procfs_interrupt.
14407         (procfs_interrupt): Delete.
14408         * remote.c (remote_serial_quit_handler): Adjust.
14409         (remote_interrupt): Remove ptid parameter.  Adjust.
14410         * target-delegates.c: Regenerate.
14411         * target.c: Include "terminal.h".
14412         (target_terminal::terminal_state): Rename to ...
14413         (target_terminal::m_terminal_state): ... this.
14414         (target_terminal::init): Adjust.
14415         (target_terminal::inferior): Adjust to per-inferior
14416         terminal_state.
14417         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14418         (target_terminal::ours, target_terminal::ours_for_output): Use
14419         target_terminal_is_ours_kind.
14420         (target_interrupt): Remove ptid parameter.  Adjust.
14421         (default_target_pass_ctrlc): Adjust.
14422         * target.h (target_ops::to_terminal_save_inferior): New field.
14423         (target_ops::to_interrupt): Remove ptid_t parameter.
14424         (target_interrupt): Remove ptid_t parameter.  Update comment.
14425         (target_pass_ctrlc): Update comment.
14426         * target/target.h (target_terminal_state): New scoped enum,
14427         factored out of ...
14428         (target_terminal::terminal_state): ... here.
14429         (target_terminal::inferior): Update comments.
14430         (target_terminal::restore_inferior): New.
14431         (target_terminal::is_inferior, target_terminal::is_ours)
14432         (target_terminal::is_ours_for_output): Adjust.
14433         (target_terminal::scoped_restore_terminal_state): Adjust to
14434         rename, and call restore_inferior() instead of inferior().
14435         (target_terminal::scoped_restore_terminal_state::m_state): Change
14436         type.
14437         (target_terminal::terminal_state): Rename to ...
14438         (target_terminal::m_terminal_state): ... this and change type.
14439
14440 2018-01-30  Pedro Alves  <palves@redhat.com>
14441
14442         * linux-nat.c (wait_for_signal): New function.
14443         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14444         directly.
14445         (async_terminal_is_ours)
14446         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14447         (linux_nat_add_target): Don't override
14448         to_terminal_inferior/to_terminal_ours.
14449
14450 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14451
14452         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14453
14454 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14455
14456         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14457         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14458         dwarf2_per_objfile_free here.
14459         (dwarf2_per_objfile_free): Remove.
14460         (_initialize_dwarf2_read): Don't register
14461         dwarf2_per_objfile_free as a registry cleanup.
14462
14463 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14464
14465         Avoid compilation errors in MinGW native builds
14466
14467         The error is triggered by including python-internal.h, and the
14468         error message is:
14469
14470              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14471                       from build-gnulib/import/math.h:27,
14472                       from d:/usr/Python26/include/pyport.h:235,
14473                       from d:/usr/Python26/include/Python.h:58,
14474                       from python/python-internal.h:94,
14475                       from python/py-arch.c:24:
14476              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14477         using ::hypot;
14478                 ^~~~~
14479
14480         This happens because Python headers define 'hypot' to expand t
14481         '_hypot' in the Windows builds.
14482         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14483         'hypoth'.  This avoids a compilation error.
14484
14485 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14486
14487         * MAINTAINERS (Write After Approval): Fix ordering.
14488
14489 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14490
14491         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14492
14493 2018-01-26  Alan Modra  <amodra@gmail.com>
14494
14495         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14496         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14497         Remove nop.  Make const.  Comment.
14498         (powerpc32_plt_stub_so_2): New.
14499         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14500         Correct count.  Update uses.
14501         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14502         Move common code reading PLT entry word.  Correct
14503         powerpc32_plt_stub PLT address calculation.
14504         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14505         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14506         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14507         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14508         (ppc64_standard_linkage8): Likewise.
14509         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14510         Correct insns description.
14511         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14512
14513 2018-01-24  Pedro Alves  <palves@redhat.com>
14514
14515         GCC PR libstdc++/83906
14516         * gdbtypes.c (operator==(const dynamic_prop &,
14517         const dynamic_prop &)): New.
14518         (operator==(const range_bounds &, const range_bounds &)): New.
14519         (check_types_equal): Use them instead of memcmp.
14520         * gdbtypes.h (operator==(const dynamic_prop &,
14521         const dynamic_prop &)): Declare.
14522         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14523         (operator==(const range_bounds &, const range_bounds &)): Declare.
14524         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14525
14526 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14527
14528         * s390-linux-tdep.c (s390_record_address_mask)
14529         (s390_record_calc_disp_common, s390_record_calc_disp)
14530         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14531         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14532         (s390_process_record): Move to s390-tdep.c.
14533         (s390_linux_init_abi_any): Adjust.
14534         * s390-tdep.c (s390_record_address_mask)
14535         (s390_record_calc_disp_common, s390_record_calc_disp)
14536         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14537         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14538         (s390_process_record): Moved from s390-linux-tdep.c
14539         (s390_gdbarch_init): Adjust.
14540
14541 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14542
14543         * s390-linux-nat.c (s390-tdep.h): New include.
14544         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14545         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14546         (ALLDEPFILES): Add s390-tdep.c.
14547         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14548         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14549         * s390-tdep.h: ...this.  New file.
14550         * s390-linux-tdep.c (s390-tdep.h): New include.
14551         (_initialize_s390_tdep): Rename to...
14552         (_initialize_s390_linux_tdep): ...this and adjust.
14553         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14554         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14555         s390-tdep.h.
14556         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14557         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14558         (s390_is_partial_instruction, s390_software_single_step)
14559         (is_non_branch_ril, s390_displaced_step_copy_insn)
14560         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14561         (s390_prologue_data, s390_addr, s390_store, s390_load)
14562         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14563         (s390_register_call_saved, s390_guess_tracepoint_registers)
14564         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14565         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14566         (s390_pseudo_register_name, s390_pseudo_register_type)
14567         (s390_pseudo_register_read, s390_pseudo_register_write)
14568         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14569         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14570         (s390_addr_bits_remove, s390_address_class_type_flags)
14571         (s390_address_class_type_flags_to_name)
14572         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14573         (s390_function_arg_float, s390_function_arg_vector)
14574         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14575         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14576         (s390_frame_align, s390_register_return_value, s390_return_value)
14577         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14578         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14579         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14580         (s390_trad_frame_prev_register, s390_unwind_cache)
14581         (s390_prologue_frame_unwind_cache)
14582         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14583         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14584         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14585         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14586         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14587         (s390_frame_base_address, s390_local_base_address)
14588         (s390_frame_base, s390_gcc_target_options)
14589         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14590         (s390_validate_reg_range, s390_tdesc_valid)
14591         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14592         * s390-tdep.c: ...this.  New file.
14593
14594 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14595
14596         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14597         (s390_process_record, s390_gdbarch_tdep_alloc)
14598         (s390_linux_init_abi_any): Use/set new hook.
14599
14600 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14601
14602         * s390-linux-tdep.c (osabi.h): New include.
14603         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14604         (s390_linux_init_abi_any): New functions.
14605         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14606
14607 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14608
14609         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14610         tdesc_has_registers check
14611
14612 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14613
14614         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14615         (s390_validate_reg_range): New macro.
14616         (s390_gdbarch_init): Adjust.
14617
14618 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14619
14620         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14621         (s390_gdbarch_tdep_alloc): Adjust.
14622         (s390_gdbarch_init): Adjust.
14623
14624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14625
14626         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14627         <have_tdb>: Change type to bool.
14628         (s390_gdbarch_tdep_alloc): Adjust.
14629         (s390_gdbarch_init): Adjust.
14630
14631 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14632
14633         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14634         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14635         (s390_gdbarch_tdep_alloc): New function.
14636         (s390_gdbarch_init): Allocate tdep at start and use its fields
14637         instead of separate variables.
14638
14639 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14640
14641         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14642         when looking for cached gdbarch and add comment for remaining.
14643
14644 2018-01-22  Pedro Alves  <palves@redhat.com>
14645             Sergio Durigan Junior  <sergiodj@redhat.com>
14646
14647         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14648         case.
14649
14650 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14651
14652         * MAINTAINERS: Update my company e-mail address.
14653
14654 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14655
14656         * regcache.c (cooked_write_test): New function.
14657         (_initialize_regcache): Register the test.
14658
14659 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14660
14661         * ia64-tdep.c (ia64_pseudo_register_read): Call
14662         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14663         * m32c-tdep.c (m32c_cat_read): Likewise.
14664         (m32c_r3r2r1r0_read): Likewise.
14665         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14666         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14667
14668 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14669
14670         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14671         method raw_read instead of regcache_raw_read.
14672         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14673         * arm-tdep.c (arm_neon_quad_read): Likewise.
14674         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14675         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14676         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14677         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14678         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14679         (i386_pseudo_register_read_into_value): Likewise.
14680         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14681         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14682         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14683         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14684         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14685         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14686         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14687         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14688         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14689
14690 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14691
14692         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14693         * configure.tgt: Remove target mt.
14694         * mt-tdep.c: Remove.
14695         * regcache.c (cooked_read_test): Remove the check for mt.
14696
14697 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14698
14699         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14700         instead of gdbarch_pseudo_register_read_value.
14701
14702 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14703
14704         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14705         language is Ada.
14706
14707 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14708
14709         * linespec.c (create_sals_line_offset): Remove code that preserved
14710         the symtab_and_line's line number.
14711
14712 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14713
14714         * varobj.c (varobj_create): Don't set valid_block when creating a
14715         floating varobj.
14716
14717 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14718
14719         * varobj.c (varobj_create): Remove out of date comment.
14720
14721 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14722
14723         PR mi/20395
14724         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14725         updating innermost block.
14726         * parse.c (innermost_block_tracker::update): Take extra type
14727         parameter, and check types match before updating innermost block.
14728         (write_dollar_variable): Update innermost block for registers.
14729         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14730         (innermost_block_tracker::innermost_block_tracker): Initialise
14731         m_types member.
14732         (innermost_block_tracker::reset): Take type parameter.
14733         (innermost_block_tracker::update): Take type parameter, and pass
14734         type through as needed.
14735         (innermost_block_tracker::m_types): New member.
14736         * varobj.c (varobj_create): Pass type when reseting innermost
14737         block.
14738
14739 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14740
14741         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14742         * ada-lang.c (resolve_subexp): Likewise.
14743         * breakpoint.c (set_breakpoint_condition) Likewise.
14744         (watch_command_1) Likewise.
14745         * c-exp.y (variable): Likewise.
14746         * d-exp.y (PrimaryExpression): Likewise.
14747         * f-exp.y (variable): Likewise.
14748         * go-exp.y (variable): Likewise.
14749         * m2-exp.y (variable): Likewise.
14750         * objfiles.c (objfile::~objfile): Likewise.
14751         * p-exp.y (variable): Likewise.
14752         * parse.c (innermost_block): Change type.
14753         * parser-defs.h (class innermost_block_tracker): New.
14754         (innermost_block): Change to innermost_block_tracker.
14755         * printcmd.c (display_command): Switch to innermost_block API.
14756         (do_one_display): Likewise.
14757         * rust-exp.y (do_one_display): Likewise.
14758         * symfile.c (clear_symtab_users): Likewise.
14759         * varobj.c (varobj_create): Switch to innermost_block API, replace
14760         use of innermost_block with block stored on varobj object.
14761
14762 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14763
14764         * expression.h (innermost_block): Remove declaration.
14765         * varobj.c: Add 'parser-defs.h' include.
14766
14767 2018-01-19  Tom Tromey  <tom@tromey.com>
14768
14769         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14770         symbols in the static and global blocks.
14771
14772 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14773
14774         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14775         gdb_ptrace.h, and move including gdb_wait.h ...
14776         * nat/linux-ptrace.h: ... to here.
14777
14778 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14779
14780         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14781         inf_ptrace_detach_success.
14782         (inf_ptrace_detach_success): Add inferior parameter, use it
14783         instead of inferior_ptid, pass it to detach_inferior.
14784         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14785         parameter.
14786         * inferior.c (detach_inferior): Add overload that takes an
14787         inferior object.
14788         * inferior.h (detach_inferior): Likewise.
14789         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14790         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14791         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14792
14793 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14794
14795         * target.h (struct target_ops) <to_detach>: Add inferior
14796         parameter.
14797         (target_detach): Likewise.
14798         * target.c (dispose_inferior): Pass inferior down.
14799         (target_detach): Pass inferior down.  Assert that it is equal to
14800         the current inferior.
14801         * aix-thread.c (aix_thread_detach): Pass inferior down.
14802         * corefile.c (core_file_command): Pass current_inferior() down.
14803         * corelow.c (core_detach): Add inferior parameter.
14804         * darwin-nat.c (darwin_detach): Likewise.
14805         * gnu-nat.c (gnu_detach): Likewise.
14806         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14807         * infcmd.c (detach_command): Pass current_inferior() down to
14808         target_detach.
14809         * infrun.c (follow_fork_inferior): Pass parent_inf to
14810         target_detach.
14811         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14812         target_detach.
14813         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14814         * linux-thread-db.c (thread_db_detach): Likewise.
14815         * nto-procfs.c (procfs_detach): Likewise.
14816         * procfs.c (procfs_detach): Likewise.
14817         * record.c (record_detach): Likewise.
14818         * record.h (struct inferior): Forward-declare.
14819         (record_detach): Add inferior parameter.
14820         * remote-sim.c (gdbsim_detach): Likewise.
14821         * remote.c (remote_detach_1): Likewise.
14822         (remote_detach): Likewise.
14823         (extended_remote_detach): Likewise.
14824         * sol-thread.c (sol_thread_detach): Likewise.
14825         * target-debug.h (target_debug_print_inferior_p): New macro.
14826         * target-delegates.c: Re-generate.
14827         * top.c (kill_or_detach): Pass inferior down to target_detach.
14828         * windows-nat.c (windows_detach): Add inferior parameter.
14829
14830 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14831
14832         * target.h (struct target_ops) <to_detach>: Remove args
14833         parameter.
14834         (target_detach): Likewise.
14835         * target.c (dispose_inferior): Adjust.
14836         (target_detach): Remove args parameter, adjust.
14837         * aix-thread.c (aix_thread_detach): Adjust.
14838         * corefile.c (core_file_command): Adjust.
14839         * corelow.c (core_detach): Adjust.
14840         * darwin-nat.c (darwin_detach): Adjust.
14841         * gnu-nat.c (gnu_detach): Adjust.
14842         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14843         * infcmd.c (detach_command): Adjust
14844         * infrun.c (follow_fork_inferior): Adjust.
14845         (handle_vfork_child_exec_or_exit): Adjust.
14846         * linux-fork.c (linux_fork_detach): Remove args parameter.
14847         * linux-fork.h (linux_fork_detach): Likewise.
14848         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14849         * linux-thread-db.c (thread_db_detach): Likewise.
14850         * nto-procfs.c (procfs_detach): Likewise.
14851         * procfs.c (procfs_detach): Likewise.
14852         (do_detach): Remove signo parameter.
14853         * record.c (record_detach): Remove args parameter.
14854         * record.h (record_detach): Likewise.
14855         * remote-sim.c (gdbsim_detach): Likewise.
14856         * remote.c (remote_detach_1): Likewise.
14857         (remote_detach): Likewise.
14858         (extended_remote_detach): Likewise.
14859         * sol-thread.c (sol_thread_detach): Likewise.
14860         * target-delegates.c: Re-generate.
14861         * top.c (struct qt_args) <args>: Remove field.
14862         (kill_or_detach): Don't pass args.
14863         (quit_force): Don't set args.
14864         * windows-nat.c (windows_detach): Remove args parameter.
14865
14866 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14867
14868         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14869         (arm_linux_init_abi): Install it.
14870
14871 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14872
14873         * osabi.c (gdb_osabi_names): Extend the regexp for
14874         arm-linux-gnueabihf.
14875
14876 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14877
14878         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14879         m_abbrevs.
14880         (abbrev_table::add_abbrev): Update.
14881         (abbrev_table::lookup_abbrev): Update.
14882
14883 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14884
14885         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14886
14887 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14888
14889         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14890         to "std::string".
14891
14892 2018-01-17  Tom Tromey  <tom@tromey.com>
14893
14894         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14895
14896 2018-01-17  Tom Tromey  <tom@tromey.com>
14897
14898         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14899         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14900         (create_array_type_with_stride): Update.
14901         * dwarf2read.c (set_die_type): Update.
14902
14903 2018-01-17  Tom Tromey  <tom@tromey.com>
14904
14905         * dwarf2read.c (delayed_method_info): Remove typedef.
14906         (dwarf2_cu::method_info): Now a std::vector.
14907         (add_to_method_list): Update.
14908         (free_delayed_list): Remove.
14909         (compute_delayed_physnames): Update.
14910         (process_full_comp_unit, process_full_type_unit): Clear the method
14911         list.  Remove cleanups.
14912         (psymtab_include_file_name): Add name_holder parameter.  Use
14913         unique_xmalloc_ptr.
14914         (dwarf_decode_lines): Update.
14915
14916 2018-01-17  Tom Tromey  <tom@tromey.com>
14917             Simon Marchi  <simon.marchi@ericsson.com>
14918
14919         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14920         (dwarf2_per_objfile::free_cached_comp_units)
14921         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14922         (init_cutu_and_read_dies_no_follow): Update.
14923         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14924         (dwarf2_cu::~dwarf2_cu): New.
14925         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14926         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14927
14928 2018-01-17  Tom Tromey  <tom@tromey.com>
14929             Simon Marchi  <simon.marchi@ericsson.com>
14930
14931         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14932         (struct die_reader_specs) <abbrev_table>: New member.
14933         (struct abbrev_table): Add constructor.
14934         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14935         <abbrev_obstack>: Now an auto_obstack.
14936         (abbrev_table_up): New typedef.
14937         (init_cu_die_reader): Add abbrev_table parameter.
14938         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14939         Add result_dwo_abbrev_table.
14940         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14941         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14942         Update.
14943         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14944         parameter.
14945         (skip_children): Update.
14946         (abbrev_table::alloc_abbrev): Rename from
14947         abbrev_table_alloc_abbrev.
14948         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14949         (abbrev_table::lookup_abbrev): Rename from
14950         abbrev_table_lookup_abbrev.
14951         (abbrev_table_read_table): Return abbrev_table_up.
14952         (abbrev_table_free, abbrev_table_free_cleanup)
14953         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14954         (load_partial_dies): Update.
14955
14956 2018-01-17  Tom Tromey  <tom@tromey.com>
14957
14958         * dwarf2read.c (dwarf2_compute_name): Update comment.
14959         (read_func_scope, read_variable): Update.
14960         (new_symbol): Remove.
14961         (new_symbol_full): Rename to new_symbol.
14962
14963 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14964
14965         PR gdb/16577
14966         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14967         a warning instead of throwing an error, set section size to 0 and return
14968         NULL.
14969         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14970
14971 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14972
14973         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14974         std::string.
14975         (linux_ptrace_attach_fail_reason_string): Likewise.
14976         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14977         Likewise.
14978         (linux_ptrace_attach_fail_reason_string): Likewise.
14979         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14980
14981 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14982
14983         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14984
14985 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14986
14987         PR gdb/21559
14988         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14989         checking for fs_base/gs_base fields in struct user_regs_struct.
14990         * configure: Regenerate.
14991
14992 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14993
14994         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14995         function.
14996         (aarch64_linux_init_abi): Install it to gdbarch hook
14997         gcc_target_options.
14998
14999 2018-01-15  Pedro Alves  <palves@redhat.com>
15000
15001         * common/signals-state-save-restore.c
15002         (save_original_signals_state): Fix typos.
15003
15004 2017-01-12  Tom Tromey  <tom@tromey.com>
15005             Sergio Durigan Junior  <sergiodj@redhat.com>
15006
15007         * Makefile.in (install-only): Install gdb-add-index.
15008
15009 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15010
15011         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15012
15013 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15014
15015         * infrun.c (keep_going_pass_signal): Clear step-over info when
15016         insert_breakpoints fails.
15017
15018 2018-01-11  Pedro Alves  <palves@redhat.com>
15019
15020         PR gdb/22583
15021         * infrun.c (resume): Rename to ...
15022         (resume_1): ... this.
15023         (resume): Reimplement as wrapper around resume_1.
15024
15025 2018-01-11  Pedro Alves  <palves@redhat.com>
15026
15027         PR remote/22597
15028         * remote.c (remote_parse_stop_reply): Default to the last-set
15029         general thread instead of to 'magic_null_ptid'.
15030
15031 2018-01-10  Pedro Alves  <palves@redhat.com>
15032
15033         * language.h (language_get_symbol_name_matcher): Rename ...
15034         (get_symbol_name_matcher): ... this.
15035         * language.c (language_get_symbol_name_matcher): Ditto.
15036         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15037         callers adjusted.
15038
15039 2018-01-10  Pedro Alves  <palves@redhat.com>
15040
15041         PR gdb/22670
15042         * dwarf2read.c
15043         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15044         Adjust to use language_get_symbol_name_matcher instead of
15045         language_defn::la_get_symbol_name_matcher.
15046         * language.c (language_get_symbol_name_matcher): If in Ada mode
15047         and the lookup name is a verbatim match, return Ada's matcher.
15048         * language.h (language_get_symbol_name_matcher): Adjust comment.
15049         (ada_lookup_name_info::verbatim_p):: New method.
15050
15051 2018-01-10  Pedro Alves  <palves@redhat.com>
15052
15053         PR gdb/22670
15054         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15055         minsym's language is language_auto or language_cplus, pass down
15056         language_ada instead.
15057         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15058
15059 2018-01-10  Pedro Alves  <palves@redhat.com>
15060
15061         PR gdb/22670
15062         * minsyms.c (linkage_name_str): New function.
15063         (iterate_over_minimal_symbols): Use it.
15064
15065 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15066
15067         * NEWS: Document that 'info proc' now works on FreeBSD.
15068
15069 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15070
15071         * configure.ac: Check for kinfo_getfile in libutil.
15072         * configure: Regenerate.
15073         * config.in: Regenerate.
15074         * fbsd-nat.c: Include "fbsd-tdep.h".
15075         (fbsd_fetch_cmdline): New.
15076         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15077         rather than calling error.
15078         (fbsd_info_proc): New.
15079         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15080         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15081         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15082
15083 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15084
15085         * fbsd-nat.c (struct free_deleter): Remove.
15086         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15087
15088 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15089
15090         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15091         NULL for an empty pathname.
15092
15093 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15094
15095         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15096         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15097         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15098         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15099         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15100         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15101         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15102         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15103         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15104         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15105         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15106         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15107         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15108         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15109         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15110
15111 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15112
15113         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15114         (gnu_xfer_auxv): New function.
15115         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15116         TARGET_OBJECT_AUXV.
15117
15118 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15119             Simon Marchi  <simon.marchi@ericsson.com>
15120
15121         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15122         common/selftest.c.
15123         (COMMON_OBS): Remove selftest.o.
15124         * configure.ac: Append selftest-arch.c and common/selftest.c to
15125         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15126         * configure: Re-generated.
15127         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15128         GDB_SELF_TEST.
15129         (maintenance_info_selftests): Likewise.
15130
15131 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15132
15133         * ada-valprint.c (val_print_packed_array_elements): Use
15134         proper number of elements when printing an array indexed
15135         by an enumeration type.
15136
15137 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15138
15139         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15140         (dw2_get_file_names_reader): Adjust.
15141         (lookup_dwo_signatured_type): Adjust.
15142         (lookup_dwp_signatured_type): Adjust.
15143         (lookup_signatured_type): Adjust.
15144         (create_type_unit_group): Adjust.
15145         (get_type_unit_group): Adjust.
15146         (process_psymtab_comp_unit_reader): Adjust.
15147         (build_type_psymtabs_reader): Adjust.
15148         (scan_partial_symbols): Adjust.
15149         (add_partial_symbol): Adjust.
15150         (add_partial_subprogram): Adjust.
15151         (peek_die_abbrev): Adjust.
15152         (fixup_go_packaging): Adjust.
15153         (process_imported_unit_die): Adjust.
15154         (dwarf2_compute_name): Adjust.
15155         (dwarf2_physname): Adjust.
15156         (read_import_statement): Adjust.
15157         (handle_DW_AT_stmt_list): Adjust.
15158         (read_file_scope): Adjust.
15159         (read_func_scope): Adjust.
15160         (read_lexical_block_scope): Adjust.
15161         (read_call_site_scope): Adjust.
15162         (read_variable): Adjust.
15163         (dwarf2_rnglists_process): Adjust.
15164         (dwarf2_ranges_process): Adjust.
15165         (dwarf2_ranges_read): Adjust.
15166         (dwarf2_get_pc_bounds): Adjust.
15167         (dwarf2_record_block_ranges): Adjust.
15168         (dwarf2_add_field): Adjust.
15169         (dwarf2_add_member_fn): Adjust.
15170         (read_structure_type): Adjust.
15171         (process_structure_scope): Adjust.
15172         (read_enumeration_type): Adjust.
15173         (read_array_type): Adjust.
15174         (mark_common_block_symbol_computed): Adjust.
15175         (read_common_block): Adjust.
15176         (read_namespace_type): Adjust.
15177         (read_namespace): Adjust.
15178         (read_module_type): Adjust.
15179         (read_tag_pointer_type): Adjust.
15180         (read_tag_ptr_to_member_type): Adjust.
15181         (read_tag_string_type): Adjust.
15182         (read_subroutine_type): Adjust.
15183         (read_typedef): Adjust.
15184         (read_base_type): Adjust.
15185         (attr_to_dynamic_prop): Adjust.
15186         (read_subrange_type): Adjust.
15187         (read_unspecified_type): Adjust.
15188         (dwarf2_read_abbrevs): Adjust.
15189         (load_partial_dies): Adjust.
15190         (read_partial_die): Adjust.
15191         (find_partial_die): Adjust.
15192         (guess_partial_die_structure_name): Adjust.
15193         (fixup_partial_die): Adjust.
15194         (read_attribute_value): Adjust.
15195         (read_addr_index): Adjust.
15196         (read_addr_index_from_leb128): Adjust.
15197         (read_str_index): Adjust.
15198         (dwarf2_string_attr): Adjust.
15199         (get_debug_line_section): Adjust.
15200         (dwarf_decode_line_header): Adjust.
15201         (lnp_state_machine::check_line_address): Adjust.
15202         (dwarf_decode_lines_1): Adjust.
15203         (dwarf_decode_lines): Adjust.
15204         (dwarf2_start_symtab): Adjust.
15205         (var_decode_location): Adjust.
15206         (new_symbol_full): Adjust.
15207         (dwarf2_const_value_data): Adjust.
15208         (dwarf2_const_value_attr): Adjust.
15209         (dwarf2_const_value): Adjust.
15210         (die_type): Adjust.
15211         (die_containing_type): Adjust.
15212         (build_error_marker_type): Adjust.
15213         (lookup_die_type): Adjust.
15214         (guess_full_die_structure_name): Adjust.
15215         (anonymous_struct_prefix): Adjust.
15216         (determine_prefix): Adjust.
15217         (dwarf2_name): Adjust.
15218         (follow_die_ref_or_sig): Adjust.
15219         (follow_die_offset): Adjust.
15220         (follow_die_ref): Adjust.
15221         (follow_die_sig_1): Adjust.
15222         (follow_die_sig): Adjust.
15223         (get_signatured_type): Adjust.
15224         (get_DW_AT_signature_type): Adjust.
15225         (decode_locdesc): Adjust.
15226         (dwarf_decode_macros): Adjust.
15227         (cu_debug_loc_section): Adjust.
15228         (fill_in_loclist_baton): Adjust.
15229         (dwarf2_symbol_mark_computed): Adjust.
15230         (init_one_comp_unit): Don't assign
15231         dwarf2_cu::dwarf2_per_objfile.
15232         (set_die_type): Adjust.
15233
15234 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15235
15236         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15237         <dwarf2_per_objfile>: New field.
15238         (dwarf2_per_objfile): Remove global.
15239         (get_dwarf2_per_objfile): New function.
15240         (set_dwarf2_per_objfile): New function.
15241         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15242         dwarf2_per_objfile.
15243         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15244         (read_abbrev_offset): Likewise.
15245         (read_indirect_string): Likewise.
15246         (read_indirect_line_string): Likewise.
15247         (read_indirect_string_at_offset): Likewise.
15248         (read_indirect_string_from_dwz): Likewise.
15249         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15250         dwarf2_per_objfile.
15251         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15252         (create_all_comp_units): Change objfile parameter to
15253         dwarf2_per_objfile.
15254         (create_all_type_units): Likewise.
15255         (process_queue): Add dwarf2_per_objfile parameter.
15256         (read_and_check_comp_unit_head): Likewise.
15257         (lookup_dwo_unit_in_dwp): Likewise.
15258         (get_dwp_file): Likewise.
15259         (process_cu_includes): Likewise.
15260         (struct free_dwo_file_cleanup_data): New struct.
15261         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15262         set_dwarf2_per_objfile.
15263         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15264         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15265         context, adjust calls.
15266         (dw2_instantiate_symtab): Likewise.
15267         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15268         (dw2_get_cu): Likewise.
15269         (create_cu_from_index_list): Change objfile parameter to
15270         dwarf2_per_objfile.
15271         (create_cus_from_index_list): Get dwarf2_per_objfile from
15272         context, adjust calls.
15273         (create_cus_from_index): Likewise.
15274         (create_signatured_type_table_from_index): Change objfile
15275         parameter to dwarf2_per_objfile.
15276         (create_signatured_type_table_from_debug_names): Change objfile
15277         parameter to dwarf2_per_objfile.
15278         (create_addrmap_from_index): Likewise.
15279         (create_addrmap_from_aranges): Likewise.
15280         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15281         (dw2_setup): Remove.
15282         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15283         context.
15284         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15285         get_dwarf2_per_objfile.
15286         (dw2_forget_cached_source_info): Likewise.
15287         (dw2_map_symtabs_matching_filename): Likewise.
15288         (struct dw2_symtab_iterator) <index>: Remove.
15289         <dwarf2_per_objfile>: New field.
15290         (dw2_symtab_iter_init): Replace index parameter with
15291         dwarf2_per_objfile.
15292         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15293         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15294         (dw2_print_stats): Likewise.
15295         (dw2_dump): Likewise.
15296         (dw2_expand_symtabs_for_function): Likewise.
15297         (dw2_expand_all_symtabs): Likewise.
15298         (dw2_expand_symtabs_with_fullname): Likewise.
15299         (dw2_expand_marked_cus): Replace index and objfile parameters
15300         with dwarf2_per_objfile.
15301         (dw_expand_symtabs_matching_file_matcher): Add
15302         dwarf2_per_objfile parameter and adjust calls.
15303         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15304         adjust calls.
15305         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15306         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15307         adjust calls.
15308         (create_cus_from_debug_names_list): Replace objfile parameter
15309         with dwarf2_per_objfile and adjust calls.
15310         (create_cus_from_debug_names): Likewise.
15311         (dwarf2_read_debug_names): Likewise.
15312         (mapped_debug_names::namei_to_name): Adjust call.
15313         (dw2_debug_names_iterator::next): Likewise.
15314         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15315         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15316         (dw2_debug_names_dump): Likewise.
15317         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15318         (dw2_debug_names_expand_symtabs_matching): Likewise.
15319         (dwarf2_initialize_objfile): Likewise.
15320         (dwarf2_build_psymtabs): Likewise.
15321         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15322         this_cu.
15323         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15324         (read_and_check_comp_unit_head): Likewise.
15325         (read_abbrev_offset): Likewise.
15326         (create_debug_type_hash_table): Likewise.
15327         (create_debug_types_hash_table): Likewise.
15328         (create_all_type_units): Replace objfile parameter with
15329         dwarf2_per_objfile.
15330         (add_type_unit): Add dwarf2_per_objfile parameter.
15331         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15332         with dwarf2_per_objfile.
15333         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15334         (lookup_dwp_signatured_type): Likewise.
15335         (lookup_signatured_type): Likewise.
15336         (read_cutu_die_from_dwo): Likewise.
15337         (init_tu_and_read_dwo_dies): Likewise.
15338         (init_cutu_and_read_dies): Likewise.
15339         (init_cutu_and_read_dies_no_follow): Likewise.
15340         (allocate_type_unit_groups_table): Add objfile parameter.
15341         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15342         (get_type_unit_group): Likewise.
15343         (process_psymtab_comp_unit): Update call.
15344         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15345         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15346         (print_tu_stats): Likewise.
15347         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15348         in void* parameter.
15349         (build_type_psymtabs): Change objfile parameter to
15350         dwarf2_per_objfile.
15351         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15352         passed in void* parameter.
15353         (process_skeletonless_type_units): Change objfile parameter to
15354         dwarf2_per_objfile.
15355         (set_partial_user): Likewise.
15356         (dwarf2_build_psymtabs_hard): Likewise.
15357         (read_comp_units_from_section): Likewise.
15358         (create_all_comp_units): Likewise.
15359         (scan_partial_symbols): Update calls.
15360         (add_partial_symbol): Likewise.
15361         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15362         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15363         (process_queue): Add dwarf2_per_objfile parameter.
15364         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15365         (compute_compunit_symtab_includes): Likewise.
15366         (process_cu_includes): Add dwarf2_per_objfile parameter.
15367         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15368         (process_full_type_unit): Likewise.
15369         (process_imported_unit_die): Update call.
15370         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15371         (read_file_scope): Likewise.
15372         (allocate_dwo_file_hash_table): Add objfile parameter.
15373         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15374         (create_cus_hash_table): Likewise.
15375         (create_dwp_hash_table): Likewise.
15376         (create_dwo_unit_in_dwp_v1): Likewise.
15377         (create_dwp_v2_section): Likewise.
15378         (create_dwo_unit_in_dwp_v2): Likewise.
15379         (lookup_dwo_unit_in_dwp): Likewise.
15380         (try_open_dwop_file): Likewise.
15381         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15382         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15383         cleanup to include a reference to dwarf2_per_objfile.
15384         (open_dwp_file): Add dwarf2_per_objfile parameter.
15385         (open_and_init_dwp_file): Likewise.
15386         (get_dwp_file): Likewise.
15387         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15388         (queue_and_load_all_dwo_tus): Update call.
15389         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15390         data.
15391         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15392         (dwarf2_ranges_process): Likewise.
15393         (dwarf2_get_pc_bounds): Likewise.
15394         (mark_common_block_symbol_computed): Likewise.
15395         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15396         (dwarf2_read_abbrevs): Update call.
15397         (read_partial_die): Use dwarf2_per_objfile from cu.
15398         (find_partial_die): Likewise.
15399         (fixup_partial_die): Likewise.
15400         (read_attribute_value): Likewise.
15401         (read_indirect_string_at_offset_from): Add objfile parameter.
15402         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15403         parameter.
15404         (read_indirect_string_from_dwz): Add objfile parameter.
15405         (read_indirect_string): Add objfile parameter.
15406         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15407         (read_addr_index): Use dwarf2_per_objfile from cu.
15408         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15409         call dw2_setup.
15410         (read_str_index): Use dwarf2_per_objfile from cu.
15411         (get_debug_line_section): Likewise.
15412         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15413         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15414         (new_symbol_full): Use dwarf2_per_objfile from cu.
15415         (build_error_marker_type): Likewise.
15416         (lookup_die_type): Likewise.
15417         (determine_prefix): Likewise.
15418         (follow_die_offset): Likewise.
15419         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15420         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15421         (dwarf2_fetch_die_type_sect_off): Likewise.
15422         (dwarf2_get_die_type): Likewise.
15423         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15424         (get_signatured_type): Likewise.
15425         (get_DW_AT_signature_type): Likewise.
15426         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15427         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15428         (cu_debug_loc_section): Likewise.
15429         (fill_in_loclist_baton): Likewise.
15430         (dwarf2_symbol_mark_computed): Likewise.
15431         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15432         dwarf2_per_objfile.
15433         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15434         parameter.
15435         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15436         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15437         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15438         (set_die_type): Use dwarf2_free_objfile from cu.
15439         (get_die_type_at_offset): Likewise.
15440         (dwarf2_per_objfile_free): Don't assign global variable.
15441         (debug_names) <constructor>: Add dwarf2_per_objfile
15442         parameter, update m_debugstrlookup construction.
15443         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15444         parameter.
15445         <m_dwarf2_per_objfile>: New field.
15446         <lookup>: Use m_dwarf2_per_objfile.
15447         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15448         (psyms_seen_size): Likewise.
15449         (write_gdbindex): Replace objfile parameter with
15450         dwarf2_per_objfile.
15451         (write_debug_names): Likewise.
15452         (write_psymtabs_to_index): Likewise.
15453         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15454         calls.
15455
15456 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15457
15458         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15459         <dwarf2_per_objfile>: New field.
15460         (struct dwarf2_per_cu_data) <objfile>: Remove.
15461         <dwarf2_per_objfile>: New field.
15462         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15463         of objfile.
15464         (create_signatured_type_table_from_index): Likewise.
15465         (create_debug_type_hash_table): Likewise.
15466         (fill_in_sig_entry_from_dwo_entry): Likewise.
15467         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15468         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15469         objfile.
15470         (create_partial_symtab): Access objfile through
15471         dwarf2_per_objfile.
15472         (process_psymtab_comp_unit_reader): Likewise.
15473         (read_comp_units_from_section): Likewise.
15474         (scan_partial_symbols): Likewise.
15475         (add_partial_symbol): Likewise.
15476         (add_partial_subprogram): Likewise.
15477         (peek_die_abbrev): Likewise.
15478         (fixup_go_packaging): Likewise.
15479         (process_full_comp_unit): Likewise.
15480         (process_full_type_unit): Likewise.
15481         (process_imported_unit_die): Likewise.
15482         (dwarf2_compute_name): Likewise.
15483         (dwarf2_physname): Likewise.
15484         (read_import_statement): Likewise.
15485         (create_cus_hash_table): Assign dwarf2_physname instead of
15486         objfile.
15487         (read_func_scope): Access objfile through dwarf2_per_objfile.
15488         (read_lexical_block_scope): Likewise.
15489         (read_call_site_scope): Likewise.
15490         (read_variable): Likewise.
15491         (dwarf2_rnglists_process): Likewise.
15492         (dwarf2_ranges_process): Likewise.
15493         (dwarf2_ranges_read): Likewise.
15494         (dwarf2_record_block_ranges): Likewise.
15495         (dwarf2_add_field): Likewise.
15496         (dwarf2_add_member_fn): Likewise.
15497         (read_structure_type): Likewise.
15498         (process_structure_scope): Likewise.
15499         (read_enumeration_type): Likewise.
15500         (read_array_type): Likewise.
15501         (read_common_block): Likewise.
15502         (read_namespace_type): Likewise.
15503         (read_namespace): Likewise.
15504         (read_module_type): Likewise.
15505         (read_tag_pointer_type): Likewise.
15506         (read_tag_ptr_to_member_type): Likewise.
15507         (read_tag_string_type): Likewise.
15508         (read_subroutine_type): Likewise.
15509         (read_typedef): Likewise.
15510         (read_base_type): Likewise.
15511         (attr_to_dynamic_prop): Likewise.
15512         (read_subrange_type): Likewise.
15513         (read_unspecified_type): Likewise.
15514         (load_partial_dies): Likewise.
15515         (read_partial_die): Likewise.
15516         (find_partial_die): Likewise.
15517         (guess_partial_die_structure_name): Likewise.
15518         (fixup_partial_die): Likewise.
15519         (read_attribute_value): Likewise.
15520         (read_addr_index_from_leb128): Likewise.
15521         (dwarf2_read_addr_index): Likewise.
15522         (dwarf2_string_attr): Likewise.
15523         (lnp_state_machine::check_line_address): Likewise.
15524         (dwarf_decode_lines_1): Likewise.
15525         (dwarf_decode_lines): Likewise.
15526         (dwarf2_start_symtab): Likewise.
15527         (var_decode_location): Likewise.
15528         (new_symbol_full): Likewise.
15529         (dwarf2_const_value_data): Likewise.
15530         (dwarf2_const_value_attr): Likewise.
15531         (dwarf2_const_value): Likewise.
15532         (die_type): Likewise.
15533         (die_containing_type): Likewise.
15534         (lookup_die_type): Likewise.
15535         (guess_full_die_structure_name): Likewise.
15536         (anonymous_struct_prefix): Likewise.
15537         (dwarf2_name): Likewise.
15538         (follow_die_ref_or_sig): Likewise.
15539         (follow_die_offset): Likewise.
15540         (follow_die_ref): Likewise.
15541         (dwarf2_fetch_die_loc_sect_off): Likewise.
15542         (dwarf2_fetch_constant_bytes): Likewise.
15543         (dwarf2_fetch_die_type_sect_off): Likewise.
15544         (dwarf2_get_die_type): Likewise.
15545         (follow_die_sig): Likewise.
15546         (decode_locdesc): Likewise.
15547         (dwarf2_per_cu_objfile): Likewise.
15548         (dwarf2_per_cu_text_offset): Likewise.
15549         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15550         objfile.
15551         (set_die_type): Access objfile through
15552         dwarf2_per_objfile.
15553
15554 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15555
15556         * valprint.c (converted_character_d): Remove typedef.
15557         (DEF_VEC_O (converted_character_d)): Remove.
15558         (count_next_character): Use std::vector.
15559         (print_converted_chars_to_obstack): Likewise.
15560         (generic_printstr): Likewise.
15561
15562 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15563
15564         * xml-support.h (struct gdb_xml_value): Add constructor.
15565         <value>: Change type to unique_xmalloc_ptr.
15566         (gdb_xml_value_s): Remove typedef.
15567         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15568         (gdb_xml_element_start_handler): Change parameter type to
15569         std::vector.
15570         (xml_find_attribute): Likewise.
15571         * xml-support.c (xml_find_attribute): Change parameter type to
15572         std::vector and adjust.
15573         (gdb_xml_values_cleanup): Remove.
15574         (gdb_xml_parser::start_element): Adjust to std::vector.
15575         (xinclude_start_include): Change paraeter type to std::vector
15576         and adjust.
15577         * btrace.c (check_xml_btrace_version): Likewise.
15578         (parse_xml_btrace_block): Likewise.
15579         (parse_xml_btrace_pt_config_cpu): Likewise.
15580         (parse_xml_btrace_pt): Likewise.
15581         (parse_xml_btrace_conf_bts): Likewise.
15582         (parse_xml_btrace_conf_pt): Likewise.
15583         * memory-map.c (memory_map_start_memory): Likewise.
15584         (memory_map_start_property): Likewise.
15585         * osdata.c (osdata_start_osdata): Likewise.
15586         (osdata_start_item): Likewise.
15587         (osdata_start_column): Likewise.
15588         * remote.c (start_thread): Likewise.
15589         * solib-aix.c (library_list_start_library): Likewise.
15590         (library_list_start_list): Likewise.
15591         * solib-svr4.c (library_list_start_library): Likewise.
15592         (svr4_library_list_start_list): Likewise.
15593         * solib-target.c (library_list_start_segment): Likewise.
15594         (library_list_start_section): Likewise.
15595         (library_list_start_library): Likewise.
15596         (library_list_start_list): Likewise.
15597         * tracepoint.c (traceframe_info_start_memory): Likewise.
15598         (traceframe_info_start_tvar): Likewise.
15599         * xml-syscall.c (syscall_start_syscall): Likewise.
15600         * xml-tdesc.c (tdesc_start_target): Likewise.
15601         (tdesc_start_feature): Likewise.
15602         (tdesc_start_reg): Likewise.
15603         (tdesc_start_union): Likewise.
15604         (tdesc_start_struct): Likewise.
15605         (tdesc_start_flags): Likewise.
15606         (tdesc_start_enum): Likewise.
15607         (tdesc_start_field): Likewise.
15608         (tdesc_start_enum_value): Likewise.
15609         (tdesc_start_vector): Likewise.
15610
15611 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15612
15613         * extension.h (struct xmethod_worker) <clone>: Remove.
15614         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15615         Remove.
15616         (python_xmethod_worker::clone): Remove.
15617         * valops.c (find_overload_match): Use std::move instead of
15618         clone.
15619
15620 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15621
15622         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15623         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15624         <free_xmethod_worker_data>: Remove.
15625         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15626         <get_xmethod_arg_types>: Remove.
15627         <get_xmethod_result_type>: Remove.
15628         <invoke_xmethod>: Remove.
15629         * extension.c (new_xmethod_worker): Remove.
15630         (clone_xmethod_worker): Remove.
15631         (get_matching_xmethod_workers): Return void, pass std::vector by
15632         pointer.
15633         (get_xmethod_arg_types): Rename to...
15634         (xmethod_worker::get_arg_types): ... this, and adjust.
15635         (get_xmethod_result_type): Rename to...
15636         (xmethod_worker::get_result_type): ... this, and adjust.
15637         (invoke_xmethod): Remove.
15638         (free_xmethod_worker): Remove.
15639         (free_xmethod_worker_vec): Remove.
15640         * extension.h (enum ext_lang_rc): Move here from
15641         extension-priv.h.
15642         (struct xmethod_worker): Add constructor and destructor.
15643         <data>: Remove.
15644         <value>: Remove.
15645         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15646         virtual pure methods.
15647         <get_arg_types, get_result_type>: New methods.
15648         (xmethod_worker_ptr): Remove typedef.
15649         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15650         (xmethod_worker_vec): Remove typedef.
15651         (xmethod_worker_up): New typedef.
15652         (invoke_xmethod): Remove.
15653         (clone_xmethod_worker): Remove.
15654         (free_xmethod_worker): Remove.
15655         (free_xmethod_worker_vec): Remove.
15656         (get_xmethod_arg_types): Remove.
15657         (get_xmethod_result_type): Remove.
15658         * valops.c (find_method_list): Use std::vector, don't use
15659         intermediate vector.
15660         (value_find_oload_method_list): Use std::vector.
15661         (find_overload_match): Use std::vector.
15662         (find_oload_champ): Use std::vector.
15663         * value.c (value_free): Use operator delete.
15664         (value_of_xmethod): Rename to...
15665         (value_from_xmethod): ... this.  Don't assign
15666         xmethod_worker::value, take rvalue-reference.
15667         (result_type_of_xmethod): Adjust.
15668         (call_xmethod): Adjust.
15669         * value.h: Include extension.h.
15670         (struct xmethod_worker): Don't forward-declare.
15671         (value_of_xmethod): Rename to...
15672         (value_from_xmethod): ... this, take rvalue-reference.
15673         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15674         (struct python_xmethod_worker): ... this, add constructor and
15675         destructor.
15676         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15677         (gdbpy_free_xmethod_worker_data): Rename to...
15678         (python_xmethod_worker::~python_xmethod_worker): ... this and
15679         adjust.
15680         (gdbpy_clone_xmethod_worker_data): Rename to...
15681         (python_xmethod_worker::clone): ... this and adjust.
15682         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15683         temporary vector.
15684         (gdbpy_get_xmethod_arg_types): Rename to...
15685         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15686         (gdbpy_get_xmethod_result_type): Rename to...
15687         (python_xmethod_worker::do_get_result_type): ... this and
15688         adjust.
15689         (gdbpy_invoke_xmethod): Rename to...
15690         (python_xmethod_worker::invoke): ... this and adjust.
15691         (new_python_xmethod_worker): Rename to...
15692         (python_xmethod_worker::python_xmethod_worker): ... this and
15693         adjust.
15694         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15695         Remove.
15696         (gdbpy_free_xmethod_worker_data): Remove.
15697         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15698         (gdbpy_get_xmethod_arg_types): Remove.
15699         (gdbpy_get_xmethod_result_type): Remove.
15700         (gdbpy_invoke_xmethod): Remove.
15701         * python/python.c (python_extension_ops): Remove obsolete
15702         callbacks.
15703
15704 2018-01-05  Pedro Alves  <palves@redhat.com>
15705
15706         PR gdb/18653
15707         * common/signals-state-save-restore.c
15708         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15709         find a custom handler preinstalled, instead of internal erroring.
15710         But only warn if !quiet.
15711         * common/signals-state-save-restore.h
15712         (save_original_signals_state): New parameter 'quiet'.
15713         * main.c (captured_main_1): Move save_original_signals_state call
15714         after option handling, and pass QUIET.
15715
15716 2018-01-05  Pedro Alves  <palves@redhat.com>
15717
15718         * spu-tdep.c (spu_catch_start): Pass
15719         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15720
15721 2018-01-05  Pedro Alves  <palves@redhat.com>
15722
15723         PR gdb/22670
15724         * ada-lang.c (literal_symbol_name_matcher): New function.
15725         (ada_get_symbol_name_matcher): Use it for
15726         symbol_name_match_type::SEARCH_NAME.
15727         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15728         it down instead of assuming symbol_name_match_type::FULL.
15729         * block.h (block_lookup_symbol): New parameter 'match_type'.
15730         * c-valprint.c (print_unpacked_pointer): Use
15731         lookup_symbol_search_name instead of lookup_symbol.
15732         * compile/compile-object-load.c (get_out_value_type): Pass down
15733         symbol_name_match_type::SEARCH_NAME.
15734         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15735         symbol_name_match_type::FULL.
15736         * cp-support.c (cp_get_symbol_name_matcher): Handle
15737         symbol_name_match_type::SEARCH_NAME.
15738         * infrun.c (insert_exception_resume_breakpoint): Use
15739         lookup_symbol_search_name.
15740         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15741         * psymtab.c (maintenance_check_psymtabs): Use
15742         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15743         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15744         SYMBOL_SEARCH_NAME.
15745         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15746         if symbol_name_match_type::SEARCH_NAME.
15747         (lookup_symbol_in_language): Pass down
15748         symbol_name_match_type::FULL.
15749         (lookup_symbol_search_name): New.
15750         (lookup_language_this): Pass down
15751         symbol_name_match_type::SEARCH_NAME.
15752         (lookup_symbol_aux, lookup_local_symbol): New parameter
15753         'match_type'.  Pass it down.
15754         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15755         (lookup_symbol_search_name): New declaration.
15756         (lookup_symbol_in_block): New 'match_type' parameter.
15757
15758 2018-01-05  Pedro Alves  <palves@redhat.com>
15759
15760         PR gdb/22670
15761         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15762         ada_lookup_symbol.
15763         (ada_lookup_symbol): Reimplement in terms of
15764         ada_lookup_symbol_list, bits factored out from
15765         ada_lookup_encoded_symbol.
15766
15767 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15768
15769         * ada-exp.y (write_object_renaming): When subscripting an array
15770         using a symbol as the index, pass the block in call to
15771         ada_lookup_encoded_symbol when looking that symbol up.
15772
15773 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15774
15775         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15776         TYPE_INDEX_TYPE.
15777
15778 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15779
15780         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15781         the case where VALUE_LVAL (val0) is not lval_memory.
15782
15783 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15784
15785         * ada-valprint.c (print_optional_low_bound): Handle
15786         character-indexed array printing like boolean-indexed array
15787         printing.
15788
15789 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15790
15791         * NEWS: Create a new section for the next release branch.
15792         Rename the section of the current branch, now that it has
15793         been cut.
15794
15795 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15796
15797         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15798         * version.in: Bump version to 8.1.50.DATE-git.
15799
15800 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15801
15802         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15803         Add field.
15804         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15805         Add field.
15806         (default_exception_support_info) <catch_handlers_sym>: Add field.
15807         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15808         (ada_exception_name_addr_1): Add "catch handlers" handling.
15809         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15810         Update all callers.
15811         (create_excep_cond_exprs) <ex>: Add parameter.
15812         (re_set_exception): Update create_excep_cond_exprs call.
15813         (print_it_exception, print_one_exception, print_mention_exception)
15814         (print_recreate_exception): Add "catch handler" handling.
15815         (allocate_location_catch_handlers, re_set_catch_handlers)
15816         (check_status_catch_handlers, print_it_catch_handlers)
15817         (print_one_catch_handlers, print_mention_catch_handlers)
15818         (print_recreate_catch_handlers): New function.
15819         (catch_handlers_breakpoint_ops): New variable.
15820         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15821         Add parameter.  Add "catch handler" handling.
15822         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15823         Add "catch handler" handling.
15824         (ada_exception_catchpoint_cond_string): Add "catch handler"
15825         handling.
15826         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15827         call.
15828         (catch_ada_handlers_command): New function.
15829         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15830         operations structure.
15831         (_initialize_ada_language): Add "catch handlers" command entry.
15832         * NEWS: Document "catch handlers" feature.
15833
15834 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15835
15836         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15837         account when creating the array type of the slice.
15838         (ada_value_slice): Likewise.
15839
15840 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15841
15842         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15843         New enum value.
15844         (create_array_type_with_stride): Add byte_stride_prop parameter.
15845         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15846         New parameter.  Update all callers in this file.
15847         (array_type_has_dynamic_stride): New function.
15848         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15849         of arrays with dynamic byte strides.
15850         * dwarf2read.c (read_array_type): Add support for dynamic
15851         DW_AT_byte_stride attributes.
15852
15853 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15854
15855         * dwarf2read.c (read_unspecified_type): Treat
15856         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15857
15858 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15859
15860         Update copyright year range in all GDB files.
15861
15862 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15863
15864         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15865         and gdb/testsuite/gdb.base/step-line.c.
15866
15867 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15868
15869         * copyright.py (main): Dump the contents of
15870         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15871         even if BY_HAND is empty.
15872
15873 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15874
15875         * top.c (print_gdb_version): Update Copyright year in version
15876         message.
15877
15878 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15879
15880         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15881
15882 For older changes see ChangeLog-2017.
15883 \f
15884 Local Variables:
15885 mode: change-log
15886 left-margin: 8
15887 fill-column: 74
15888 version-control: never
15889 coding: utf-8
15890 End: