remove trailing spaces in print-utils.c ("int_string" function)
[external/binutils.git] / gdb / ChangeLog
1 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
2
3         * print-utils.c (int_string): Remove unnecessary trailing spaces.
4
5 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
6
7         * rs6000-tdep.c (skip_prologue): Fix potential negative left
8         shifting.
9
10 2018-11-01  Jerome Guitton  <guitton@adacore.com>
11             Joel Brobecker  <brobecker@adacore.com>
12
13         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
14         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
15         * arm-pikeos-tdep.c: New file.
16         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
17         embedded system.
18         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
19
20 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
21
22         * common/pathstuff.c (get_standard_temp_dir): New.
23         * common/pathstuff.h (get_standard_temp_dir): New.
24         * config.in: Re-generate.
25         * configure: Re-generate.
26         * configure.ac: Don't check for mkdtemp.
27         * gnulib/aclocal-m4-deps.mk: Re-generate.
28         * gnulib/aclocal.m4: Re-generate.
29         * gnulib/config.in: Re-generate.
30         * gnulib/configure: Re-generate.
31         * gnulib/import/Makefile.am: Re-generate.
32         * gnulib/import/Makefile.in: Re-generate.
33         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
34         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
35         * gnulib/import/m4/mkdtemp.m4: New file.
36         * gnulib/import/mkdtemp.c: New file.
37         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
38         Add mkdtemp module.
39         * unittests/mkdir-recursive-selftests.c (test): Use
40         get_standard_temp_dir.
41         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
42         ifdef.
43         * compile/compile.c (get_compile_file_tempdir): Likewise.
44
45 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
46
47         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
48         (SIG_FRAME_LR_OFFSET64): New define.
49         (SIG_FRAME_FP_OFFSET64): New define.
50         (aix_sighandle_frame_cache): New Function.
51         (aix_sighandle_frame_this_id): New Function.
52         (aix_sighandle_frame_prev_register): New Function.
53         (aix_sighandle_frame_sniffer): New Function.
54         (aix_sighandle_frame_unwind): New global variable.
55         (rs6000_aix_init_osabi): Install new frame unwinder.
56
57 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
58
59         PR gdb/23835
60         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
61         already defined.
62
63 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
64
65         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
66
67 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
68
69         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
70         (producer_is_icc): New function.
71         (check_producer): Set producer_is_icc field on dwarf2_cu.
72         (dwarf2_init_integer_type): New function.
73         (read_base_type): Call dwarf2_init_integer_type instead of
74         init_integer_type in all cases.
75         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
76         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
77         LEN is greater than 0.
78
79 2018-10-30  Tom Tromey  <tom@tromey.com>
80
81         * main.c (captured_main_1): Check return value of bfd_init.
82
83 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
84
85         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
86         Adjust comments.
87
88 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
89
90         * procfs.c: Include common/pathstuff.h.
91
92 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
93
94         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
95         Add missing braces.  No functional change.
96
97 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
98
99         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
100         to report a bad option and fix indentation.
101         * demangle.c (demangle_command): Use report_unrecognized_option_error
102         to report a bad option and correctly report the bad option.
103
104 2018-10-27  Tom Tromey  <tom@tromey.com>
105
106         PR cli/23364:
107         * darwin-nat.c (copied_shell): New global.
108         (may_have_sip): Rename from should_disable_startup_with_shell.
109         (copy_shell_to_cache, maybe_cache_shell): New functions.
110         (darwin_nat_target::create_inferior): Update.  Use
111         copied_shell.
112
113 2018-10-27  Tom Tromey  <tom@tromey.com>
114
115         * unittests/scoped_fd-selftests.c (test_to_file): New function.
116         (run_tests): Call test_to_file.
117         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
118         temporary files.
119         * common/scoped_fd.h (scoped_fd::to_file): New method.
120
121 2018-10-27  Tom Tromey  <tom@tromey.com>
122
123         * unittests/scoped_mmap-selftests.c (test_normal): Use
124         gdb_mkostemp_cloexec.
125         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
126         Use gdb_mkostemp_cloexec.
127         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
128         gnulib/config.in, gnulib/configure,
129         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
130         gnulib/import/m4/gnulib-cache.m4,
131         gnulib/import/m4/gnulib-comp.m4: Update.
132         * gnulib/import/m4/mkostemp.m4: New file.
133         * gnulib/import/m4/mkstemp.m4: Remove.
134         * gnulib/import/mkostemp.c: New file.
135         * gnulib/import/mkstemp.m4: Remove.
136         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
137         mkstemp, add mkostemp.  Apply new patch.
138         * gnulib/import/stdlib.in.h: Apply patch.
139         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
140         New file.
141         * dwarf-index-write.c (write_psymtabs_to_index): Use
142         gdb_mkostemp_cloexec.
143         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
144
145 2018-10-27  Tom Tromey  <tom@tromey.com>
146
147         * unittests/mkdir-recursive-selftests.c: New file.
148         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
149         unittests/mkdir-recursive-selftests.c.
150         * dwarf-index-cache.c (mkdir_recursive): Move to
151         common/filestuff.c.
152         (index_cache::store): Check return value of mkdir_recursive.
153         (create_dir_and_check, test_mkdir_recursive): Move to new file.
154         (_initialize_index_cache): Don't register test.
155         * common/filestuff.h (mkdir_recursive): Declare.
156         * common/filestuff.c (mkdir_recursive): Move from
157         dwarf-index-cache.c.  Return bool.
158
159 2018-10-27  Tom Tromey  <tom@tromey.com>
160
161         * dwarf-index-write.c (write_psymtabs_to_index): Move
162         make_temp_filename to common/pathstuff.c.
163         * common/pathstuff.h (make_temp_filename): Declare.
164         * common/pathstuff.c (make_temp_filename): New function, moved
165         from dwarf-index-write.c.
166
167 2018-10-27  Tom Tromey  <tom@tromey.com>
168
169         * procfs.c (procfs_target::create_inferior): Use get_shell.
170         * cli/cli-cmds.c (shell_escape): Use get_shell.
171         * windows-nat.c (windows_nat_target::create_inferior): Use
172         get_shell.
173         * common/pathstuff.c (get_shell): New function.
174         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
175         (fork_inferior): Use get_shell.
176         * common/pathstuff.h (get_shell): Declare.
177
178 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
179
180         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
181
182 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
183
184         * stack.c (print_variable_and_value_data): Add preg and treg.
185         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
186         and update callers.
187         (print_frame_arg_vars): Likewise.
188         (prepare_reg): New function.
189         (info_locals_command): Extract info print args and use them.
190         (info_args_command): Likewise.
191         (_initialize_stack): Modify on-line help.
192         * symtab.c (treg_matches_sym_type_name): New function.
193         (search_symbols): New arg t_regexp.
194         (symtab_symbol_info): New args quiet, regexp, t_regexp.
195         (info_variables_command): Extract info print args and use them.
196         (info_functions_command): Likewise.
197         (info_types_command): Update call to symtab_symbol_info.
198         (_initialize_symtab): Modify on-line help.
199         * symtab.h (treg_matches_sym_type_name): New function.
200         (search_symbols): New t_regexp arg.
201
202 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
203
204         * cli-utils.c (extract_arg_maybe_quoted): New function.
205         (extract_info_print_args): New function.
206         (info_print_args_help): New function.
207         (report_unrecognized_option_error): New function.
208         * cli-utils.h (extract_arg_maybe_quoted): New function.
209         (extract_info_print_args): New function.
210         (info_print_args_help): New function.
211         (report_unrecognized_option_error): New function.
212
213 2018-10-26  Tom Tromey  <tom@tromey.com>
214
215         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
216         (compute_compunit_symtab_includes): Update.
217         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
218         (compunit_symtab_ptr): Likewise.
219
220 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
221
222         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
223         default_print_auxv_entry for specific tag values.
224
225 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
226
227         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
228
229 2018-10-26  Jim Wilson  <jimw@sifive.com>
230
231         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
232         (riscv_linux_sigframe_init): Declare.
233         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
234         (riscv_linux_sigframe): New.
235         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
236         (riscv_linux_sigframe_init): Define.
237         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
238
239         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
240         (riscv_isa_flen): Likewise.  Drop static.
241         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
242         (riscv_isa_flen): Likewise.  Declare.
243
244 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
245             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
246
247         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
248         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
249         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
250         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
251         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
252         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
253         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
254         Define.
255         (struct ppc_linux_features) <htm>: New field.
256         (ppc_linux_no_features): Add initializer for htm field.
257         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
258         new tdescs.
259         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
260         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
261         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
262         Define if not already defined.
263         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
264         and rs6000/powerpc-isa207-htm-vsx64l.
265         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
266         rs6000/powerpc-isa207-htm-vsx64l.xml.
267         * features/rs6000/power-htm-spr.xml: New file.
268         * features/rs6000/power-htm-core.xml: New file.
269         * features/rs6000/power64-htm-core.xml: New file.
270         * features/rs6000/power-htm-fpu.xml: New file.
271         * features/rs6000/power-htm-altivec.xml: New file.
272         * features/rs6000/power-htm-vsx.xml: New file.
273         * features/rs6000/power-htm-ppr.xml: New file.
274         * features/rs6000/power-htm-dscr.xml: New file.
275         * features/rs6000/power-htm-tar.xml: New file.
276         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
277         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
278         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
279         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
280         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
281         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
282         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
283         fetch_regset with HTM regsets.
284         (store_register, store_ppc_registers): Call store_regset with HTM
285         regsets.
286         (ppc_linux_nat_target::read_description): Set htm field in the
287         features struct if needed.
288         * ppc-linux-tdep.c: Include
289         features/rs6000/powerpc-isa207-htm-vsx32l.c and
290         features/rs6000/powerpc-isa207-htm-vsx64l.c.
291         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
292         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
293         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
294         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
295         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
296         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
297         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
298         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
299         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
300         (ppc32_linux_ctarregset): New globals.
301         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
302         (ppc_linux_collect_core_cpgrregset): New function.
303         (ppc_linux_iterate_over_regset_sections): Call back with the htm
304         regsets.
305         (ppc_linux_core_read_description): Check if the tm spr section is
306         present and set htm in the features struct.
307         (_initialize_ppc_linux_tdep): Call
308         initialize_tdesc_powerpc_isa207_htm_vsx32l and
309         initialize_tdesc_powerpc_isa207_htm_vsx64l.
310         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
311         Declare.
312         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
313         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
314         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
315         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
316         New fields.
317         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
318         Likewise.
319         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
320         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
321         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
322         New enum fields.
323         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
324         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
325         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
326         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
327         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
328         <PPC_CTAR_REGNUM>: Likewise.
329         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
330         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
331         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
332         (IS_CEFP_PSEUDOREG): Define.
333         (rs6000_register_name): Hide the upper halves of checkpointed VSX
334         registers.  Return names for the checkpointed DFP, VSX, and EFP
335         pseudo registers.
336         (rs6000_pseudo_register_type): Remove initial assert and raise an
337         internal error in the else clause instead.  Return types for the
338         checkpointed DFP, VSX, and EFP pseudo registers.
339         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
340         checkpointed DFP pseudo registers.
341         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
342         checkpointed VSX pseudo registers.
343         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
344         from efpr_pseudo_register_read and
345         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
346         registers.
347         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
348         Handle checkpointed DFP, VSX, and EFP registers.
349         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
350         (efp_ax_pseudo_register_collect): New functions.
351         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
352         register logic to new functions.  Handle checkpointed DFP, VSX,
353         and EFP pseudo registers.
354         (rs6000_gdbarch_init): Look for and validate the htm features.
355         Include checkpointed DFP, VSX and EFP pseudo-registers.
356         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
357         HTM registers.
358
359 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
360
361         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
362         without altivec or fpu.
363
364 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
365             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
366
367         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
368         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
369         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
370         Define if not already defined.
371         * features/rs6000/power-ebb.xml: New file.
372         * features/rs6000/power-linux-pmu.xml: New file.
373         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
374         features.
375         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
376         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
377         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
378         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
379         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
380         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
381         fetch_regset with ebb and pmu regsets.
382         (store_register, store_ppc_registers): Call store_regset with ebb
383         and pmu regsets.
384         (ppc_linux_nat_target::read_description): Set isa207 field in the
385         features struct if ebb and pmu are avaiable.
386         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
387         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
388         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
389         and pmu regsets.
390         (ppc_linux_core_read_description): Check if the pmu section is
391         present and set isa207 in the features struct.
392         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
393         (ppc32_linux_pmuregset): Declare.
394         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
395         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
396         <ppc_sier_regnum>: New field.
397         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
398         New enum values.
399         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
400         values.
401         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
402         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
403         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
404         ebb and pmu features.
405
406 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
407             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
408
409         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
410         (tdesc_powerpc_isa207_vsx64l): Declare.
411         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
412         (struct ppc_linux_features) <isa207>: New field.
413         (ppc_linux_no_features): Add initializer for isa207 field.
414         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
415         new tdescs.
416         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
417         (NT_PPC_TAR): Define if not already defined.
418         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
419         rs6000/powerpc-isa207-vsx64l.
420         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
421         rs6000/powerpc-isa207-vsx64l.xml.
422         * features/rs6000/power-tar.xml: New file.
423         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
424         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
425         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
426         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
427         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
428         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
429         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
430         fetch_regset with the TAR regset.
431         (store_register, store_ppc_registers): Call store_regset with the
432         TAR regset.
433         (ppc_linux_nat_target::read_description): Set isa207 field in the
434         features struct if needed.
435         * ppc-linux-tdep.c: Include
436         features/rs6000/powerpc-isa207-vsx32l.c and
437         features/rs6000/powerpc-isa207-vsx64l.c.
438         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
439         (ppc_linux_iterate_over_regset_sections): Call back with the tar
440         regset.
441         (ppc_linux_core_read_description): Check if the tar section is
442         present and set isa207 in the features struct.
443         (_initialize_ppc_linux_tdep): Call
444         initialize_tdesc_powerpc_isa207_vsx32l and
445         initialize_tdesc_powerpc_isa207_vsx64l.
446         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
447         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
448         (enum) <PPC_TAR_REGNUM>: New enum value.
449         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
450         feature.
451         (ppc_process_record_op31): Record changes to TAR.
452
453 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
454             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
455
456         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
457         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
458         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
459         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
460         (struct ppc_linux_features) <ppr_dscr>: New field.
461         (ppc_linux_no_features): Add initializer for ppr_dscr field.
462         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
463         new tdescs.
464         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
465         Define if not already defined.
466         * features/Makefile (WHICH): Add
467         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
468         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
469         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
470         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
471         * features/rs6000/power-dscr.xml: New file.
472         * features/rs6000/power-ppr.xml: New file.
473         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
474         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
475         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
476         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
477         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
478         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
479         * ppc-linux-nat.c: Include <sys/uio.h>.
480         (fetch_regset, store_regset, check_regset): New functions.
481         (fetch_register, fetch_ppc_registers): Call fetch_regset with
482         DSCR and PPR regsets.
483         (store_register, store_ppc_registers): Call store_regset with
484         DSCR and PPR regsets.
485         (ppc_linux_get_hwcap2): New function.
486         (ppc_linux_nat_target::read_description): Call
487         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
488         features struct if needed.
489         * ppc-linux-tdep.c: Include
490         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
491         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
492         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
493         (ppc32_linux_dscrregset): New globals.
494         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
495         and dscr regsets.
496         (ppc_linux_core_read_description): Check if the ppr and dscr
497         sections are present and set ppr_dscr in the features struct.
498         (_initialize_ppc_linux_tdep): Call
499         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
500         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
501         * ppc-linux-tdep.h (ppc32_linux_pprregset)
502         (ppc32_linux_dscrregset): Declare.
503         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
504         <ppc_dscr_regnum>: New field.
505         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
506         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
507         and dscr features.
508         (ppc_process_record_op31): Record changes to PPR and DSCR.
509
510 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
511
512         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
513         second initializer line for the have_* variables.  Initialize
514         have_fpu to 0 instead of 1.
515
516 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
517
518         * arch/ppc-linux-common.c (ppc_linux_match_description):
519         Parenthesize tdesc assignements and indent them properly.
520
521 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
522
523         * ppc-linux-nat.c (fetch_register): Change if statement to else
524         if.
525         (store_register): Likewise.
526
527 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
528
529         * rs6000-tdep.c: Remove reggroups.h include.
530         (rs6000_pseudo_register_reggroup_p): Remove.
531         (rs6000_gdbarch_init): Remove call to
532         set_tdesc_pseudo_register_reggroup_p.
533
534 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
535
536         * reggroups.c (default_register_reggroup_p): Return true for
537         decfloat registers and float_reggroup.
538
539 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
540
541         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
542         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
543         ppc_linux_collect_vrregset by regcache_collect_regset.
544
545 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
546
547         * linux-tdep.c (linux_collect_regset_section_cb): Use
548         std::vector<gdb_byte> instead of char * and malloc for buf.
549         Remove xfree.
550
551 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
552
553         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
554         symtab_start instead of always using language_unknown.
555
556 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
557
558         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
559         READ_P parameter, catch and ignore register access errors from
560         either the old or new MISA location.
561         (riscv_has_feature): Update call to riscv_read_misa_reg.
562
563 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
564
565         * python/py-function.c (convert_values_to_python): Return
566         gdbpy_ref<>.  Add header comment.
567         (fnpy_call): Adjust.
568
569 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
570
571         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
572         (cmdpy_completer_handle_brkchars): Adjust.
573         (cmdpy_completer): Adjust.
574
575 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
576
577         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
578         Pass correct regnum to raw_supply_zeroed.
579
580 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
581
582         * regcache.c (cooked_read_test): Add CSKY to the list of
583         architectures with a save_reggroup
584
585 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
586
587         PR gdb/23368
588         * infrun.c (follow_exec): In the follow_exec_mode_new case,
589         transfer terminal state from old new new inferior.
590         * terminal.h (swap_terminal_info): New function.
591         * inflow.c (swap_terminal_info): New function.
592
593 2018-10-23  Tom Tromey  <tom@tromey.com>
594
595         * record-btrace.c (get_thread_current_frame_id): Rename from
596         get_thread_current_frame.  Return a frame_id.
597         (record_btrace_start_replaying): Update.
598
599 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
600
601         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
602         for CSRs.
603
604 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
605
606         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
607         have_nonsteppable_watchpoint attribute to 1.
608
609 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
610
611         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
612         register names.
613         (struct register_alias): Rename to...
614         (struct riscv_register_alias): ...this, and update comment.
615         (riscv_register_aliases): Update type, and alias names.  Remove
616         CSR names from this list.
617         (riscv_register_name): Use riscv_gdb_reg_names for int and float
618         register names.  Add an extra assertion.
619         (riscv_is_regnum_a_named_csr): New function.
620         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
621
622 2018-10-22  Jim Wilson  <jimw@sifive.com>
623
624         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
625         FP reg smaller than FP reg size, and fill with -1 instead of 0.
626
627         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
628         (riscv_register_type): Use them.
629         (riscv_print_one_register_info): Handle union of floats same as float.
630         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
631         riscv_fpreg_q_type fields.
632
633 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
634
635         * gdbarch.sh (gdbarch_num_cooked_regs): New.
636         * gdbarch.h: Re-generate.
637         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
638         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
639         * eval.c (evaluate_subexp_standard): Likewise.
640         * findvar.c (value_of_register): Likewise.
641         (value_of_register_lazy): Likewise.
642         (address_from_register): Likewise.
643         * frame.c (get_frame_register_bytes): Likewise.
644         * gdbarch-selftests.c (register_to_value_test): Likewise.
645         * h8300-tdep.c (h8300_register_type): Likewise.
646         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
647         (i386_svr4_reg_to_regnum): Likewise.
648         * infcmd.c (default_print_registers_info): Likewise.
649         (registers_info): Likewise.
650         (print_vector_info): Likewise.
651         (default_print_float_info): Likewise.
652         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
653         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
654         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
655         (mi_cmd_data_list_changed_registers): Likewise.
656         (mi_cmd_data_list_register_values): Likewise.
657         (mi_cmd_data_write_register_values): Likewise.
658         (mi_cmd_trace_frame_collected): Likewise.
659         * mips-tdep.c (print_gp_register_row): Likewise.
660         (mips_print_registers_info): Likewise.
661         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
662         * regcache.c (init_regcache_descr): Likewise.
663         (register_size): Likewise.
664         (register_dump::dump): Likewise.
665         (cooked_read_test): Likewise.
666         (cooked_write_test): Likewise.
667         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
668         (rs6000_gdbarch_init): Likewise.
669         * stabsread.c (stab_reg_to_regnum): Likewise.
670         * stack.c (info_frame_command): Likewise.
671         * target-descriptions.c (tdesc_register_name): Likewise.
672         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
673         * tui/tui-regs.c (tui_show_register_group): Likewise.
674         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
675         (user_reg_map_regnum_to_name): Likewise.
676         (value_of_user_reg): Likewise.
677         (maintenance_print_user_registers): Likewise.
678         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
679         (xtensa_register_name): Likewise.
680         (xtensa_register_type): Likewise.
681         (xtensa_reg_to_regnum): Likewise.
682         (xtensa_pseudo_register_read): Likewise.
683         (xtensa_pseudo_register_write): Likewise.
684
685 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
686
687         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
688         correctly-sized buffer with raw_read.
689         (amd64_pseudo_register_write): Use correctly-sized buffer for
690         raw_read/raw_write.
691
692 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
693
694         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
695         in add_prefix_cmd of set print type.
696
697 2018-10-19  Tom Tromey  <tom@tromey.com>
698
699         PR tui/18388:
700         * NEWS: Mention tabset deprecation.
701         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
702         (update_tab_width): New function.
703         (tui_set_tab_width, tui_show_tab_width): New functions.
704         (tui_set_tab_width_command): Use update_tab_width.
705         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
706         Add new "set tui tab-width" command.
707         * tui/tui-source.c (tui_set_source_content): Update.
708         * tui/tui-disasm.c (tui_set_disassem_content): Update.
709         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
710         Don't declare.
711         (tui_tab_width): Declare.
712         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
713         (tui_set_default_tab_len): Remove.
714
715 2018-10-19  Tom Tromey  <tom@tromey.com>
716
717         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
718         (key_is_backspace, tui_getc): Don't declare.
719         * tui/tui-io.c (key_is_start_sequence): Now static.
720         (key_is_end_sequence, key_is_backspace): Remove.
721         (tui_getc): Now static.
722
723 2018-10-19  Tom Tromey  <tom@tromey.com>
724
725         * symfile.c (reread_symbols): Clear "static_links".
726
727 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
728
729         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
730         define.
731         (aarch64_linux_sigframe_init): Extra boundary checks.
732
733 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
734
735         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
736         the possibly non-existent tdesc type 'vec128', but the type of raw
737         register v16 instead.
738
739 2018-10-19  Gary Benson <gbenson@redhat.com>
740
741         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
742
743 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
744
745         PR cli/23785
746         * cli/cli-dump.c (restore_binary_file): Check if "file" is
747         NULL.
748
749 2018-10-17  Paul Koning  <paul_koning@dell.com>
750
751         * charset.c (convert_between_encodings): Fix unsigned overflow.
752
753 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
754
755         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
756         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
757         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
758         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
759         New functions.
760         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
761         and fbsd_info_proc_mappings_header.
762         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
763         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
764         New.
765
766 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
767
768         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
769         Solaris Maintainer.
770
771 2018-10-15  Tom Tromey  <tom@tromey.com>
772
773         * tui/tui.c (strcat_to_buf): Remove casts.
774         * tui/tui-winsource.c (tui_show_source_line)
775         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
776         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
777         * tui/tui-windata.c (tui_first_data_item_displayed)
778         (tui_delete_data_content_windows, tui_erase_data_content)
779         (tui_display_all_data, tui_display_data_from)
780         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
781         * tui/tui-win.c (tui_set_win_height)
782         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
783         casts.
784         * tui/tui-win.c (tui_resize_all): Remove casts.
785         (tui_scroll_backward_command, tui_set_focus)
786         (tui_set_tab_width_command): Likewise.
787         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
788         * tui/tui-regs.c (tui_show_register_group): Remove cast.
789         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
790         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
791         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
792         Remove casts.
793
794 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
795
796         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
797         AArch64/ARM maintainer.
798
799 2018-10-11  Gary Benson <gbenson@redhat.com>
800
801         * interps.h (interp::m_name): Make private and mutable.
802         * interps.c (interp::~interp): Free m_name.
803
804 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
805             Simon Marchi <simark@simark.ca>
806
807         * README (`configure' options): Add documentation for new
808         "--enable-unit-tests" option.
809         * acinclude.m4: Include "selftest.m4".
810         * configure: Regenerate.
811         * configure.ac: Use "GDB_AC_SELFTEST".
812         * maint.c (maintenance_selftest): Update message informing
813         that selftests have been disabled.
814         (maintenance_info_selftests): Likewise.
815         * selftest.m4: New file.
816
817 2018-10-10  Gary Benson <gbenson@redhat.com>
818
819         * remote.c (remote_target::remote_send_printf): Add
820         missing va_end found by Coverity.
821
822 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
823
824         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
825
826 2018-10-09  Tom Tromey  <tom@tromey.com>
827
828         * configure: Rebuild.
829         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
830         * NEWS: Update --enable-ubsan documentation.
831
832 2018-10-09  Gary Benson <gbenson@redhat.com>
833
834         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
835         found by Coverity.
836
837 2018-10-08  Tom Tromey  <tom@tromey.com>
838
839         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
840         variable.
841         (riscv_fbsd_init_abi): Likewise.
842
843 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
844         * valops.c (value_struct_elt_for_reference): Rename local variable
845         to work around the shadowing a previous local warning.
846
847 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
848
849         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
850         * NEWS: Mention new FreeBSD/riscv native configuration.
851         * configure.host: Add riscv*-*-freebsd*.
852         * configure.nat: Likewise.
853         * riscv-fbsd-nat.c: New file.
854
855 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
856
857         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
858         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
859         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
860         * NEWS: Mention new FreeBSD/riscv target.
861         * configure.tgt: Add riscv*-*-freebsd*.
862         * riscv-fbsd-tdep.c: New file.
863         * riscv-fbsd-tdep.h: New file.
864
865 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
866
867         * regcache.h (struct regcache_map_entry): Note that this type can
868         be used with traditional frame caches.
869         * trad-frame.c (trad_frame_set_reg_regmap): New.
870         * trad-frame.h (trad_frame_set_reg_regmap): New.
871
872 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
873
874         PR c++/16841
875         * valops.c (get_virtual_base_offset): New function.
876         (value_struct_elt_for_reference): Use it to get virtual base offset
877         and add it in calculating class member address.
878
879 2018-10-08   John Darrington <john@darrington.wattle.id.au>
880
881     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
882       (check_producer): Check if the producer is codewarrior.
883       (producer_is_codewarrior): New function.
884       (lnp_state_machine::record_line): Ignore is_stmt flag for records
885        produced by codewarrior.
886       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
887
888 2018-10-06  Tom Tromey  <tom@tromey.com>
889
890         PR python/19399:
891         * python/py-inferior.c: Add "architecture" entry.
892         (infpy_architecture): New function.
893
894 2018-10-06  Tom Tromey  <tom@tromey.com>
895
896         PR python/21765:
897         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
898         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
899         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
900         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
901
902 2018-10-06  Tom Tromey  <tom@tromey.com>
903
904         PR build/17077:
905         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
906         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
907         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
908         #include.
909
910 2018-10-06  Tom Tromey  <tom@tromey.com>
911
912         * python/py-breakpoint.c (bppy_get_location): Handle a
913         bp_breakpoint without a location.
914
915 2018-10-06  Tom Tromey  <tom@tromey.com>
916
917         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
918         (_RegEx): Reformat help text.
919         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
920         (AnyCallerIs, AnyCallerMatches): Reformat help text.
921         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
922         text.
923         * python/lib/gdb/command/xmethods.py (InfoXMethod)
924         (EnableXMethod, DisableXMethod): Remove help indentation.
925         Capitalize meta-syntactic variables.
926         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
927         (EnableUnwinder, DisableUnwinder): Remove help indentation.
928         Capitalize meta-syntactic variables.
929         * python/lib/gdb/command/explore.py (ExploreCommand)
930         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
931         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
932         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
933         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
934         Remove help indentation.
935         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
936         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
937         (DisableFrameFilter, SetFrameFilterPriority)
938         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
939
940 2018-10-06  Tom Tromey  <tom@tromey.com>
941
942         PR tui/28819:
943         * tui/tui-io.c (gdb_wgetch): New function.
944         (tui_mld_getc, tui_getc): Use it.
945
946 2018-10-05  Tom Tromey  <tom@tromey.com>
947
948         * sol-thread.c (sol_thread_target::wait): Rename inner
949         "save_ptid".
950
951 2018-10-04  Tom Tromey  <tom@tromey.com>
952
953         * configure: Rebuild.
954         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
955
956 2018-10-04  Tom Tromey  <tom@tromey.com>
957
958         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
959         declaration of "block".
960
961 2018-10-04  Tom Tromey  <tom@tromey.com>
962
963         * common/filestuff.c (fdwalk): Remove inner declaration of
964         "result".
965
966 2018-10-04  Tom Tromey  <tom@tromey.com>
967
968         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
969         "structs_addr" and hoist declaration.
970
971 2018-10-04  Tom Tromey  <tom@tromey.com>
972
973         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
974         variable "size".
975
976 2018-10-04  Tom Tromey  <tom@tromey.com>
977
978         * mdebugread.c (parse_partial_symbols): Use std::string.
979
980 2018-10-04  Tom Tromey  <tom@tromey.com>
981
982         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
983         * p-valprint.c (pascal_val_print): Split inner "i" variable.
984         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
985         header.
986         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
987         more inner scope.
988         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
989         * varobj.c (varobj_update): Rename inner "newobj",
990         "type_changed".
991         * valprint.c (generic_emit_char): Rename inner "buf".
992         * valops.c (find_overload_match): Rename inner "temp".
993         (value_struct_elt_for_reference): Declare "v" in more inner
994         scope.
995         * v850-tdep.c (v850_push_dummy_call): Rename "len".
996         * unittests/array-view-selftests.c (run_tests): Rename inner
997         "vec".
998         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
999         header.
1000         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1001         "tsv" in more inner scope.
1002         (print_one_static_tracepoint_marker): Rename inner
1003         "tuple_emitter".
1004         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1005         (tic6x_push_dummy_call): Don't redeclare "addr".
1006         * target-float.c: Declare "dto" lower.
1007         * symtab.c (lookup_local_symbol): Rename inner "sym".
1008         (find_pc_sect_line): Rename inner "pc".
1009         * stack.c (print_frame): Don't redeclare "gdbarch".
1010         (return_command): Rename inner "gdbarch".
1011         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1012         "sp".
1013         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1014         header.
1015         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1016         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1017         scope.
1018         * remote.c (remote_target::update_thread_list): Don't redeclare
1019         "tp".
1020         (remote_target::process_initial_stop_replies): Rename inner
1021         "thread".
1022         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1023         (remote_target::wait_as): Don't redeclare "stop_reply".
1024         (remote_target::get_thread_local_address): Rename inner
1025         "result".
1026         (remote_target::get_tib_address): Likewise.
1027
1028         * regcache.c (cooked_read_test): Rename "regnum".
1029         * record-btrace.c (cmd_record_btrace_start): Rename inner
1030         "exception".
1031         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1032         loop header.
1033         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1034         header.
1035         (ppu2spu_sniffer): Rename inner "buf".
1036         * parse.c (operator_check_standard): Rename inner "type",
1037         "objfile".
1038         * p-valprint.c (pascal_val_print): Introduce new scope for
1039         "low_bound", "high_bound".
1040         * p-exp.y (yylex): Declare "i" in loop header.
1041         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
1042         Lower declaration of "s".
1043         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
1044         header.
1045         (nios2_push_dummy_call): Rename "len".
1046         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
1047         "buf".
1048         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
1049         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
1050         (linux_xfer_osdata_modules): Likewise.
1051         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
1052         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
1053         (mips_o64_push_dummy_call): Likewise.
1054         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
1055         "op".
1056         * mi/mi-main.c (list_available_thread_groups): Rename inner
1057         "tuple_emitter".
1058         (mi_cmd_data_read_memory): Rename inner "opts".
1059         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
1060         "tuple_emitter".
1061         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
1062         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
1063         more inner scope.
1064         (parse_partial_symbols): Rename inner "pst", "p", "name"
1065         * main.c (captured_main_1): Rename inner "i"s.
1066         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
1067         "oso2".
1068         * linux-tdep.c (linux_info_proc): Rename inner "filename".
1069         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
1070         * infrun.c (handle_no_resumed): Don't redeclare "thread".
1071         (handle_signal_stop): Rename inner "gdbarch".
1072         (handle_command): Declare "signum" in loop header.
1073         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
1074         "status".
1075         (examine_prologue): Rename inner "sol" and "sof".
1076         (ia64_extract_return_value): Rename inner "val".  Declare another
1077         "val" in a more inner scope.
1078         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
1079         inner scope.
1080         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
1081         "except".
1082         * findvar.c (default_read_var_value): Don't redeclare "addr".
1083         * f-exp.y (yylex): Declare "i" in loop header.
1084         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1085         Rename inner "type", "expect_type".
1086         (evaluate_subexp_for_sizeof): Rename inner "pc".
1087         * elfread.c (elf_symfile_read): Rename inner "abfd".
1088         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1089         "bytes_read".
1090         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1091         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1092         (dwarf_decode_line_header): Rename inner "lh".
1093         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1094         "offset".  Declare "i" in loop header.
1095         (disassemble_dwarf_expression): Rename inner "addr_size".
1096         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1097         inner "result".
1098         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1099         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1100         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1101         "inner_list_emitter".
1102         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1103         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1104         declaration in a block.
1105         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1106         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1107         "obstack_final_size".
1108         * cp-support.c (inspect_type): Declare "i" in loop header.
1109         * compile/compile.c (compile_instance::insert_symbol_error):
1110         Rename inner "e".
1111         * common/agent.c (agent_run_command): Remove inner "ret"
1112         declaration.
1113         * coffread.c (coff_symfile_read): Rename inner "name".
1114         (coff_symfile_read): Rename inner "abfd".
1115         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1116         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1117         "high".
1118         * c-exp.y (lex_one_token): Move "len" declaration lower.
1119         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1120         "gdbarch".
1121         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1122         "b".
1123         (watch_command_1): Declare "mark" later.
1124         (clear_command): Don't shadow "a" or "b".
1125         (delete_command): Rename inner "b".
1126         (delete_trace_command): Likewise.
1127         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1128         "op".
1129         (arm_gdbarch_init): Remove inner "e_flags".
1130         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1131         "offset" in inner blocks.
1132
1133 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1134
1135         * dwarf-index-write.c (file_write): Don't write if the vector is
1136         empty.
1137
1138 2018-10-05  Tom de Vries  <tdevries@suse.de>
1139
1140         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1141         PyArg_ParseTuple call.
1142
1143 2018-10-05  Tom de Vries  <tdevries@suse.de>
1144
1145         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1146         PyArg_ParseTuple call.
1147
1148 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1149
1150         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1151         to avoid exceeding 80 characters per line limit.
1152
1153 2018-10-04  Tom Tromey  <tom@tromey.com>
1154
1155         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1156         (reread_symbols): Update.
1157         * complaints.h (clear_complaints): Remove argument.
1158         * complaints.c (enum complaint_series): Remove.
1159         (series): Remove global.
1160         (complaint_internal): Update.
1161         (clear_complaints): Remove argument.
1162
1163 2018-10-04  Tom Tromey  <tom@tromey.com>
1164
1165         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1166         debugging symbols" message if there is a separate debug objfile.
1167
1168 2018-10-04  Tom Tromey  <tom@tromey.com>
1169
1170         PR cli/19551:
1171         * symfile.c (symbol_file_add_with_addrs): Update output.
1172         * psymtab.c (require_partial_symbols): Update output.
1173
1174 2018-10-04  Tom Tromey  <tom@tromey.com>
1175
1176         PR cli/22234:
1177         * complaints.c: Emit \n.
1178
1179 2018-10-04  Tom Tromey  <tom@tromey.com>
1180
1181         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1182         (separate_debug_file_exists, find_separate_debug_file)
1183         (add_symbol_file_command, reread_symbols, allocate_symtab)
1184         (allocate_compunit_symtab): Use filtered printing, not
1185         unfiltered.
1186         * psymtab.c (require_partial_symbols, dump_psymtab)
1187         (allocate_psymtab): Use filtered printing, not unfiltered.
1188
1189 2018-10-04  Tom Tromey  <tom@tromey.com>
1190
1191         * complaints.c (complaint_internal): Correctly check complaint
1192         count.
1193
1194 2018-10-04  Tom Tromey  <tom@tromey.com>
1195
1196         * complaints.h (struct complaints): Remove declaration.
1197         * complaints.c (clear_complaints): Remove an unused variable.
1198
1199 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1200
1201         * MAINTAINERS (Write After Approval): Add self.
1202
1203 2018-10-03  Tom Tromey  <tom@tromey.com>
1204
1205         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1206         "buffer_contents".
1207         * coffread.c (coff_symtab_read): Initialize "newobj".
1208
1209 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1210
1211         * dwarf2read.c (read_func_scope): Remove struct keyword in
1212         range-based for.
1213
1214 2018-10-03  Tom Tromey  <tom@tromey.com>
1215
1216         * README: Mention --enable-ubsan.
1217         * NEWS: Mention --enable-ubsan.
1218         * acinclude.m4: Include sanitize.m4.
1219         * configure: Rebuild.
1220         * configure.ac: Call AM_GDB_UBSAN.
1221         * sanitize.m4: New file.
1222
1223 2018-10-03  Tom Tromey  <tom@tromey.com>
1224
1225         * expression.h (enum exp_opcode): Use uint8_t as base type.
1226         * expprint.c (op_name): Handle invalid opcodes.
1227
1228 2018-10-03  Tom Tromey  <tom@tromey.com>
1229
1230         * parse.c (prefixify_expression): Add assert.
1231         (parse_exp_in_context_1): Throw exception if the expression is
1232         empty.
1233
1234 2018-10-03  Tom Tromey  <tom@tromey.com>
1235
1236         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1237
1238 2018-10-03  Tom Tromey  <tom@tromey.com>
1239
1240         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1241
1242 2018-10-03  Tom Tromey  <tom@tromey.com>
1243
1244         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1245         unsigned.
1246
1247 2018-10-03  Tom Tromey  <tom@tromey.com>
1248
1249         * findvar.c (extract_integer): Do work in an unsigned type.
1250
1251 2018-10-03  Tom Tromey  <tom@tromey.com>
1252
1253         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1254         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1255         base type.
1256         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1257         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1258         type.
1259         * c-lang.h (enum c_string_type_values): Use unsigned as base
1260         type.
1261         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1262
1263 2018-10-03  Tom Tromey  <tom@tromey.com>
1264
1265         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1266         <~dwarf2_frame_state_reg_info>: Update.
1267         <dwarf2_frame_state_reg_info>: Update.
1268         <alloc_regs>: Add assertion.  Update.
1269         <reg>: Now a std::vector.
1270         <num_regs>: Remove.
1271         <swap>: Update.
1272         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1273         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1274
1275 2018-10-03  Tom Tromey  <tom@tromey.com>
1276
1277         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1278
1279 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1280
1281         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1282
1283 2018-10-02  Tom Tromey  <tom@tromey.com>
1284
1285         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1286
1287 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1288
1289         * NEWS: Mention changed commands.
1290         * ser-uds.c: New file.
1291         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1292         * configure: Regenerate.
1293         * Makefile.in: Add new file.
1294         * serial.c (serial_open): Check if filename is a socket
1295           and lookup the appropriate interface accordingly.
1296
1297 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1298
1299         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1300         define.
1301         (AARCH64_EXTRA_MAGIC): Likewise.
1302         (AARCH64_FPSIMD_MAGIC): Likewise.
1303         (AARCH64_SVE_MAGIC): Likewise.
1304         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1305         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1306         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1307         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1308         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1309         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1310         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1311         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1312         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1313         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1314         (read_aarch64_ctx): Add function.
1315         (aarch64_linux_sigframe_init): Detect FP registers.
1316
1317 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1318
1319         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1320         (AARCH64_D0_REGNUM): Likewise.
1321         (AARCH64_S0_REGNUM): Likewise.
1322         (AARCH64_H0_REGNUM): Likewise.
1323         (AARCH64_B0_REGNUM): Likewise.
1324         (AARCH64_SVE_V0_REGNUM): Likewise.
1325         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1326         (AARCH64_D0_REGNUM): Likewise.
1327         (AARCH64_S0_REGNUM): Likewise.
1328         (AARCH64_H0_REGNUM): Likewise.
1329         (AARCH64_B0_REGNUM): Likewise.
1330         (AARCH64_SVE_V0_REGNUM): Likewise.
1331
1332 2018-10-01  Gary Benson <gbenson@redhat.com>
1333
1334         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1335         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1336         prfpregset_t instead of gdb_prfpregset_t.
1337         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1338         * configure, config.in: Rebuild.
1339
1340 2018-10-01  Gary Benson <gbenson@redhat.com>
1341
1342         * common/gdb_proc_service.h: New file, factored out from...
1343         * gdb_proc_service.h: Moved common code to the above file.
1344         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1345
1346 2018-10-01  Gary Benson <gbenson@redhat.com>
1347
1348         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1349         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1350
1351 2018-10-01  Gary Benson <gbenson@redhat.com>
1352
1353         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1354         (AC_CHECK_HEADERS): Check for linux/elf.h.
1355         * configure, config.in: Rebuild.
1356         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1357         doesn't define elf_fpregset_t.
1358
1359 2018-10-01  Gary Benson <gbenson@redhat.com>
1360
1361         * gdb_proc_service.h: Whitespace change.
1362
1363 2018-10-01  Tom Tromey  <tom@tromey.com>
1364
1365         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1366         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1367         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1368
1369 2018-10-01  Tom Tromey  <tom@tromey.com>
1370
1371         * README: Minor change.
1372
1373 2018-09-30  Pedro Alves  <palves@redhat.com>
1374
1375         * darwin-nat-info.c (darwin_debug_regions_recurse)
1376         (info_mach_exceptions_command): Remove unused local variables.
1377         * darwin-nat.c (darwin_decode_notify_message)
1378         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1379         (darwin_stop_inferior, darwin_setup_exceptions)
1380         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1381         (darwin_nat_target::attach, darwin_nat_target::detach)
1382         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1383         local variables.
1384         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1385         variables.
1386
1387 2018-09-29  Tom Tromey  <tom@tromey.com>
1388
1389         * README: Remove some leftover text.
1390
1391 2018-09-29  Tom Tromey  <tom@tromey.com>
1392
1393         * PROBLEMS: Rewrite.
1394         * README: Update.
1395
1396 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1397
1398         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1399         case with explicit breakpoint kind.
1400         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1401         'additional_info' and related logic.
1402         (riscv_debug_breakpoints): New variable.
1403         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1404         instruction to determine the breakpoint kind.
1405         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1406         flag.  Update description of 'set/show riscv
1407         use-compressed-breakpoints' flag.
1408
1409 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1410
1411         (NEWS): Mention changes to frame related commands.
1412         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1413         (add_prefix_cmd_suppress_notification): New function.
1414         (add_com_suppress_notification): Call
1415         add_cmd_suppress_notification.
1416         * command.h (add_cmd_suppress_notification): Declare.
1417         (add_prefix_cmd_suppress_notification): Declare.
1418         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1419         (parse_frame_specification): Moved from stack.c, with
1420         simplification to handle a single argument.
1421         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1422         switch to the selected frame.  Add a header comment.
1423         * stack.c: Remove 'safe-ctype.h' include.
1424         (find_frame_for_function): Add declaration.
1425         (find_frame_for_address): New function.
1426         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1427         (frame_selection_by_function_completer): New function.
1428         (info_frame_command): Rename to...
1429         (info_frame_command_core): ...this, and update parameter types.
1430         (select_frame_command): Rename to...
1431         (select_frame_command_core): ...this, and update parameter types.
1432         (frame_command): Rename to...
1433         (frame_command_core): ...this, and update parameter types.
1434         (class frame_command_helper): New class to wrap implementations of
1435         frame related sub-commands.
1436         (frame_apply_cmd_list): New static global.
1437         (frame_cmd_list): Make static.
1438         (select_frame_cmd_list): New global for sub-commands.
1439         (info_frame_cmd_list): New global for sub-commands.
1440         (_initialize_stack): Register sub-commands for 'frame',
1441         'select-frame', and 'info frame'.  Update 'frame apply' commands
1442         to use frame_apply_cmd_list.  Move function local static
1443         frame_apply_list to file static frame_apply_cmd_list for
1444         consistency.
1445         * stack.h (select_frame_command): Delete declarationn.
1446         (select_frame_for_mi): Declare new function.
1447
1448 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1449
1450         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1451         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1452         and NOP.
1453
1454 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1455
1456         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1457
1458 2018-09-26  Tom Tromey  <tom@tromey.com>
1459
1460         * valops.c (auto_abandon): Remove dead code.
1461
1462 2018-09-26  Tom Tromey  <tom@tromey.com>
1463
1464         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1465
1466 2018-09-24  Tom Tromey  <tom@tromey.com>
1467
1468         * common/pathstuff.c (get_standard_cache_dir): Make
1469         "xdg_cache_home" and "home" const.
1470         * top.c (init_history): Make "tmpenv" const.
1471         * main.c (get_init_files): Make "homedir" const.
1472
1473 2018-09-23  Tom Tromey  <tom@tromey.com>
1474
1475         PR python/18852:
1476         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1477
1478 2018-09-23  Tom Tromey  <tom@tromey.com>
1479
1480         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1481         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1482         * python/python-internal.h (gdbpy_handle_exception): Declare.
1483         * python/py-utils.c (gdbpy_handle_exception): New function.
1484
1485 2018-09-23  Tom Tromey  <tom@tromey.com>
1486
1487         PR python/17284:
1488         * python/py-type.c (typy_template_argument): Check for negative
1489         argument number.
1490
1491 2018-09-23  Tom Tromey  <tom@tromey.com>
1492
1493         PR python/14062:
1494         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1495
1496 2018-09-23  Tom Tromey  <tom@tromey.com>
1497
1498         PR python/18170:
1499         * python/py-value.c (valpy_int): Allow conversion from pointer
1500         type.
1501
1502 2018-09-23  Tom Tromey  <tom@tromey.com>
1503
1504         PR python/20126:
1505         * python/py-value.c (valpy_int): Respect type sign.
1506
1507 2018-09-23  Tom Tromey  <tom@tromey.com>
1508
1509         PR python/18352;
1510         * python/py-value.c (valpy_float): Allow conversions from int or
1511         char.
1512         (valpy_int, valpy_long): Allow conversions from float.
1513
1514 2018-09-23  Tom Tromey  <tom@tromey.com>
1515
1516         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1517         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1518
1519 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1520
1521         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1522         __sighndlr.
1523         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1524
1525 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1526
1527         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1528         target_terminal::ours().
1529
1530 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1531
1532         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1533         of vl to ULONGEST.
1534
1535 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1536
1537         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1538         redundant condition.
1539
1540 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1541
1542         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1543
1544         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1545         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1546         * sol-thread.c (ps_pdmodel): Don't guard definition.
1547
1548         * procfs.c: Fix formatting.
1549
1550         * procfs.c (sysset_t_alloc): Remove.
1551         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1552         (procfs_debug_inferior): Likewise.
1553         (procfs_set_exec_trap): Likewise.
1554         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1555         (proc_set_traced_sysexit): Likewise.
1556
1557         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1558         (dead_procinfo): Likewise.
1559         (proc_warn): Likewise.
1560         (proc_error): Likewise.
1561         (proc_get_LDT_entry): Likewise.
1562         (do_attach): Likewise.
1563         (procfs_target::pid_to_str): Likewise.
1564         (iterate_over_mappings): Likewise.
1565
1566         * procfs.c (create_procinfo): Fix ARI warning.
1567         (proc_get_status): Likewise.
1568         (proc_stop_process): Likewise.
1569         (proc_run_process): Likewise.
1570         (proc_kill): Likewise.
1571         (proc_get_LDT_entry): Likewise.
1572         (procfs_find_LDT_entry): Likewise.
1573         (proc_update_threads): Likewise.
1574         (proc_iterate_over_threads): Likewise.
1575         (do_attach): Likewise.
1576         (procfs_xfer_memory): Likewise.
1577         (invalidate_cache): Likewise.
1578         (procfs_target::resume): Likewise.
1579         (procfs_init_inferior): Likewise.
1580         (procfs_set_exec_trap): Likewise.
1581         (procfs_target::thread_alive): Likewise.
1582         (procfs_target::pid_to_exec_file): Likewise.
1583         (iterate_over_mappings): Likewise.
1584         (procfs_target::make_corefile_notes): Likewise.
1585         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1586
1587         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1588         (procfs_find_LDT_entry): Likewise.
1589         * sol-thread.c (ps_lgetLDT): Likewise.
1590
1591 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1592
1593         PR tdep/17903
1594         * procfs.c (procfs_target): Declare pid_to_exec_file.
1595         (procfs_target::pid_to_exec_file): New.
1596
1597 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1598
1599         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1600         renaming.
1601         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1602         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1603
1604 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1605
1606         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1607         (supply_fpregset, fill_fpregset): Move ...
1608         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1609         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1610         Remove references to ioctl-based procfs.
1611         Include <sys/reg.h>.
1612         Remove PR_MODEL_NATIVE guards.
1613         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1614         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1615
1616 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1617
1618         PR gdb/20981:
1619         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1620         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1621         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1622
1623 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1624
1625         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1626         (fbsd_print_sockaddr_in6): Likewise.
1627
1628 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1629             Chris January  <chris.january@arm.com>
1630
1631         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1632         (evaluate_subexp_standard): Return a dummy type when
1633         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1634         OP_F77_UNDETERMINED_ARGLIST case.
1635         * expression.h (enum noside): Update comment.
1636
1637 2018-09-19  George Vasick <george.vasick@oracle.com>
1638
1639         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1640
1641 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1642             April Chin <april.chin@oracle.com>
1643             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1644
1645         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1646         uint_t lwpid_t.
1647         (create_procinfo): Print pids in /proc without leading zeros.
1648
1649 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1650
1651         * nios2-tdep.c (nios2_gcc_target_options): New.
1652         (nios2_gdb_arch_init): Install new hook.
1653
1654 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1655
1656         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1657         New file.
1658         * update-gnulib.sh: Apply patch.
1659         * configure: Re-generate.
1660
1661 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1662
1663         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1664         description.  Make "info proc" command descriptions more
1665         consistent.
1666
1667 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1668
1669         * NEWS: Mention 'info proc files' command.
1670
1671 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1672
1673         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1674         descriptors for IP_FILES and IP_ALL.
1675
1676 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1677
1678         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1679         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1680         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1681         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1682         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1683         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1684         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1685         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1686         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1687         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1688         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1689         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1690         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1691         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1692         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1693         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1694         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1695         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1696         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1697         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1698         (struct fbsd_sockaddr_un): New types.
1699         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1700         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1701         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1702         (fbsd_core_info_proc_files): New functions.
1703         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1704         IP_ALL.
1705         * fbsd-tdep.h (fbsd_info_proc_files_header)
1706         (fbsd_info_proc_files_entry): New.
1707
1708 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1709
1710         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1711         * infcmd.c (info_proc_cmd_files): New function.
1712         (_initialize_infcmd): Register 'info proc files' command.
1713
1714 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1715
1716         * gnulib/aclocal-m4-deps.mk: Re-generate.
1717         * gnulib/aclocal.m4: Re-generate.
1718         * gnulib/config.in: Re-generate.
1719         * gnulib/configure: Re-generate.
1720         * gnulib/import/Makefile.am: Re-generate.
1721         * gnulib/import/Makefile.in: Re-generate.
1722         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1723         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1724         * gnulib/import/arpa_inet.in.h: New file.
1725         * gnulib/import/inet_ntop.c: New file.
1726         * gnulib/import/m4/arpa_inet_h.m4: New file.
1727         * gnulib/import/m4/inet_ntop.m4: New file.
1728         * gnulib/import/m4/netinet_in_h.m4: New file.
1729         * gnulib/import/m4/socklen.m4: New file.
1730         * gnulib/import/m4/sockpfaf.m4: New file.
1731         * gnulib/import/m4/stdalign.m4: New file.
1732         * gnulib/import/m4/sys_uio_h.m4: New file.
1733         * gnulib/import/netinet_in.in.h: New file.
1734         * gnulib/import/stdalign.in.h: New file.
1735         * gnulib/import/sys_socket.c: New file.
1736         * gnulib/import/sys_socket.in.h: New file.
1737         * gnulib/import/sys_uio.in.h: New file.
1738         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1739         module.
1740
1741 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1742
1743         * gnulib/aclocal-m4-deps.mk: New file.
1744         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1745         deterministically.
1746
1747 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1748
1749         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1750         KVE_PATH.
1751
1752 2018-09-18  Tom Tromey  <tom@tromey.com>
1753
1754         * compile/compile-object-load.c (struct
1755         link_hash_table_cleanup_data): Add constructor and destructor.
1756         Use DISABLE_COPY_AND_ASSIGN.
1757         (~link_hash_table_cleanup_data): Rename from
1758         link_hash_table_free.  Now a destructor.
1759         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1760
1761 2018-09-18  Tom Tromey  <tom@tromey.com>
1762
1763         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1764         * compile/compile-object-load.c (struct munmap_list): Move to
1765         header file.
1766         (munmap_list::add): Rename from munmap_list_add; rewrite.
1767         (munmap_list::~munmap_list): Rename from munmap_list_free.
1768         (munmap_listp_free_cleanup): Remove.
1769         (compile_object_load): Update.
1770         * compile/compile-object-load.h (struct munmap_list): Move from
1771         compile-object-load.c.  Rewrite.
1772
1773 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1774
1775         * aarch64-tdep.c (pass_in_v): Use register size.
1776         (aarch64_extract_return_value): Likewise.
1777         (aarch64_store_return_value): Likewise.
1778
1779 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1780
1781         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1782         rlim_t.
1783
1784 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1785
1786         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1787         Fix short help line.
1788
1789 2018-09-17  Tom Tromey  <tom@tromey.com>
1790
1791         PR python/20445:
1792         * configure: Rebuild.
1793         * configure.ac: Conditionally use -DNDEBUG for Python.
1794
1795 2018-09-17  Tom Tromey  <tom@tromey.com>
1796
1797         * configure: Rebuild.
1798         * configure.ac: Use gmp as a library dependency when checking for
1799         mpfr.
1800
1801 2018-09-17  Pedro Alves  <palves@redhat.com>
1802
1803         * python/py-inferior.c (find_inferior_object): Delete.
1804
1805 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1806
1807         * compile/compile-cplus-types.c
1808         (compile_cplus_instance::enter_scope): Don't use new_scope after
1809         std::move.
1810
1811 2018-09-17  Tom Tromey  <tom@tromey.com>
1812
1813         * common/pathstuff.c (get_standard_cache_dir): Use
1814         ~/Library/Caches on macOS.
1815         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1816
1817 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1818
1819         PR python/23669
1820         * breakpoint.c (commands_cmd_element): New.
1821         (_initialize_breakpoint): Assign commands_cmd_element.
1822         * breakpoint.h (commands_cmd_element): New.
1823         * cli/cli-script.c (while_cmd_element, if_command,
1824         define_cmd_element): New.
1825         (command_name_equals): Remove.
1826         (process_next_line): Compare commands by pointer, not by name.
1827         (_initialize_cli_script): Assign the various cmd_list_element
1828         variables.
1829         * compile/compile.c (compile_cmd_element): New.
1830         (_initialize_compile): Assign compile_cmd_element.
1831         * compile/compile.h (compile_cmd_element): New.
1832         * guile/guile.c (guile_cmd_element): New.
1833         (install_gdb_commands): Assign guile_cmd_element.
1834         * guile/guile.h (guile_cmd_element): New.
1835         * python/python.c (python_cmd_element): New.
1836         (_initialize_python): Assign python_cmd_element.
1837         * python/python.h (python_cmd_element): New.
1838         * tracepoint.c (while_stepping_cmd_element): New.
1839         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1840         * tracepoint.h (while_stepping_cmd_element): New.
1841
1842 2018-09-17  Tom Tromey  <tom@tromey.com>
1843
1844         * infrun.c (save_infcall_suspend_state): Return
1845         infcall_suspend_state_up.
1846         (save_infcall_control_state): Return infcall_control_state_up.
1847         * inferior.h (save_infcall_suspend_state)
1848         (save_infcall_control_state): Declare later.  Return unique
1849         pointers.
1850
1851 2018-09-17  Tom Tromey  <tom@tromey.com>
1852
1853         * infrun.c (struct stop_context): Declare constructor,
1854         destructor, "changed" method.
1855         (stop_context::stop_context): Rename from save_stop_context.
1856         (stop_context::~stop_context): Rename from
1857         release_stop_context_cleanup.
1858         (normal_stop): Update.
1859         (stop_context::changed): Rename from stop_context_changed.  Return
1860         bool.
1861
1862 2018-09-17  Tom Tromey  <tom@tromey.com>
1863
1864         * inferior.h (struct infcall_suspend_state_deleter): New.
1865         (infcall_suspend_state_up): New typedef.
1866         (struct infcall_control_state_deleter): New.
1867         (infcall_control_state_up): New typedef.
1868         (make_cleanup_restore_infcall_suspend_state)
1869         (make_cleanup_restore_infcall_control_state): Don't declare.
1870         * infcall.c (call_function_by_hand_dummy): Update.
1871         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1872         (make_cleanup_restore_infcall_suspend_state): Remove.
1873         (do_restore_infcall_control_state_cleanup)
1874         (make_cleanup_restore_infcall_control_state): Remove.
1875
1876 2018-09-17  Tom Tromey  <tom@tromey.com>
1877
1878         * gdbthread.h (struct thread_control_state): Add initializer.
1879         (class thread_info) <control>: Remove initializer.
1880         * inferior.h (struct inferior_control_state): Add initializer.
1881         (class inferior) <control>: Remove initializer.
1882         (exit_inferior_1): Update.
1883         * infrun.c (struct infcall_control_state): Add constructors.
1884         (save_infcall_control_state): Use new.
1885         (restore_infcall_control_state, discard_infcall_control_state):
1886         Use delete.
1887
1888 2018-09-17  Tom Tromey  <tom@tromey.com>
1889
1890         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1891         unique_ptr.
1892         <siginfo_data>: Now a unique_xmalloc_ptr.
1893         (save_infcall_suspend_state, restore_infcall_suspend_state)
1894         (discard_infcall_suspend_state)
1895         (get_infcall_suspend_state_regcache): Update.
1896
1897 2018-09-17  Tom Tromey  <tom@tromey.com>
1898
1899         * gdbthread.h (struct thread_suspend_state): Add initializers.
1900         (class thread_info) <suspend>: Remove initializer.
1901         * infrun.c (struct infcall_suspend_state): Add initializers.
1902         (save_infcall_suspend_state): Use new.
1903         (discard_infcall_suspend_state): Use delete.
1904
1905 2018-09-16  Tom Tromey  <tom@tromey.com>
1906
1907         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1908         Remove.
1909         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1910         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1911         (py_varobj_iter_new): Likewise.
1912         (py_varobj_get_iterator): Use gdbpy_ref.
1913
1914 2018-09-16  Tom Tromey  <tom@tromey.com>
1915
1916         * python/py-threadevent.c (py_get_event_thread): Simplify.
1917         * python/py-inferior.c (infpy_thread_from_thread_handle):
1918         Return immediately after calling thread_to_thread_object.  Use
1919         Py_RETURN_NONE.
1920         (thread_to_thread_object): Set the exception on a NULL return.
1921
1922 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1923
1924         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1925
1926 2018-09-16  Tom Tromey  <tom@tromey.com>
1927
1928         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1929         Remove.
1930
1931 2018-09-16  Tom Tromey  <tom@tromey.com>
1932
1933         * python/python-internal.h (thread_to_thread_object): Change
1934         return type.
1935         * python/py-inferior.c (thread_to_thread_object): Return a new
1936         reference.
1937         (infpy_thread_from_thread_handle): Update.
1938         * python/py-infthread.c (gdbpy_selected_thread): Update.
1939         * python/py-stopevent.c (create_stop_event_object): Update.
1940         * python/py-threadevent.c (py_get_event_thread): Return a new
1941         reference.
1942         (py_get_event_thread): Update.
1943         * python/py-event.h (py_get_event_thread): Change return type.
1944         * python/py-continueevent.c (create_continue_event_object):
1945         Update.
1946
1947 2018-09-16  Tom Tromey  <tom@tromey.com>
1948
1949         * python/py-progspace.c (pspy_get_objfiles): Update.
1950         * python/python-internal.h (objfile_to_objfile_object): Change
1951         return type.
1952         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1953         Update.
1954         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1955         Update.
1956         * python/python.c (gdbpy_get_current_objfile): Update.
1957         (gdbpy_objfiles): Update.
1958         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1959         Update.
1960         (objfile_to_objfile_object): Return a new reference.
1961         * python/py-symtab.c (stpy_get_objfile): Update.
1962         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1963         Update.
1964
1965 2018-09-16  Tom Tromey  <tom@tromey.com>
1966
1967         * python/py-inferior.c (infpy_get_progspace): Update.
1968         * python/python-internal.h (pspace_to_pspace_object): Change
1969         return type.
1970         * python/py-newobjfileevent.c
1971         (create_clear_objfiles_event_object): Update.
1972         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1973         Update.
1974         * python/python.c (gdbpy_get_current_progspace): Update.
1975         (gdbpy_progspaces): Update.
1976         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1977         reference.
1978         * python/py-objfile.c (objfpy_get_progspace): Update.
1979         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1980         Update.
1981
1982 2018-09-16  Tom Tromey  <tom@tromey.com>
1983
1984         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1985         (solib_name, block_for_pc, find_pc_line): New functions.
1986         (execute_unwinders): Update.
1987         * python/py-block.c (gdbpy_block_for_pc): Remove.
1988         * python/py-inferior.c (infpy_get_progspace): New function.
1989         (inferior_object_getset) <progspace>: Add.
1990         * python/py-progspace.c (pspy_objfiles): Rewrite.
1991         (pspy_solib_name, pspy_block_for_pc)
1992         (pspy_find_pc_line, pspy_is_valid): New functions.
1993         (progspace_object_methods): Add entries for solib_name,
1994         block_for_pc, find_pc_line, is_valid.
1995         * python/python-internal.h (gdbpy_block_for_pc)
1996         (build_objfiles_list): Don't declare.
1997         * python/python.c: Don't include solib.h.
1998         (gdbpy_solib_name, gdbpy_find_pc_line)
1999         (gdbpy_get_current_progspace, build_objfiles_list)
2000         (gdbpy_objfiles): Remove.
2001         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2002         solib_name, find_pc_line>: Remove entries.
2003
2004 2018-09-16  Tom Tromey  <tom@tromey.com>
2005
2006         * top.c (new_ui_command): Use GNU style for metasyntactic
2007         variables.
2008         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2009         variables.
2010         * maint.c (maintenance_translate_address): Remove "<>" around
2011         text.
2012         * interps.c (interpreter_exec_cmd): Use GNU style for
2013         metasyntactic variables.
2014         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2015         metasyntactic variables.
2016         * tracepoint.c (tfind_range_command): Use GNU style for
2017         metasyntactic variables.
2018         (tfind_outside_command): Likewise.
2019         (_initialize_tracepoint): Likewise.
2020         * remote.c (extended_remote_target::create_inferior): Use GNU
2021         style for metasyntactic variables.
2022         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2023         metasyntactic variables.
2024         (adi_assign_command): Likewise.
2025
2026 2018-09-16  Tom Tromey  <tom@tromey.com>
2027
2028         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2029         metasyntactic variables.  Print message if no disassembler options
2030         are available.
2031
2032 2018-09-15  Tom Tromey  <tom@tromey.com>
2033
2034         * infcmd.c (get_inferior_args): Return const char *.
2035         * inferior.h (get_inferior_args): Return type now const.
2036         * linux-tdep.c (linux_fill_prpsinfo): Update.
2037         * procfs.c (procfs_target::make_corefile_notes): Update.
2038
2039 2018-09-07  Tom Tromey  <tom@tromey.com>
2040
2041         * python/python.c (execute_gdb_command): Call bpstat_do_actions
2042         inside the TRY.
2043
2044 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
2045
2046         * nios2-tdep.c (nios2_type_align): New.
2047         (nios2_gdb_arch_init): Install type_align hook.
2048
2049 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
2050
2051         * eval.c (fake_method::fake_method): Call xzalloc directly for a
2052         type that is neither object file owned, nor gdbarch owned.
2053         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
2054         gdbarch is non-NULL.
2055         (alloc_type_instance): Allocate non-objfile owned types on the
2056         gdbarch obstack.
2057         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
2058         using TYPE_ALLOC to ensure memory is allocated on the correct
2059         obstack.
2060         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
2061         obstack, or the gdbarch obstack.
2062         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
2063
2064 2018-09-14  Tom Tromey  <tom@tromey.com>
2065
2066         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
2067         block.
2068
2069 2018-09-14  Tom Tromey  <tom@tromey.com>
2070
2071         * nat/fork-inferior.c (get_startup_shell): Remove "static".
2072
2073 2018-09-13  Tom Tromey  <tom@tromey.com>
2074
2075         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
2076         static.
2077
2078 2018-09-13  Tom Tromey  <tom@tromey.com>
2079
2080         * exec.c (try_open_exec_file): Use std::string.
2081
2082 2018-09-13  Tom Tromey  <tom@tromey.com>
2083
2084         * utils.h (gdb_bfd_errmsg): Return std::string.
2085         * exec.c (exec_file_attach): Update.
2086         * compile/compile-object-load.c (compile_object_load): Update.
2087         * utils.c (gdb_bfd_errmsg): Return std::string.
2088
2089 2018-09-13  Tom Tromey  <tom@tromey.com>
2090
2091         * procfs.c (struct procinfo_deleter): New.
2092         (procinfo_up): New typedef.
2093         (do_destroy_procinfo_cleanup): Remove.
2094         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2095
2096 2018-09-13  Tom Tromey  <tom@tromey.com>
2097
2098         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2099
2100 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2101 2018-09-13  Tom Tromey  <tom@tromey.com>
2102
2103         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2104         (pspy_get_objfiles): New function.
2105         (progspace_object_methods): New.
2106         (pspace_object_type): Add tp_methods callback.
2107         * python/python-internal.h (build_objfiles_list): New
2108         declaration.
2109         * python/python.c (build_objfiles_list): New function.
2110         (gdbpy_objfiles): Implement using build_objfiles_list.
2111         * NEWS: Mention the Progspace.objfiles method.
2112
2113 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2114
2115         * python/py-inferior.c (infpy_get_progspace): New function.
2116         (inferior_object_getset): Add progspace property.
2117         * NEWS: Mention the new property.
2118
2119 2018-09-13  Tom Tromey  <tom@tromey.com>
2120
2121         PR rust/23650:
2122         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2123
2124 2018-09-13  Tom Tromey  <tom@tromey.com>
2125
2126         PR rust/23626:
2127         * rust-lang.c (rust_enum_variant): Now static.
2128         (rust_empty_enum_p): New function.
2129         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2130         Handle empty enum.
2131
2132 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2133
2134         * python/py-inferior.c (infpy_repr): New.
2135         (inferior_object_type): Register infpy_repr.
2136         * python/py-objfile.c (objfpy_repr): New.
2137         (objfile_object_type): Register objfpy_repr.
2138
2139 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2140
2141         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2142
2143 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2144
2145         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2146         typo.
2147
2148 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2149
2150         * common/common-utils.c: Don't include '<sys/stat.h>'.
2151         (is_regular_file): Move to...
2152         * common/filestuff.c (is_regular_file): ... here.
2153         * common/common-utils.h (is_regular_file): Move to...
2154         * common/filestuff.h (is_regular_file): ... here.
2155
2156 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2157
2158         * skip.c (debug_skip): New variable.
2159         (skiplist_entry::do_skip_file_p): Add debug output.
2160         (skiplist_entry::do_skip_gfile_p): Likewise.
2161         (skiplist_entry::skip_function_p): Likewise.
2162         (_initialize_step_skip): Create debug command.
2163         * NEWS: Mention set/show debug skip.
2164
2165 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2166
2167         * darwin-nat.c (should_disable_startup_with_shell):
2168         New function.
2169         (darwin_nat_target::create_inferior): Add call.
2170
2171 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2172
2173         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2174         inf_port, msg_state>: Initialize.
2175         (struct darwin_thread_info) <signaled, single_step>: Change
2176         type and initialize.
2177         (struct darwin_thread_info) <event>: Initialize.
2178
2179 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2180
2181         PR gdb/23555
2182         PR gdb/23558
2183         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2184         guesses.
2185
2186 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2187
2188         Revert:
2189         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2190
2191         PR gdb/23555
2192         PR gdb/23558
2193         * gnulib/aclocal.m4: Regenerate.
2194         * gnulib/config.in: Regenerate.
2195         * gnulib/configure: Regenerate.
2196         * gnulib/import/Makefile.am: Update.
2197         * gnulib/import/Makefile.in: Update.
2198         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2199         * gnulib/import/_Noreturn.h: ... this.
2200         * gnulib/import/alloca.in.h: Update.
2201         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2202         * gnulib/import/arg-nonnull.h: ... this.
2203         * gnulib/import/assure.h: Update.
2204         * gnulib/import/at-func.c: Update.
2205         * gnulib/import/basename-lgpl.c: Update.
2206         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2207         * gnulib/import/c++defs.h: ... this.
2208         * gnulib/import/canonicalize-lgpl.c: Update.
2209         * gnulib/import/cdefs.h: Update.
2210         * gnulib/import/chdir-long.c: Update.
2211         * gnulib/import/chdir-long.h: Update.
2212         * gnulib/import/cloexec.c: Update.
2213         * gnulib/import/cloexec.h: Update.
2214         * gnulib/import/close.c: Update.
2215         * gnulib/import/closedir.c: Update.
2216         * gnulib/import/config.charset: Update.
2217         * gnulib/import/dirent-private.h: Update.
2218         * gnulib/import/dirent.in.h: Update.
2219         * gnulib/import/dirfd.c: Update.
2220         * gnulib/import/dirname-lgpl.c: Update.
2221         * gnulib/import/dirname.h: Update.
2222         * gnulib/import/dosname.h: Update.
2223         * gnulib/import/dup-safer-flag.c: Update.
2224         * gnulib/import/dup-safer.c: Update.
2225         * gnulib/import/dup.c: Update.
2226         * gnulib/import/dup2.c: Update.
2227         * gnulib/import/errno.in.h: Update.
2228         * gnulib/import/error.c: Update.
2229         * gnulib/import/error.h: Update.
2230         * gnulib/import/exitfail.c: Update.
2231         * gnulib/import/exitfail.h: Update.
2232         * gnulib/import/extra/update-copyright: Update.
2233         * gnulib/import/fchdir.c: Update.
2234         * gnulib/import/fcntl.c: Update.
2235         * gnulib/import/fcntl.in.h: Update.
2236         * gnulib/import/fd-hook.c: Update.
2237         * gnulib/import/fd-hook.h: Update.
2238         * gnulib/import/fd-safer-flag.c: Update.
2239         * gnulib/import/fd-safer.c: Update.
2240         * gnulib/import/fdopendir.c: Update.
2241         * gnulib/import/filename.h: Update.
2242         * gnulib/import/filenamecat-lgpl.c: Update.
2243         * gnulib/import/filenamecat.h: Update.
2244         * gnulib/import/flexmember.h: Update.
2245         * gnulib/import/float+.h: Update.
2246         * gnulib/import/float.c: Update.
2247         * gnulib/import/float.in.h: Update.
2248         * gnulib/import/fnmatch.c: Update.
2249         * gnulib/import/fnmatch.in.h: Update.
2250         * gnulib/import/fnmatch_loop.c: Update.
2251         * gnulib/import/fpucw.h: Update.
2252         * gnulib/import/frexp.c: Update.
2253         * gnulib/import/frexpl.c: Update.
2254         * gnulib/import/fstat.c: Update.
2255         * gnulib/import/fstatat.c: Update.
2256         * gnulib/import/getcwd-lgpl.c: Update.
2257         * gnulib/import/getcwd.c: Update.
2258         * gnulib/import/getdtablesize.c: Update.
2259         * gnulib/import/getlogin_r.c: Update.
2260         * gnulib/import/getprogname.c: Update.
2261         * gnulib/import/getprogname.h: Update.
2262         * gnulib/import/gettext.h: Update.
2263         * gnulib/import/gettimeofday.c: Update.
2264         * gnulib/import/glob-libc.h: Update.
2265         * gnulib/import/glob.c: Update.
2266         * gnulib/import/glob.in.h: Update.
2267         * gnulib/import/glob_internal.h: Update.
2268         * gnulib/import/glob_pattern_p.c: Update.
2269         * gnulib/import/globfree.c: Update.
2270         * gnulib/import/hard-locale.c: Update.
2271         * gnulib/import/hard-locale.h: Update.
2272         * gnulib/import/intprops.h: Update.
2273         * gnulib/import/inttypes.in.h: Update.
2274         * gnulib/import/isnan.c: Update.
2275         * gnulib/import/isnand-nolibm.h: Update.
2276         * gnulib/import/isnand.c: Update.
2277         * gnulib/import/isnanl-nolibm.h: Update.
2278         * gnulib/import/isnanl.c: Update.
2279         * gnulib/import/itold.c: Update.
2280         * gnulib/import/libc-config.h: Update.
2281         * gnulib/import/limits.in.h: Update.
2282         * gnulib/import/localcharset.c: Update.
2283         * gnulib/import/localcharset.h: Update.
2284         * gnulib/import/localtime-buffer.c: Update.
2285         * gnulib/import/localtime-buffer.h: Update.
2286         * gnulib/import/lstat.c: Update.
2287         * gnulib/import/m4/00gnulib.m4: Update.
2288         * gnulib/import/m4/__inline.m4: Update.
2289         * gnulib/import/m4/absolute-header.m4: Update.
2290         * gnulib/import/m4/alloca.m4: Update.
2291         * gnulib/import/m4/builtin-expect.m4: Update.
2292         * gnulib/import/m4/canonicalize.m4: Update.
2293         * gnulib/import/m4/chdir-long.m4: Update.
2294         * gnulib/import/m4/close.m4: Update.
2295         * gnulib/import/m4/closedir.m4: Update.
2296         * gnulib/import/m4/configmake.m4: Update.
2297         * gnulib/import/m4/d-ino.m4: Update.
2298         * gnulib/import/m4/d-type.m4: Update.
2299         * gnulib/import/m4/dirent_h.m4: Update.
2300         * gnulib/import/m4/dirfd.m4: Update.
2301         * gnulib/import/m4/dirname.m4: Update.
2302         * gnulib/import/m4/double-slash-root.m4: Update.
2303         * gnulib/import/m4/dup.m4: Update.
2304         * gnulib/import/m4/dup2.m4: Update.
2305         * gnulib/import/m4/eealloc.m4: Update.
2306         * gnulib/import/m4/environ.m4: Update.
2307         * gnulib/import/m4/errno_h.m4: Update.
2308         * gnulib/import/m4/error.m4: Update.
2309         * gnulib/import/m4/exponentd.m4: Update.
2310         * gnulib/import/m4/exponentl.m4: Update.
2311         * gnulib/import/m4/extensions.m4: Update.
2312         * gnulib/import/m4/extern-inline.m4: Update.
2313         * gnulib/import/m4/fchdir.m4: Update.
2314         * gnulib/import/m4/fcntl-o.m4: Update.
2315         * gnulib/import/m4/fcntl.m4: Update.
2316         * gnulib/import/m4/fcntl_h.m4: Update.
2317         * gnulib/import/m4/fdopendir.m4: Update.
2318         * gnulib/import/m4/filenamecat.m4: Update.
2319         * gnulib/import/m4/flexmember.m4: Update.
2320         * gnulib/import/m4/float_h.m4: Update.
2321         * gnulib/import/m4/fnmatch.m4: Update.
2322         * gnulib/import/m4/fnmatch_h.m4: Update.
2323         * gnulib/import/m4/fpieee.m4: Update.
2324         * gnulib/import/m4/frexp.m4: Update.
2325         * gnulib/import/m4/frexpl.m4: Update.
2326         * gnulib/import/m4/fstat.m4: Update.
2327         * gnulib/import/m4/fstatat.m4: Update.
2328         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2329         * gnulib/import/m4/getcwd-path-max.m4: Update.
2330         * gnulib/import/m4/getcwd.m4: Update.
2331         * gnulib/import/m4/getdtablesize.m4: Update.
2332         * gnulib/import/m4/getlogin.m4: Update.
2333         * gnulib/import/m4/getlogin_r.m4: Update.
2334         * gnulib/import/m4/getpagesize.m4: Update.
2335         * gnulib/import/m4/getprogname.m4: Update.
2336         * gnulib/import/m4/gettimeofday.m4: Update.
2337         * gnulib/import/m4/glibc21.m4: Update.
2338         * gnulib/import/m4/glob.m4: Update.
2339         * gnulib/import/m4/glob_h.m4: Update.
2340         * gnulib/import/m4/gnulib-cache.m4: Update.
2341         * gnulib/import/m4/gnulib-common.m4: Update.
2342         * gnulib/import/m4/gnulib-comp.m4: Update.
2343         * gnulib/import/m4/gnulib-tool.m4: Update.
2344         * gnulib/import/m4/hard-locale.m4: Update.
2345         * gnulib/import/m4/include_next.m4: Update.
2346         * gnulib/import/m4/inttypes-pri.m4: Update.
2347         * gnulib/import/m4/inttypes.m4: Update.
2348         * gnulib/import/m4/isnand.m4: Update.
2349         * gnulib/import/m4/isnanl.m4: Update.
2350         * gnulib/import/m4/largefile.m4: Update.
2351         * gnulib/import/m4/limits-h.m4: Update.
2352         * gnulib/import/m4/localcharset.m4: Update.
2353         * gnulib/import/m4/locale-fr.m4: Update.
2354         * gnulib/import/m4/locale-ja.m4: Update.
2355         * gnulib/import/m4/locale-zh.m4: Update.
2356         * gnulib/import/m4/localtime-buffer.m4: Update.
2357         * gnulib/import/m4/longlong.m4: Update.
2358         * gnulib/import/m4/lstat.m4: Update.
2359         * gnulib/import/m4/malloc.m4: Update.
2360         * gnulib/import/m4/malloca.m4: Update.
2361         * gnulib/import/m4/math_h.m4: Update.
2362         * gnulib/import/m4/mbrtowc.m4: Update.
2363         * gnulib/import/m4/mbsinit.m4: Update.
2364         * gnulib/import/m4/mbsrtowcs.m4: Update.
2365         * gnulib/import/m4/mbstate_t.m4: Update.
2366         * gnulib/import/m4/memchr.m4: Update.
2367         * gnulib/import/m4/memmem.m4: Update.
2368         * gnulib/import/m4/mempcpy.m4: Update.
2369         * gnulib/import/m4/memrchr.m4: Update.
2370         * gnulib/import/m4/mkdir.m4: Update.
2371         * gnulib/import/m4/mkstemp.m4: Update.
2372         * gnulib/import/m4/mmap-anon.m4: Update.
2373         * gnulib/import/m4/mode_t.m4: Update.
2374         * gnulib/import/m4/msvc-inval.m4: Update.
2375         * gnulib/import/m4/msvc-nothrow.m4: Update.
2376         * gnulib/import/m4/multiarch.m4: Update.
2377         * gnulib/import/m4/nocrash.m4: Update.
2378         * gnulib/import/m4/off_t.m4: Update.
2379         * gnulib/import/m4/onceonly.m4: Update.
2380         * gnulib/import/m4/open-cloexec.m4: Update.
2381         * gnulib/import/m4/open.m4: Update.
2382         * gnulib/import/m4/openat.m4: Update.
2383         * gnulib/import/m4/opendir.m4: Update.
2384         * gnulib/import/m4/pathmax.m4: Update.
2385         * gnulib/import/m4/rawmemchr.m4: Update.
2386         * gnulib/import/m4/readdir.m4: Update.
2387         * gnulib/import/m4/readlink.m4: Update.
2388         * gnulib/import/m4/realloc.m4: Update.
2389         * gnulib/import/m4/rename.m4: Update.
2390         * gnulib/import/m4/rewinddir.m4: Update.
2391         * gnulib/import/m4/rmdir.m4: Update.
2392         * gnulib/import/m4/save-cwd.m4: Update.
2393         * gnulib/import/m4/secure_getenv.m4: Update.
2394         * gnulib/import/m4/setenv.m4: Update.
2395         * gnulib/import/m4/signal_h.m4: Update.
2396         * gnulib/import/m4/ssize_t.m4: Update.
2397         * gnulib/import/m4/stat-time.m4: Update.
2398         * gnulib/import/m4/stat.m4: Update.
2399         * gnulib/import/m4/std-gnu11.m4: Update.
2400         * gnulib/import/m4/stdbool.m4: Update.
2401         * gnulib/import/m4/stddef_h.m4: Update.
2402         * gnulib/import/m4/stdint.m4: Update.
2403         * gnulib/import/m4/stdio_h.m4: Update.
2404         * gnulib/import/m4/stdlib_h.m4: Update.
2405         * gnulib/import/m4/strchrnul.m4: Update.
2406         * gnulib/import/m4/strdup.m4: Update.
2407         * gnulib/import/m4/strerror.m4: Update.
2408         * gnulib/import/m4/string_h.m4: Update.
2409         * gnulib/import/m4/strstr.m4: Update.
2410         * gnulib/import/m4/strtok_r.m4: Update.
2411         * gnulib/import/m4/sys_socket_h.m4: Update.
2412         * gnulib/import/m4/sys_stat_h.m4: Update.
2413         * gnulib/import/m4/sys_time_h.m4: Update.
2414         * gnulib/import/m4/sys_types_h.m4: Update.
2415         * gnulib/import/m4/tempname.m4: Update.
2416         * gnulib/import/m4/time_h.m4: Update.
2417         * gnulib/import/m4/unistd-safer.m4: Update.
2418         * gnulib/import/m4/unistd_h.m4: Update.
2419         * gnulib/import/m4/warn-on-use.m4: Update.
2420         * gnulib/import/m4/wchar_h.m4: Update.
2421         * gnulib/import/m4/wchar_t.m4: Update.
2422         * gnulib/import/m4/wctype_h.m4: Update.
2423         * gnulib/import/m4/wint_t.m4: Update.
2424         * gnulib/import/malloc.c: Update.
2425         * gnulib/import/malloc/scratch_buffer.h: Update.
2426         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2427         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2428         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2429         * gnulib/import/malloca.c: Update.
2430         * gnulib/import/malloca.h: Update.
2431         * gnulib/import/malloca.valgrind: Update.
2432         * gnulib/import/math.in.h: Update.
2433         * gnulib/import/mbrtowc.c: Update.
2434         * gnulib/import/mbsinit.c: Update.
2435         * gnulib/import/mbsrtowcs-impl.h: Update.
2436         * gnulib/import/mbsrtowcs-state.c: Update.
2437         * gnulib/import/mbsrtowcs.c: Update.
2438         * gnulib/import/memchr.c: Update.
2439         * gnulib/import/memmem.c: Update.
2440         * gnulib/import/mempcpy.c: Update.
2441         * gnulib/import/memrchr.c: Update.
2442         * gnulib/import/mkdir.c: Update.
2443         * gnulib/import/mkstemp.c: Update.
2444         * gnulib/import/msvc-inval.c: Update.
2445         * gnulib/import/msvc-inval.h: Update.
2446         * gnulib/import/msvc-nothrow.c: Update.
2447         * gnulib/import/msvc-nothrow.h: Update.
2448         * gnulib/import/open.c: Update.
2449         * gnulib/import/openat-die.c: Update.
2450         * gnulib/import/openat-priv.h: Update.
2451         * gnulib/import/openat-proc.c: Update.
2452         * gnulib/import/openat.c: Update.
2453         * gnulib/import/openat.h: Update.
2454         * gnulib/import/opendir.c: Update.
2455         * gnulib/import/pathmax.h: Update.
2456         * gnulib/import/pipe-safer.c: Update.
2457         * gnulib/import/rawmemchr.c: Update.
2458         * gnulib/import/readdir.c: Update.
2459         * gnulib/import/readlink.c: Update.
2460         * gnulib/import/realloc.c: Update.
2461         * gnulib/import/ref-add.sin: Update.
2462         * gnulib/import/ref-del.sin: Update.
2463         * gnulib/import/rename.c: Update.
2464         * gnulib/import/rewinddir.c: Update.
2465         * gnulib/import/rmdir.c: Update.
2466         * gnulib/import/same-inode.h: Update.
2467         * gnulib/import/save-cwd.c: Update.
2468         * gnulib/import/save-cwd.h: Update.
2469         * gnulib/import/scratch_buffer.h: Update.
2470         * gnulib/import/secure_getenv.c: Update.
2471         * gnulib/import/setenv.c: Update.
2472         * gnulib/import/signal.in.h: Update.
2473         * gnulib/import/stat-time.c: Update.
2474         * gnulib/import/stat-time.h: Update.
2475         * gnulib/import/stat-w32.c: Update.
2476         * gnulib/import/stat-w32.h: Update.
2477         * gnulib/import/stat.c: Update.
2478         * gnulib/import/stdbool.in.h: Update.
2479         * gnulib/import/stddef.in.h: Update.
2480         * gnulib/import/stdint.in.h: Update.
2481         * gnulib/import/stdio.in.h: Update.
2482         * gnulib/import/stdlib.in.h: Update.
2483         * gnulib/import/str-two-way.h: Update.
2484         * gnulib/import/strchrnul.c: Update.
2485         * gnulib/import/strdup.c: Update.
2486         * gnulib/import/streq.h: Update.
2487         * gnulib/import/strerror-override.c: Update.
2488         * gnulib/import/strerror-override.h: Update.
2489         * gnulib/import/strerror.c: Update.
2490         * gnulib/import/string.in.h: Update.
2491         * gnulib/import/stripslash.c: Update.
2492         * gnulib/import/strnlen1.c: Update.
2493         * gnulib/import/strnlen1.h: Update.
2494         * gnulib/import/strstr.c: Update.
2495         * gnulib/import/strtok_r.c: Update.
2496         * gnulib/import/sys_stat.in.h: Update.
2497         * gnulib/import/sys_time.in.h: Update.
2498         * gnulib/import/sys_types.in.h: Update.
2499         * gnulib/import/tempname.c: Update.
2500         * gnulib/import/tempname.h: Update.
2501         * gnulib/import/time.in.h: Update.
2502         * gnulib/import/unistd--.h: Update.
2503         * gnulib/import/unistd-safer.h: Update.
2504         * gnulib/import/unistd.in.h: Update.
2505         * gnulib/import/unsetenv.c: Update.
2506         * gnulib/import/verify.h: Update.
2507         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2508         * gnulib/import/wchar.in.h: Update.
2509         * gnulib/import/wctype.in.h: Update.
2510         * gnulib/import/xalloc-oversized.h: Update.
2511         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2512         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2513
2514 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2515
2516         * record-btrace.c (get_thread_current_frame): Remove
2517         old_inferior_ptid.
2518
2519 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2520
2521         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2522         with check_tag to 1 if and only if the type is tagged and the
2523         component being searched cannot been found in the current
2524         view. Otherwise, always call ada_to_fixed_type with
2525         check_tag to 0.
2526
2527 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2528
2529         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2530         declaration.
2531         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2532         * ada-varobj.c (ada_varobj_get_number_of_children,
2533         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2534
2535 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2536
2537         * ada-valprint.c (ada_value_print): Use type instead of
2538         enclosing type.
2539
2540 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2541
2542         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2543         an array of access to unconstrained array.
2544
2545 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2546
2547         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2548         (ada_check_typedef): Use it.
2549
2550 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2551
2552         * ada-varobj.c (ada_varobj_describe_struct_child)
2553         (ada_varobj_describe_child): Handle union case like struct one.
2554
2555 2018-09-10  Tom Tromey  <tom@tromey.com>
2556
2557         PR python/18380:
2558         * python/python.c (_initialize_python): Make example in "python"
2559         help work in Python 3.
2560
2561 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2562
2563         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2564         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2565         $(EXEEXT) to the script, as it is not a program.
2566
2567 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2568
2569         * python/py-prettyprint.c (pretty_print_one_value): Return
2570         gdbpy_ref<>.
2571         (print_string_repr): Adjust.
2572         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2573         * python/python-internal.h (apply_varobj_pretty_printer): Return
2574         gdbpy_ref<>.
2575         * varobj.c (varobj_value_get_print_value): Adjust.
2576
2577 2018-09-08  Tom Tromey  <tom@tromey.com>
2578
2579         PR python/16047:
2580         * python/py-prettyprint.c (pretty_print_one_value): Check for
2581         to_string method.
2582
2583 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2584
2585         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2586         replace_operator_with_call.
2587
2588 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2589
2590         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2591
2592 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2593
2594         * ada-typeprint.c (print_range): Print the bounds using TYPE
2595         rather than its TYPE_TARGET_TYPE.
2596
2597 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2598
2599         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2600         call to ada_to_fixed_value_create.
2601
2602 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2603
2604         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2605
2606 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2607
2608         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2609         by calls to error.
2610
2611 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2612
2613         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2614         Move update of loop variable "fi".
2615
2616 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2617
2618         * ada-lang.c (value_assign_to_component): In the case of
2619         big-endian targets, extract the bits of the given VAL
2620         using an src_offset of zero if container is not a scalar.
2621
2622 2018-09-06  Simon Ser  <contact@emersion.fr>
2623
2624         PR gdb/23105
2625         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2626         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2627         * fbsd-tdep.c (fbsd_make_note_desc): New.
2628         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2629         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2630         * target.h (enum target_object) Add FreeBSD-specific
2631         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2632
2633 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2634
2635         * compile/compile-c.h (generate_c_for_variable_locations):
2636         Change reference to pointer.
2637         * compile/compile-c-support.c (compile_program) <compute>:
2638         Likewise.
2639         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2640         (generate_c_for_for_one_variable): Likewise
2641         (generate_c_for_variable_locations): Likewise
2642         * compile/compile-c-types.c (compile_c_instance::convert_type):
2643         Likewise
2644         * compile/compile-cplus-symbols.c (convert_one_symbol):
2645         std::move the scope passed to enter_scope.
2646         * compile/compile-cplus-types.c
2647         (compile_cplus_instance::enter_scope): Make parameter
2648         rvalue-reference.
2649         (compile_cplus_instance::new_scope): Change reference to
2650         pointer.
2651         (compile_cplus_instance::convert_type): Likewise
2652         (compile_cplus_convert_typedef): std::move the scope passed to
2653         enter_scope.
2654         (compile_cplus_convert_struct_or_union): Likewise.
2655         (compile_cplus_convert_enum): Likewise.
2656         (compile_cplus_convert_namespace): Likewise.
2657         * compile/compile-cplus.h (compile_cplus_instance)
2658         <enter_scope>: Make parameter rvalue-reference.
2659         * compile/compile-internal.h (compile_instance)
2660         <get_cached_type>: Likewise
2661         * compile/compile-loc2c.c (push): Likewise
2662         (pushf): Likewise
2663         (unary): Likewise
2664         (binary): Likewise
2665         (print_label): Likewise
2666         (pushf_register_address): Likewise
2667         (pushf_register): Likewise
2668         (do_compile_dwarf_expr_to_c): Likewise
2669         (compile_dwarf_expr_to_c): Likewise
2670         (compile_dwarf_bounds_to_c): Likewise
2671         * compile/compile.c (compile_instance::get_cached_type):
2672         Likewise
2673         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2674         (compile_dwarf_bounds_to_c): Likewise
2675         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2676         (dwarf2_compile_property_to_c): Likewise
2677         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2678         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2679         Likewise
2680
2681 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2682
2683         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2684         * tui/tui-data.c (init_content_element): Don't initialize it.
2685
2686 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2687
2688         * tui/tui-data.h (struct tui_win_info)
2689         <detail::opaque>: Remove.
2690         * tui/tui-data.c (init_win_info): Remove assignment.
2691
2692 2018-09-05  Tom Tromey  <tom@tromey.com>
2693
2694         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2695         -Wformat-nonliteral.
2696         * target-float.c (host_float_ops<T>::to_string)
2697         (host_float_ops<T>::from_string): Use
2698         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2699         * configure: Rebuild.
2700
2701 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2702
2703         * printcmd.c (printf_c_string): Use
2704         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2705         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2706
2707 2018-09-05  Tom Tromey  <tom@tromey.com>
2708
2709         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2710
2711 2018-09-05  Tom de Vries  <tdevries@suse.de>
2712
2713         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2714         with resolve_abstract_p == true.
2715         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2716         defaulting to false. Propagate resolve_abstract_p to
2717         dwarf2_fetch_die_loc_sect_off.
2718         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2719         parameter, defaulting to false.
2720         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2721         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2722         parameter.
2723         * dwarf2read.h (struct die_info): Forward-declare.
2724         (die_info_ptr): New typedef.
2725         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2726
2727 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2728
2729         GDB 8.2 released.
2730
2731 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2732             Pedro Alves  <palves@redhat.com>
2733
2734         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2735         "aclocal-m4-deps.mk".  Include file here.
2736         $(srcdir)/aclocal.m4: Add "configure.ac".
2737         * gnulib/aclocal-m4-deps.mk: New file.
2738         * gnulib/update-gnulib.sh: Automatically update
2739         "aclocal-m4-deps.mk".
2740
2741 2018-09-04  Tom Tromey  <tom@tromey.com>
2742
2743         * configure: Rebuild.
2744         * configure.ac: Remove multi-ice code.
2745
2746 2018-09-04  Tom Tromey  <tom@tromey.com>
2747
2748         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2749         (ada-exp.o): Update.
2750
2751 2018-09-04  Tom Tromey  <tom@tromey.com>
2752
2753         * Makefile.in (printcmd.o, target-float.o): Remove.
2754         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2755
2756 2018-09-04  Tom Tromey  <tom@tromey.com>
2757
2758         * gnulib/Makefile.in: Remove obsolete comment.
2759         * Makefile.in: Remove obsolete comment.
2760
2761 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2762
2763         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2764         line with '+'.
2765
2766 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2767
2768         * riscv-tdep.c: Add 'prologue-value.h' include.
2769         (struct riscv_unwind_cache): New struct.
2770         (riscv_debug_unwinder): New global.
2771         (riscv_scan_prologue): Update arguments, capture register details
2772         from prologue scan.
2773         (riscv_skip_prologue): Reformat arguments line, move end of
2774         prologue calculation into riscv_scan_prologue.
2775         (riscv_frame_cache): Update return type, create
2776         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2777         details.
2778         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2779         (riscv_frame_prev_register): Use the trad_frame within the
2780         riscv_unwind_cache.
2781         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2782         flag.
2783
2784 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2785
2786         * trad-frame.h (trad_frame_set_realreg): Declare.
2787         (trad_frame_set_addr): Declare.
2788         * trad-frame.c (trad_frame_set_realreg): Define new function.
2789         (trad_frame_set_addr): Define new function.
2790         (trad_frame_set_reg_realreg): Use new function.
2791         (trad_frame_set_reg_addr): Use new function.
2792
2793 2018-09-01  Keith Seitz  <keiths@redhat.com>
2794
2795         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2796         pulongest instead of "%lld".
2797         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2798         ATTRIBUTE_UNUSED.
2799
2800 2018-08-31  Tom Tromey  <tom@tromey.com>
2801
2802         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2803         variant part type.
2804
2805 2018-08-31  Pedro Alves  <palves@redhat.com>
2806
2807         * gdbarch.h: Regenerate.
2808
2809 2018-08-31  Pedro Alves  <palves@redhat.com>
2810
2811         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2812         * target.h (Hardware watchpoint interfaces): Describe
2813         continuable/steppable/non-steppable watchpoints.
2814         * gdbarch.h, gdbarch.c: Regenerate.
2815
2816 2018-08-31  Pedro Alves  <palves@redhat.com>
2817
2818         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2819         Delete.
2820         * s390-linux-nat.c
2821         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2822         * target.h (target_ops::have_continuable_watchpoint): Delete.
2823         (target_have_continuable_watchpoint): Delete.
2824         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2825         * target-delegates.c: Regenerate.
2826
2827 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2828
2829         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2830         the files present in "gnulib/import/m4/".
2831
2832 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2833
2834         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2835         c.sw, c.swsp, and c.sdsp.
2836
2837 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2838
2839         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2840         (riscv_read_misa_reg): Don't cache value read into inferior data.
2841         (riscv_new_inferior_data): Delete.
2842         (riscv_inferior_data_cleanup): Delete.
2843         (riscv_inferior_data): Delete.
2844         (riscv_invalidate_inferior_data): Delete.
2845         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2846
2847 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2848
2849         * compile/compile-cplus-types.c
2850         (compile_cplus_instance::leave_scope): Take the address of scope
2851         object.
2852         (compile_cplus_instance::convert_qualified_base): Compare quals
2853         to 0.
2854
2855 2018-08-30  Keith Seitz  <keiths@redhat.com>
2856
2857         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2858         Use "%s" and host_address_to_string instead of "%p" in printf.
2859
2860 2018-08-29  Keith Seitz  <keiths@redhat.com>
2861
2862         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2863         and compile-cplus-types.c.
2864         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2865         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2866         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2867         Declare.
2868         * compile/compile-c-support.c: Include compile-cplus.h.
2869         (load_libcompile): Templatize.
2870         (get_compile_context): "New" function.
2871         (c_get_compile_context): Use get_compile_context.
2872         (cplus_get_compile_context): New function.
2873         (cplus_push_user_expression, cplus_pop_user_expression)
2874         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2875         (cplus_compute_program): Define new structs/functions.
2876         * compile/compile-cplus-symmbols.c: New file.
2877         * compile/compile-cplus-types.c: New file.
2878         * compile/compile-cplus.h: New file.
2879         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2880         Declare.
2881         * compile/compile-object-load.c (get_out_value_type): Use
2882         strncmp_iw when comparing symbol names.
2883         (compile_object_load): Add mst_bss and mst_data.
2884         * compile/compile.c (_initialize_compile): Remove
2885         -Wno-implicit-function-declaration from `compile_args'.
2886         * compile/gcc-cp-plugin.h: New file.
2887         * NEWS: Mention C++ compile support and new debug options.
2888
2889 2018-08-29  Keith Seitz  <keiths@redhat.com>
2890
2891         * linespec.c (collect_info::add_symbol): Make virtual.
2892         (struct symbol_searcher_collect_info): New struct.
2893         (symbol_searcher::find_all_symbols): New method.
2894         * symtab.h (class symbol_searcher): New class.
2895
2896 2018-08-29  Keith Seitz  <keiths@redhat.com>
2897
2898         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2899         Change to vector of block_symbol.  Update all users.
2900         (struct collect_info) <symbols>: Likewise.
2901         (collect_info::add_symbol): Take block_symbol as argument.
2902         Update all callers.
2903         (decode_compound_collector) <m_symbols>: Change type to vector
2904         of block_symbol.  Update all users.
2905         (decode_compound_collector::operator ()): Change parameter type
2906         to block_symbol.
2907         (find_method, find_function_symbols, find_linespec_symbols)
2908         (find_label_symbols_in_block, find_label_symbols): Change symbol
2909         vectors to block_symbol vectors.
2910         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2911         block_symbol.
2912
2913 2018-08-29  Keith Seitz  <keiths@redhat.com>
2914
2915         * linespec.c (symbolp): Remove typedef and VEC definitions.
2916         (bound_minimal_symbol_d): Likewise.
2917
2918 2018-08-29  Keith Seitz  <keiths@redhat.com>
2919
2920         * linespec.c (decode_compound_collector::decode_compound_collector):
2921         Remove initialization for `m_symtabs'.
2922         (decode_compound_collector::release_symbols): Change return type
2923         to std::vector.  Update all callers.
2924         (class decode_compound_collector) <m_symbols>: Change type to
2925         std::vector.
2926         (lookup_prefix_sym): Change return type to std::vector.  Update all
2927         callers.
2928         (compare_symbols): Remove.
2929         (std_compare_symbols): Rename to `compare_symbols'.
2930         (find_method): Change `sym_classes' parameter to std::vector.
2931         Update all callers.  Use std::sort to sort sym_classes.
2932         (find_linespec_symbols): Remove cleanup.
2933
2934 2018-08-29  Keith Seitz  <keiths@redhat.com>
2935
2936         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2937         std::vector.  Update all users.
2938         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2939         (struct collect_info) <minimal_symbols>: Likewise.
2940         (compare_msymbols): Return bool.  Change parameters to const
2941         bound_minimal_symbol references.
2942         (find_method, find_function_symbols, find_linespec_symbols): Change
2943         `minsyms' parameter to std::vector.  Update all callers.
2944
2945 2018-08-29  Keith Seitz  <keiths@redhat.com>
2946
2947         * linespec.c (struct linespec) <label_symbols>: Change type to
2948         std::vector.  Update all users.
2949         (find_label_symbols_in_block): Change `result' parameter to
2950         std::vector.  Update all callers.
2951         (find_label_symbols): Return std::vector.  Update all callers.
2952
2953 2018-08-29  Keith Seitz  <keiths@redhat.com>
2954
2955         * linespec.c (struct linespec) <function_symbols>: Change type to
2956         std::vector.  Update all users.
2957         (struct collect_info) <function_symbols>: Likewise.
2958         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2959         (std_compare_symbols): New function.
2960         (find_method, find_function_symbols, find_linespec_symbols)
2961         (find_label_symbols_in_block): Change `symbols' parameter to
2962         std::vector.  Update all callers.
2963         (find_label_symbols): Likewise for `function_symbols' and
2964         `label_funcs_ret'.
2965
2966 2018-08-29  Keith Seitz  <keiths@redhat.com>
2967
2968         * linespec.c (symtab_vector_up): Define.
2969         (struct linespec) <file_symtabs>: Change type to std::vector *.
2970         Update all uses.
2971         (struct collect_info) <file_symtabs>: Likewise.
2972         (collect_symtabs_from_filename): Return symtab_vector_up.
2973         Update all callers.
2974         (decode_objc): Remove cleanup.
2975         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2976         (symtab_collector::release_symtabs): Return symtab_vector_up.
2977         Update all callers.
2978         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2979         Update all users.
2980         (collect_symtabs_from_filename, symtabs_from_filename): Return
2981         symtab_vector_up.  Update all callers.
2982
2983 2018-08-29  Tom Tromey  <tom@tromey.com>
2984
2985         * csky-tdep.c (csky_analyze_prologue): Use
2986         core_addr_to_string_nz.
2987
2988 2018-08-29  Tom Tromey  <tom@tromey.com>
2989
2990         * windows-nat.c (struct xlate_exception) <them>: Change type to
2991         DWORD.
2992         (xlate): Fix formatting.  Remove last entry.
2993         (struct xlate_exception, xlate): Comment out.
2994         (windows_nat_target::resume): Use ranged for.
2995
2996 2018-08-29  Jim Wilson  <jimw@sifive.com>
2997
2998         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2999         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3000         of NT_PRFPREG.
3001         (riscv_linux_nat_target::store_registers): Likewise.
3002
3003 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3004
3005         PR gdb/23555
3006         PR gdb/23558
3007         * gnulib/aclocal.m4: Regenerate.
3008         * gnulib/config.in: Regenerate.
3009         * gnulib/configure: Regenerate.
3010         * gnulib/import/Makefile.am: Update.
3011         * gnulib/import/Makefile.in: Update.
3012         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3013         * gnulib/import/_Noreturn.h: ... this.
3014         * gnulib/import/alloca.in.h: Update.
3015         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3016         * gnulib/import/arg-nonnull.h: ... this.
3017         * gnulib/import/assure.h: Update.
3018         * gnulib/import/at-func.c: Update.
3019         * gnulib/import/basename-lgpl.c: Update.
3020         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3021         * gnulib/import/c++defs.h: ... this.
3022         * gnulib/import/canonicalize-lgpl.c: Update.
3023         * gnulib/import/cdefs.h: Update.
3024         * gnulib/import/chdir-long.c: Update.
3025         * gnulib/import/chdir-long.h: Update.
3026         * gnulib/import/cloexec.c: Update.
3027         * gnulib/import/cloexec.h: Update.
3028         * gnulib/import/close.c: Update.
3029         * gnulib/import/closedir.c: Update.
3030         * gnulib/import/config.charset: Update.
3031         * gnulib/import/dirent-private.h: Update.
3032         * gnulib/import/dirent.in.h: Update.
3033         * gnulib/import/dirfd.c: Update.
3034         * gnulib/import/dirname-lgpl.c: Update.
3035         * gnulib/import/dirname.h: Update.
3036         * gnulib/import/dosname.h: Update.
3037         * gnulib/import/dup-safer-flag.c: Update.
3038         * gnulib/import/dup-safer.c: Update.
3039         * gnulib/import/dup.c: Update.
3040         * gnulib/import/dup2.c: Update.
3041         * gnulib/import/errno.in.h: Update.
3042         * gnulib/import/error.c: Update.
3043         * gnulib/import/error.h: Update.
3044         * gnulib/import/exitfail.c: Update.
3045         * gnulib/import/exitfail.h: Update.
3046         * gnulib/import/extra/update-copyright: Update.
3047         * gnulib/import/fchdir.c: Update.
3048         * gnulib/import/fcntl.c: Update.
3049         * gnulib/import/fcntl.in.h: Update.
3050         * gnulib/import/fd-hook.c: Update.
3051         * gnulib/import/fd-hook.h: Update.
3052         * gnulib/import/fd-safer-flag.c: Update.
3053         * gnulib/import/fd-safer.c: Update.
3054         * gnulib/import/fdopendir.c: Update.
3055         * gnulib/import/filename.h: Update.
3056         * gnulib/import/filenamecat-lgpl.c: Update.
3057         * gnulib/import/filenamecat.h: Update.
3058         * gnulib/import/flexmember.h: Update.
3059         * gnulib/import/float+.h: Update.
3060         * gnulib/import/float.c: Update.
3061         * gnulib/import/float.in.h: Update.
3062         * gnulib/import/fnmatch.c: Update.
3063         * gnulib/import/fnmatch.in.h: Update.
3064         * gnulib/import/fnmatch_loop.c: Update.
3065         * gnulib/import/fpucw.h: Update.
3066         * gnulib/import/frexp.c: Update.
3067         * gnulib/import/frexpl.c: Update.
3068         * gnulib/import/fstat.c: Update.
3069         * gnulib/import/fstatat.c: Update.
3070         * gnulib/import/getcwd-lgpl.c: Update.
3071         * gnulib/import/getcwd.c: Update.
3072         * gnulib/import/getdtablesize.c: Update.
3073         * gnulib/import/getlogin_r.c: Update.
3074         * gnulib/import/getprogname.c: Update.
3075         * gnulib/import/getprogname.h: Update.
3076         * gnulib/import/gettext.h: Update.
3077         * gnulib/import/gettimeofday.c: Update.
3078         * gnulib/import/glob-libc.h: Update.
3079         * gnulib/import/glob.c: Update.
3080         * gnulib/import/glob.in.h: Update.
3081         * gnulib/import/glob_internal.h: Update.
3082         * gnulib/import/glob_pattern_p.c: Update.
3083         * gnulib/import/globfree.c: Update.
3084         * gnulib/import/hard-locale.c: Update.
3085         * gnulib/import/hard-locale.h: Update.
3086         * gnulib/import/intprops.h: Update.
3087         * gnulib/import/inttypes.in.h: Update.
3088         * gnulib/import/isnan.c: Update.
3089         * gnulib/import/isnand-nolibm.h: Update.
3090         * gnulib/import/isnand.c: Update.
3091         * gnulib/import/isnanl-nolibm.h: Update.
3092         * gnulib/import/isnanl.c: Update.
3093         * gnulib/import/itold.c: Update.
3094         * gnulib/import/libc-config.h: Update.
3095         * gnulib/import/limits.in.h: Update.
3096         * gnulib/import/localcharset.c: Update.
3097         * gnulib/import/localcharset.h: Update.
3098         * gnulib/import/localtime-buffer.c: Update.
3099         * gnulib/import/localtime-buffer.h: Update.
3100         * gnulib/import/lstat.c: Update.
3101         * gnulib/import/m4/00gnulib.m4: Update.
3102         * gnulib/import/m4/__inline.m4: Update.
3103         * gnulib/import/m4/absolute-header.m4: Update.
3104         * gnulib/import/m4/alloca.m4: Update.
3105         * gnulib/import/m4/builtin-expect.m4: Update.
3106         * gnulib/import/m4/canonicalize.m4: Update.
3107         * gnulib/import/m4/chdir-long.m4: Update.
3108         * gnulib/import/m4/close.m4: Update.
3109         * gnulib/import/m4/closedir.m4: Update.
3110         * gnulib/import/m4/configmake.m4: Update.
3111         * gnulib/import/m4/d-ino.m4: Update.
3112         * gnulib/import/m4/d-type.m4: Update.
3113         * gnulib/import/m4/dirent_h.m4: Update.
3114         * gnulib/import/m4/dirfd.m4: Update.
3115         * gnulib/import/m4/dirname.m4: Update.
3116         * gnulib/import/m4/double-slash-root.m4: Update.
3117         * gnulib/import/m4/dup.m4: Update.
3118         * gnulib/import/m4/dup2.m4: Update.
3119         * gnulib/import/m4/eealloc.m4: Update.
3120         * gnulib/import/m4/environ.m4: Update.
3121         * gnulib/import/m4/errno_h.m4: Update.
3122         * gnulib/import/m4/error.m4: Update.
3123         * gnulib/import/m4/exponentd.m4: Update.
3124         * gnulib/import/m4/exponentl.m4: Update.
3125         * gnulib/import/m4/extensions.m4: Update.
3126         * gnulib/import/m4/extern-inline.m4: Update.
3127         * gnulib/import/m4/fchdir.m4: Update.
3128         * gnulib/import/m4/fcntl-o.m4: Update.
3129         * gnulib/import/m4/fcntl.m4: Update.
3130         * gnulib/import/m4/fcntl_h.m4: Update.
3131         * gnulib/import/m4/fdopendir.m4: Update.
3132         * gnulib/import/m4/filenamecat.m4: Update.
3133         * gnulib/import/m4/flexmember.m4: Update.
3134         * gnulib/import/m4/float_h.m4: Update.
3135         * gnulib/import/m4/fnmatch.m4: Update.
3136         * gnulib/import/m4/fnmatch_h.m4: Update.
3137         * gnulib/import/m4/fpieee.m4: Update.
3138         * gnulib/import/m4/frexp.m4: Update.
3139         * gnulib/import/m4/frexpl.m4: Update.
3140         * gnulib/import/m4/fstat.m4: Update.
3141         * gnulib/import/m4/fstatat.m4: Update.
3142         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3143         * gnulib/import/m4/getcwd-path-max.m4: Update.
3144         * gnulib/import/m4/getcwd.m4: Update.
3145         * gnulib/import/m4/getdtablesize.m4: Update.
3146         * gnulib/import/m4/getlogin.m4: Update.
3147         * gnulib/import/m4/getlogin_r.m4: Update.
3148         * gnulib/import/m4/getpagesize.m4: Update.
3149         * gnulib/import/m4/getprogname.m4: Update.
3150         * gnulib/import/m4/gettimeofday.m4: Update.
3151         * gnulib/import/m4/glibc21.m4: Update.
3152         * gnulib/import/m4/glob.m4: Update.
3153         * gnulib/import/m4/glob_h.m4: Update.
3154         * gnulib/import/m4/gnulib-cache.m4: Update.
3155         * gnulib/import/m4/gnulib-common.m4: Update.
3156         * gnulib/import/m4/gnulib-comp.m4: Update.
3157         * gnulib/import/m4/gnulib-tool.m4: Update.
3158         * gnulib/import/m4/hard-locale.m4: Update.
3159         * gnulib/import/m4/include_next.m4: Update.
3160         * gnulib/import/m4/inttypes-pri.m4: Update.
3161         * gnulib/import/m4/inttypes.m4: Update.
3162         * gnulib/import/m4/isnand.m4: Update.
3163         * gnulib/import/m4/isnanl.m4: Update.
3164         * gnulib/import/m4/largefile.m4: Update.
3165         * gnulib/import/m4/limits-h.m4: Update.
3166         * gnulib/import/m4/localcharset.m4: Update.
3167         * gnulib/import/m4/locale-fr.m4: Update.
3168         * gnulib/import/m4/locale-ja.m4: Update.
3169         * gnulib/import/m4/locale-zh.m4: Update.
3170         * gnulib/import/m4/localtime-buffer.m4: Update.
3171         * gnulib/import/m4/longlong.m4: Update.
3172         * gnulib/import/m4/lstat.m4: Update.
3173         * gnulib/import/m4/malloc.m4: Update.
3174         * gnulib/import/m4/malloca.m4: Update.
3175         * gnulib/import/m4/math_h.m4: Update.
3176         * gnulib/import/m4/mbrtowc.m4: Update.
3177         * gnulib/import/m4/mbsinit.m4: Update.
3178         * gnulib/import/m4/mbsrtowcs.m4: Update.
3179         * gnulib/import/m4/mbstate_t.m4: Update.
3180         * gnulib/import/m4/memchr.m4: Update.
3181         * gnulib/import/m4/memmem.m4: Update.
3182         * gnulib/import/m4/mempcpy.m4: Update.
3183         * gnulib/import/m4/memrchr.m4: Update.
3184         * gnulib/import/m4/mkdir.m4: Update.
3185         * gnulib/import/m4/mkstemp.m4: Update.
3186         * gnulib/import/m4/mmap-anon.m4: Update.
3187         * gnulib/import/m4/mode_t.m4: Update.
3188         * gnulib/import/m4/msvc-inval.m4: Update.
3189         * gnulib/import/m4/msvc-nothrow.m4: Update.
3190         * gnulib/import/m4/multiarch.m4: Update.
3191         * gnulib/import/m4/nocrash.m4: Update.
3192         * gnulib/import/m4/off_t.m4: Update.
3193         * gnulib/import/m4/onceonly.m4: Update.
3194         * gnulib/import/m4/open-cloexec.m4: Update.
3195         * gnulib/import/m4/open.m4: Update.
3196         * gnulib/import/m4/openat.m4: Update.
3197         * gnulib/import/m4/opendir.m4: Update.
3198         * gnulib/import/m4/pathmax.m4: Update.
3199         * gnulib/import/m4/rawmemchr.m4: Update.
3200         * gnulib/import/m4/readdir.m4: Update.
3201         * gnulib/import/m4/readlink.m4: Update.
3202         * gnulib/import/m4/realloc.m4: Update.
3203         * gnulib/import/m4/rename.m4: Update.
3204         * gnulib/import/m4/rewinddir.m4: Update.
3205         * gnulib/import/m4/rmdir.m4: Update.
3206         * gnulib/import/m4/save-cwd.m4: Update.
3207         * gnulib/import/m4/secure_getenv.m4: Update.
3208         * gnulib/import/m4/setenv.m4: Update.
3209         * gnulib/import/m4/signal_h.m4: Update.
3210         * gnulib/import/m4/ssize_t.m4: Update.
3211         * gnulib/import/m4/stat-time.m4: Update.
3212         * gnulib/import/m4/stat.m4: Update.
3213         * gnulib/import/m4/std-gnu11.m4: Update.
3214         * gnulib/import/m4/stdbool.m4: Update.
3215         * gnulib/import/m4/stddef_h.m4: Update.
3216         * gnulib/import/m4/stdint.m4: Update.
3217         * gnulib/import/m4/stdio_h.m4: Update.
3218         * gnulib/import/m4/stdlib_h.m4: Update.
3219         * gnulib/import/m4/strchrnul.m4: Update.
3220         * gnulib/import/m4/strdup.m4: Update.
3221         * gnulib/import/m4/strerror.m4: Update.
3222         * gnulib/import/m4/string_h.m4: Update.
3223         * gnulib/import/m4/strstr.m4: Update.
3224         * gnulib/import/m4/strtok_r.m4: Update.
3225         * gnulib/import/m4/sys_socket_h.m4: Update.
3226         * gnulib/import/m4/sys_stat_h.m4: Update.
3227         * gnulib/import/m4/sys_time_h.m4: Update.
3228         * gnulib/import/m4/sys_types_h.m4: Update.
3229         * gnulib/import/m4/tempname.m4: Update.
3230         * gnulib/import/m4/time_h.m4: Update.
3231         * gnulib/import/m4/unistd-safer.m4: Update.
3232         * gnulib/import/m4/unistd_h.m4: Update.
3233         * gnulib/import/m4/warn-on-use.m4: Update.
3234         * gnulib/import/m4/wchar_h.m4: Update.
3235         * gnulib/import/m4/wchar_t.m4: Update.
3236         * gnulib/import/m4/wctype_h.m4: Update.
3237         * gnulib/import/m4/wint_t.m4: Update.
3238         * gnulib/import/malloc.c: Update.
3239         * gnulib/import/malloc/scratch_buffer.h: Update.
3240         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3241         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3242         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3243         * gnulib/import/malloca.c: Update.
3244         * gnulib/import/malloca.h: Update.
3245         * gnulib/import/malloca.valgrind: Update.
3246         * gnulib/import/math.in.h: Update.
3247         * gnulib/import/mbrtowc.c: Update.
3248         * gnulib/import/mbsinit.c: Update.
3249         * gnulib/import/mbsrtowcs-impl.h: Update.
3250         * gnulib/import/mbsrtowcs-state.c: Update.
3251         * gnulib/import/mbsrtowcs.c: Update.
3252         * gnulib/import/memchr.c: Update.
3253         * gnulib/import/memmem.c: Update.
3254         * gnulib/import/mempcpy.c: Update.
3255         * gnulib/import/memrchr.c: Update.
3256         * gnulib/import/mkdir.c: Update.
3257         * gnulib/import/mkstemp.c: Update.
3258         * gnulib/import/msvc-inval.c: Update.
3259         * gnulib/import/msvc-inval.h: Update.
3260         * gnulib/import/msvc-nothrow.c: Update.
3261         * gnulib/import/msvc-nothrow.h: Update.
3262         * gnulib/import/open.c: Update.
3263         * gnulib/import/openat-die.c: Update.
3264         * gnulib/import/openat-priv.h: Update.
3265         * gnulib/import/openat-proc.c: Update.
3266         * gnulib/import/openat.c: Update.
3267         * gnulib/import/openat.h: Update.
3268         * gnulib/import/opendir.c: Update.
3269         * gnulib/import/pathmax.h: Update.
3270         * gnulib/import/pipe-safer.c: Update.
3271         * gnulib/import/rawmemchr.c: Update.
3272         * gnulib/import/readdir.c: Update.
3273         * gnulib/import/readlink.c: Update.
3274         * gnulib/import/realloc.c: Update.
3275         * gnulib/import/ref-add.sin: Update.
3276         * gnulib/import/ref-del.sin: Update.
3277         * gnulib/import/rename.c: Update.
3278         * gnulib/import/rewinddir.c: Update.
3279         * gnulib/import/rmdir.c: Update.
3280         * gnulib/import/same-inode.h: Update.
3281         * gnulib/import/save-cwd.c: Update.
3282         * gnulib/import/save-cwd.h: Update.
3283         * gnulib/import/scratch_buffer.h: Update.
3284         * gnulib/import/secure_getenv.c: Update.
3285         * gnulib/import/setenv.c: Update.
3286         * gnulib/import/signal.in.h: Update.
3287         * gnulib/import/stat-time.c: Update.
3288         * gnulib/import/stat-time.h: Update.
3289         * gnulib/import/stat-w32.c: Update.
3290         * gnulib/import/stat-w32.h: Update.
3291         * gnulib/import/stat.c: Update.
3292         * gnulib/import/stdbool.in.h: Update.
3293         * gnulib/import/stddef.in.h: Update.
3294         * gnulib/import/stdint.in.h: Update.
3295         * gnulib/import/stdio.in.h: Update.
3296         * gnulib/import/stdlib.in.h: Update.
3297         * gnulib/import/str-two-way.h: Update.
3298         * gnulib/import/strchrnul.c: Update.
3299         * gnulib/import/strdup.c: Update.
3300         * gnulib/import/streq.h: Update.
3301         * gnulib/import/strerror-override.c: Update.
3302         * gnulib/import/strerror-override.h: Update.
3303         * gnulib/import/strerror.c: Update.
3304         * gnulib/import/string.in.h: Update.
3305         * gnulib/import/stripslash.c: Update.
3306         * gnulib/import/strnlen1.c: Update.
3307         * gnulib/import/strnlen1.h: Update.
3308         * gnulib/import/strstr.c: Update.
3309         * gnulib/import/strtok_r.c: Update.
3310         * gnulib/import/sys_stat.in.h: Update.
3311         * gnulib/import/sys_time.in.h: Update.
3312         * gnulib/import/sys_types.in.h: Update.
3313         * gnulib/import/tempname.c: Update.
3314         * gnulib/import/tempname.h: Update.
3315         * gnulib/import/time.in.h: Update.
3316         * gnulib/import/unistd--.h: Update.
3317         * gnulib/import/unistd-safer.h: Update.
3318         * gnulib/import/unistd.in.h: Update.
3319         * gnulib/import/unsetenv.c: Update.
3320         * gnulib/import/verify.h: Update.
3321         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3322         * gnulib/import/wchar.in.h: Update.
3323         * gnulib/import/wctype.in.h: Update.
3324         * gnulib/import/xalloc-oversized.h: Update.
3325         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3326         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3327
3328 2018-08-16  Gary Benson <gbenson@redhat.com>
3329
3330         PR gdb/13000:
3331         * gdb/main.c (captured_main_1): Exit with nonzero status
3332         in batch mode if the last command to be executed failed.
3333         * NEWS: Mention the above.
3334
3335 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3336
3337         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3338         end of warning message.
3339
3340 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3341
3342         PR gdb/22943:
3343         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3344         (aarch64_extract_return_value): Use
3345         aapcs_is_vfp_call_or_return_candidate.
3346         (aarch64_return_in_memory): Likewise.
3347         (aarch64_store_return_value): Likewise.
3348
3349 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3350
3351         * aarch64-tdep.c
3352         (aapcs_is_vfp_call_or_return_candidate): Make static
3353         (pass_in_v_or_stack): Remove function.
3354         (pass_in_v_vfp_candidate): New function.
3355         (aarch64_push_dummy_call): Check for float register candidates.
3356
3357 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3358
3359         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3360         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3361         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3362
3363 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3364
3365         PR build/23399
3366         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3367         (struct ipa_sym_addresses): Rename to...
3368         (struct ipa_sym_addresses_common): ... this.
3369         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3370
3371 2018-08-28  Tom Tromey  <tom@tromey.com>
3372
3373         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3374         (token_fifo): Now a std::vector.
3375         (yylex, c_parse): Update.
3376         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3377         (token_fifo): Now a std::vector.
3378         (yylex, d_parse): Update.
3379         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3380         (token_fifo): Now a std::vector.
3381         (yylex, go_parse): Update.
3382
3383 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3384
3385         * parser-defs.h (struct type_stack) <elements>: Change type to
3386         std::vector<union type_stack_elt>.
3387         <depth, size>: Remove.
3388         * parse.c (parse_exp_in_context_1): Adjust.
3389         (type_stack_reserve): Remove.
3390         (check_type_stack_depth): Remove.
3391         (insert_into_type_stack): Adjust to std::vector.
3392         (insert_type): Likewise.
3393         (push_type): Likewise.
3394         (push_type_int): Likewise.
3395         (insert_type_address_space): Likewise.
3396         (pop_type): Likewise.
3397         (pop_type_int): Likewise.
3398         (pop_typelist): Likewise.
3399         (pop_type_stack): Likewise.
3400         (append_type_stack): Likewise.
3401         (push_type_stack): Likewise.
3402         (get_type_stack): Likewise.
3403         (type_stack_cleanup): Likewise.
3404         (push_typelist): Likewise.
3405         (follow_types): Likewise.
3406         (_initialize_parse): Likewise.
3407
3408 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3409
3410         * NEWS: Mention csky target.
3411
3412 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3413             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3414             Don Breazeal  <donb@codesourcery.com>
3415
3416         * csky-linux-tdep.c: New file.
3417         * csky-tdep.c: Likewise.
3418         * csky-tdep.h: Likewise.
3419         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3420         csky-tdep.o.
3421         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3422         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3423         * configure.tgt: Add csky support.
3424
3425 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3426
3427         * python/py-framefilter.c (py_print_frame): Print frame architecture
3428         when printing on an MI output.
3429
3430 2018-08-27  Tom Tromey  <tom@tromey.com>
3431
3432         PR build/23087:
3433         * configure: Rebuild.
3434         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3435
3436 2018-08-27  Tom Tromey  <tom@tromey.com>
3437
3438         * aarch64-linux-tdep.c
3439         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3440         casts to int.
3441
3442 2018-08-27  Tom Tromey  <tom@tromey.com>
3443
3444         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3445         unsigned.
3446         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3447         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3448         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3449         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3450         unsigned.
3451
3452 2018-08-27  Tom Tromey  <tom@tromey.com>
3453
3454         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3455         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3456
3457 2018-08-27  Tom Tromey  <tom@tromey.com>
3458
3459         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3460         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3461         ULONGEST_MAX.
3462         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3463         ULONGEST_MAX.
3464         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3465         ULONGEST_MAX.
3466         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3467         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3468         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3469         ULONGEST_MAX.
3470         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3471         (ppc64_linux_sigaction_tramp_frame)
3472         (ppc32_linux_sighandler_tramp_frame)
3473         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3474         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3475         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3476         * mn10300-linux-tdep.c (am33_linux_sigframe)
3477         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3478         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3479         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3480         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3481         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3482         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3483         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3484         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3485         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3486         * microblaze-linux-tdep.c
3487         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3488         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3489         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3490         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3491         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3492         * common/common-types.h (ULONGEST_MAX): New define.
3493         (CORE_ADDR_MAX): Fix formatting.
3494         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3495         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3496         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3497         (arm_linux_rt_sigreturn_tramp_frame)
3498         (arm_eabi_linux_sigreturn_tramp_frame)
3499         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3500         (thumb2_eabi_linux_sigreturn_tramp_frame)
3501         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3502         (arm_linux_restart_syscall_tramp_frame)
3503         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3504         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3505         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3506         ULONGEST_MAX.
3507         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3508
3509 2018-08-27  Tom Tromey  <tom@tromey.com>
3510
3511         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3512         CORE_ADDR_MAX.
3513         * mips-tdep.c (mips_deal_with_atomic_sequence)
3514         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3515         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3516         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3517         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3518         CORE_ADDR_MAX.
3519         * aarch64-tdep.c (aarch64_software_single_step): Use
3520         CORE_ADDR_MAX.
3521
3522 2018-08-27  Tom Tromey  <tom@tromey.com>
3523
3524         * linespec.c (complete_linespec_component): Add cast to "char".
3525         * completer.c (completion_tracker::build_completion_result): Add
3526         cast to "char".
3527
3528 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3529
3530         * solist.h (struct solist, struct target_so_ops): Fix
3531         indentation.
3532
3533 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3534
3535         * ada-tasks.c (ada_task_info_s): Remove typedef.
3536         (DEF_VEC_O(ada_task_info_s)): Remove.
3537         (struct ada_tasks_inferior_data): Initialize fields.
3538         <task_list>: Make an std::vector.
3539         (get_ada_tasks_inferior_data): Allocate with new.
3540         (ada_get_task_number): Adjust.
3541         (get_task_number_from_id): Likewise.
3542         (valid_task_id): Likewise.
3543         (ada_get_task_info_from_ptid): Likewise.
3544         (iterate_over_live_ada_tasks): Likewise.
3545         (add_ada_task): Likewise.
3546         (read_known_tasks): Likewise.
3547         (ada_build_task_list): Likewise.
3548         (print_ada_task_info): Likewise.
3549         (info_task): Likewise.
3550         (task_command_1): Likewise.
3551
3552 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3553
3554         * ada-lang.c (add_angle_brackets): Return std::string.
3555
3556 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3557
3558         * python/py-threadevent.c (py_get_event_thread): Initialize
3559         pythread.
3560
3561 2018-08-24  Pedro Alves  <palves@redhat.com>
3562
3563         * python/py-bpevent.c (create_breakpoint_event_object): Use
3564         copy-initialization.
3565         * python/py-continueevent.c (emit_continue_event): Use
3566         copy-initialization.
3567         * python/py-exitedevent.c (create_exited_event_object): Return a
3568         gdbpy_ref<>.
3569         (emit_exited_event): Use copy-initialization.
3570         * python/py-inferior.c (python_new_inferior)
3571         (python_inferior_deleted, add_thread_object): Use
3572         copy-initialization.
3573         * python/py-infevents.c (create_inferior_call_event_object)
3574         (create_register_changed_event_object)
3575         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3576         (emit_inferior_call_event, emit_memory_changed_event)
3577         (emit_register_changed_event): Use copy-initialization.
3578         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3579         Return a gdbpy_ref<>.
3580         (emit_new_objfile_event): Use copy-initialization.
3581         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3582         (emit_clear_objfiles_event): Use copy-initialization.
3583         * python/py-signalevent.c (create_signal_event_object): Use
3584         copy-initialization.
3585         * python/py-threadevent.c (create_thread_event_object): Use
3586         copy-initialization.
3587
3588 2018-08-24  Pedro Alves  <palves@redhat.com>
3589             Simon Marchi  <simon.marchi@ericsson.com>
3590
3591         PR gdb/23379
3592         * python/py-continueevent.c: Include "gdbthread.h".
3593         (create_continue_event_object): Add intro comment.  Add 'ptid'
3594         parameter.  Use it to find thread to pass to
3595         create_thread_event_object.
3596         (emit_continue_event): Pass PTID down to
3597         create_continue_event_object.
3598         * python/py-event.h (py_get_event_thread): Declare.
3599         (create_thread_event_object): Remove default from 'thread'
3600         parameter.
3601         * python/py-stopevent.c (create_stop_event_object): Use
3602         py_get_event_thread.
3603         * python/py-threadevent.c (get_event_thread): Rename to ...
3604         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3605         and use it to find the thread.
3606         (create_thread_event_object): Assert that THREAD isn't null.
3607         Don't find the event thread here.
3608
3609 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3610
3611         * block.h (blockrange, blockranges): New struct declarations.
3612         (struct block): Add new field named `ranges'.
3613         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3614         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3615         macros for accessing ranges in struct block.
3616         (make_blockranges): New declaration.
3617         block.c (make_blockranges): New function.
3618         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3619         for block.
3620         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3621         * blockframe.c (cache_pc_function_block): New static global.
3622         (clear_pc_function_cache): Clear cache_pc_function_block.
3623         (find_pc_partial_function): Move comment to symtab.h.  Add
3624         support for non-contiguous blocks.
3625         * cli/cli-cmds.c (block.h): Include.
3626         (print_disassembly): Handle printing of non-contiguous blocks.
3627         (disassemble_current_function): Likewise.
3628         (disassemble_command): Likewise.
3629
3630         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3631         BLOCK_START.
3632         * blockframe.c (get_pc_function_start): Likewise.
3633         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3634         (gcc_symbol_address): Likewise.
3635         * compile/compile-object-run.c (compile_object_run): Likewise.
3636         * compile/compile.c (get_expr_block_and_pc): Likewise.
3637         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3638         (func_addr_to_tail_call_list): Likewise.
3639         * findvar.c (default_read_var_value): Likewise.
3640         * inline-frame.c (inline_frame_this_id): Likewise.
3641         (skip-inline_frames): Likewise.
3642         * infcmd.c (until_next_command): Likewise.
3643         * linespec.c (convert_linespec_to_sals): Likewise.
3644         * parse.c (parse_exp_in_context_1): Likewise.
3645         * printcmd.c (build_address_symbolic): likewise.
3646         (info_address_command): Likewise.
3647         symtab.c (find_function_start_sal): Likewise.
3648         (skip_prologue_sal): Likewise.
3649         (find_function_alias_target): Likewise.
3650         (find_gnu_ifunc): Likewise.
3651         * stack.c (find_frame_funname): Likewise.
3652         * symtab.c (fixup_symbol_section): Likewise.
3653         (find_function_start_sal): Likewise.
3654         (skip_prologue_sal): Likewsie.
3655         (find_function_alias_target): Likewise.
3656         (find_gnu_ifunc): Likewise.
3657         * tracepoint.c (info_scope_command): Likewise.
3658         * value.c (value_fn_field): Likewise.
3659
3660         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3661         in place of find_pc_partial_function.
3662         * blockframe.c (find_function_entry_range_from_pc): New function.
3663         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3664         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3665         for each range in a block.
3666
3667
3668 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3669
3670         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3671         incrementation.
3672
3673 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3674
3675         * solib-svr4.c (read_program_headers_from_bfd): Return
3676         gdb::optional<gdb::byte_vector>.
3677         (svr4_exec_displacement): Adjust.
3678
3679 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3680
3681         * solib-svr4.c (read_program_header): Return
3682         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3683         (find_program_interpreter): Return
3684         gdb::optional<gdb::byte_vector>.
3685         (scan_dyntag_auxv): Adjust.
3686         (enable_break): Adjust.
3687         (svr4_exec_displacement): Adjust.
3688
3689 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3690
3691         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3692         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3693
3694 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3695
3696         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3697         string_vprintf.
3698         * guile/scm-utils.c (gdbscm_printf): Likewise.
3699         * serial.c (serial_printf): Likewise.
3700         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3701
3702 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3703
3704         * stack.c (print_frame): Print frame architecture when printing on
3705         an MI output.
3706         * NEWS: Mention new "arch" attribute in frame output.
3707
3708 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3709
3710         * arch/aarch64.h (aarch64_regnum): Update comment.
3711
3712 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3713
3714         * NEWS: Add SVE to 8.2 section.
3715
3716 2018-08-21  Pedro Alves  <palves@redhat.com>
3717
3718         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3719         out from gdbscm_parse_function_args.
3720         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3721         gdbscm_parse_function_args_1.
3722
3723 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3724
3725         PR gdb/17816
3726         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3727         operator.
3728
3729 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3730
3731         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3732
3733 2018-08-19  Michael Spang  <spang@google.com>
3734
3735         PR gdb/11786
3736         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3737         for PT_TLS segments.
3738
3739 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3740
3741         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3742         dwarf_variable_value.
3743         * dwarf2-frame.c (class dwarf_expr_executor):
3744         Add override for dwarf_variable_value.
3745         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3746         (class symbol_needs_eval_context): Likewise.
3747         (indirect_synthetic_pointer): Add forward declaration.
3748         (sect_variable_value): New function.
3749         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3750         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3751         for DW_OP_GNU_variable_value.
3752
3753 2018-08-16  Tom Tromey  <tom@tromey.com>
3754
3755         * top.c (read_command_file): Update.
3756         (command_line_input): Remove "repeat" argument.
3757         * ada-lang.c (get_selections): Update.
3758         * linespec.c (decode_line_2): Update.
3759         * defs.h (command_line_input): Remove argument.
3760         * cli/cli-script.c (read_next_line): Update.
3761         * python/py-gdb-readline.c: Update.
3762
3763 2018-08-17  Tom Tromey  <tom@tromey.com>
3764
3765         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3766         command_line_input.
3767
3768 2018-08-15  Tom Tromey  <tom@tromey.com>
3769
3770         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3771
3772 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3773
3774         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3775         If used, use find_pc_partial_function to find address range
3776         to disassemble.
3777         * mi/mi-main.c (mi_cmd_list_features): Report
3778         "data-disassemble-a-option" feature.
3779         * NEWS: Mention new -data-disassemble option -a.
3780
3781 2018-08-13  Tom Tromey  <tom@tromey.com>
3782
3783         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3784
3785 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3786
3787         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3788         (aarch64_linux_collect_sve_regset): Likewise.
3789         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3790         * regcache.h (regcache_map_entry_size): New function.
3791
3792 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3793
3794         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3795         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3796         (SVE_HEADER_VL_LENGTH): Likewise.
3797         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3798         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3799         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3800         (SVE_HEADER_SIZE_OFFSET): Likewise.
3801         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3802         (SVE_HEADER_VL_OFFSET): Likewise.
3803         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3804         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3805         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3806         (SVE_HEADER_SIZE): Likewise.
3807         (aarch64_linux_core_read_vq): Add function.
3808         (aarch64_linux_core_read_description): Check for SVE section.
3809
3810 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3811
3812         * aarch64-fbsd-tdep.c
3813         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3814         collect_size.
3815         * aarch64-linux-tdep.c
3816         (aarch64_linux_iterate_over_regset_sections): Likewise.
3817         * alpha-linux-tdep.c
3818         (alpha_linux_iterate_over_regset_sections):
3819         * alpha-nbsd-tdep.c
3820         (alphanbsd_iterate_over_regset_sections): Likewise.
3821         * amd64-fbsd-tdep.c
3822         (amd64fbsd_iterate_over_regset_sections): Likewise.
3823         * amd64-linux-tdep.c
3824         (amd64_linux_iterate_over_regset_sections): Likewise.
3825         * arm-bsd-tdep.c
3826         (armbsd_iterate_over_regset_sections): Likewise.
3827         * arm-fbsd-tdep.c
3828         (arm_fbsd_iterate_over_regset_sections): Likewise.
3829         * arm-linux-tdep.c
3830         (arm_linux_iterate_over_regset_sections): Likewise.
3831         * corelow.c (get_core_registers_cb): Likewise.
3832         (core_target::fetch_registers): Likewise.
3833         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3834         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3835         * gdbarch.h (void): Regenerate.
3836         * gdbarch.sh: Add supply_size and collect_size.
3837         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3838         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3839         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3840         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3841         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3842         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3843         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3844         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3845         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3846         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3847         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3848         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3849         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3850         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3851         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3852         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3853         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3854         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3855         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3856         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3857         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3858         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3859         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3860         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3861         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3862         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3863         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3864         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3865         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3866         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3867
3868 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3869
3870         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3871         with string_printf.
3872
3873 2018-08-10  Keith Seitz  <keiths@redhat.com>
3874
3875         * compile/compile-c-support.c (add_code_header, add_code_footer):
3876         Move into policy class.
3877         (c_push_user_expression, pop_user_expression_nop)
3878         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3879         (compile_program): New host class.
3880         (c_compile_program): New typedef.
3881         (c_compute_porgram): Use c_compile_program.
3882
3883 2018-08-10  Keith Seitz  <keiths@redhat.com>
3884
3885         * compile/compile-internal.h (compile_instance::~compile_instance):
3886         Remove calls to htab_delete.
3887         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3888         * compile.c (compile_instance::compile_instance): Initialize
3889         htab unique pointers.
3890         (compile_instance::get_cached_type, compile_instance::insert_type)
3891         (compile_instance::error_symbol_once): Update for unique_ptr.
3892
3893 2018-08-10  Keith Seitz  <keiths@redhat.com>
3894
3895         * compile/compile-c-symbols.c (struct symbol_error)
3896         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3897         (compile_instance::insert_symbol_error)
3898         (compile_instance::error_symbol_once): Move to ...
3899         * compile/compile.c: ... here.
3900
3901 2018-08-10  Keith Seitz  <keiths@redhat.com>
3902
3903         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3904         instead of `new_compile_instance'.
3905         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3906         Update description.
3907         If the symbol error map is not initialized, create it.
3908         (generate_c_for_for_one_symbol): Do not check/initialize
3909         the symbol error map.
3910         * compile/compile-c-types.c (compile_c_instance): Make a class.
3911         Update all callers.
3912         (compile_instance::compile_instance): Initialize the type cache.
3913         (get_cached_type): New function.
3914         (insert_type): Update description.
3915         (compile_c_instance::m_default_cflags): Define.
3916         (convert_type): Update description.  Use get_cached_type.
3917         (delete_instance): Moved to destructor.
3918         (new_compile_instance): Moved to constructor.
3919         * compile/compile-c.h (compile_c_instance): Make class inheriting
3920         from compile_instance.
3921         <base>: Remove field.
3922         <type_map, symbol_err_map>: Move to base class.
3923         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3924         * compile/compile-internal.h (compile_instance): Make class.
3925         <type_map_t, symbol_err_map_t>: Define.
3926         <fe>: Rename to `m_gcc_fe'.
3927         <scope, block, gcc_target_options>: Add `m_' prefix.
3928         <m_type_map, m_symbol_err_map>: New fields, moved from
3929         compile_c_instance.
3930         <destroy>: Remove.
3931         (convert_type, new_compile_instance): Remove.
3932         * compile/compile.c (cleanup_compile_instance): Remove.
3933         (compile_to_object): Use unique_ptr to eliminate cleanups.
3934         (compile_instance::set_print_callback, compile_instance::version)
3935         (compile_instance::set_verbose)
3936         (compile_instance::set_driver_filename)
3937         (compile_instance::set_triplet_regexp)
3938         (compile_instance::set_arguments)
3939         (compile_instance::set_source_file)
3940         (compile_instance::compile): Define.
3941
3942 2018-08-10  Keith Seitz  <keiths@redhat.com>
3943
3944         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3945         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3946         gcc-c-fe.def to define C plugin.
3947         (delete_instance): Delete `c_plugin'.
3948         (new_compile_instance): Initialize `c_plugin'.
3949         * compile/compile-c.h: Include gcc_c_plugin.h.
3950         (struct compile_c_instance) <c_plugin>: New member.
3951         * gcc-c-plugin.h: New file.
3952         Update all callers with API change.
3953
3954 2018-08-10  Keith Seitz  <keiths@redhat.com>
3955
3956         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3957         (HFILES_NO_SRCDIR): ... to here.
3958         Add compile-internal.h and compile-c.h.
3959         * compile/compile-c-support.c: Include compile-c.h.
3960         * compile/compile-c-symbols.c: Include compile-c.h.
3961         (generate_c_for_variable_locations): Update comment.
3962         * compile/compile-c-types.c: Include compile-c.h.
3963         * compile/compile-c.h: New file -- moved C language declarations
3964         from other files here.
3965         * compile/compile-internal.h: Do not include hashtab.h or
3966         common/enum-flags.h.
3967         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3968         (gcc_convert_symbol, gcc_symbol_address)
3969         (generate_c_for_variable_locations, c_get_mode_for_size)
3970         (c_get_range_decl_name): Definitions moved to compile-c.h.
3971         * compile/compile-loc2c.c: Include compile-c.h.
3972
3973 2018-08-10  Keith Seitz  <keiths@redhat.com>
3974
3975         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3976         (c_symbol_substitution_name): ... this.
3977         Update all callers.
3978
3979 2018-08-10  Keith Seitz  <keiths@redhat.com>
3980
3981         * compile/compile-c-support.c (c_compute_program): Use
3982         unique_xmalloc_ptr to eliminate cleanup.
3983         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3984         Return a unique_xmalloc_ptr and eliminate cleanup.
3985         * compile/compile-internal.h (generate_c_for_variable_locations):
3986         Return unique_xmalloc_ptr and update description.
3987
3988 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3989
3990         * corelow.c (core_target::get_core_register_section): Rename
3991         min_size to section_min_size.
3992
3993 2018-08-09  Jim Wilson  <jimw@sifive.com>
3994
3995         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3996         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3997         * NEWS: Mention new GNU/Linux RISC-V target.
3998         * configure.host: Add riscv*-*-linux*.
3999         * configure.nat: Add riscv*.
4000         * configure.tgt: Add riscv*-*-linux*.
4001         * riscv-linux-nat.c: New file.
4002         * riscv-linux-tdep.c: New file.
4003
4004 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4005
4006         * infrun.c (resume): Make static, add forward declaration.
4007         (proceed): Update header comment.
4008         * infrun.h (resume): Delete declaration.
4009
4010 2018-08-09  Tom Tromey  <tom@tromey.com>
4011
4012         * riscv-tdep.h: Minor formatting fixes.
4013
4014 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4015
4016         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4017         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4018         (test_mkdir_recursive): Likewise.
4019         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4020
4021 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4022
4023         * valarith.c (value_subscripted_rvalue): If an array is not in
4024         memory, and we don't know the upper bound, then we can't know that
4025         the requested element exists or not.
4026
4027 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4028
4029         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4030         (target_options_to_string): Add comment.
4031
4032 2018-08-08  Tom Tromey  <tom@tromey.com>
4033
4034         * unittests/scoped_mmap-selftests.c: Check result of "write".
4035
4036 2018-08-08  Jim Wilson  <jimw@sifive.com>
4037
4038         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
4039         (decode_register_index_short): New.
4040         (decode_j_type_insn, decode_cj_type_insn): New.
4041         (decode_b_type_insn, decode_cb_type_insn): New.
4042         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
4043         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
4044         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
4045         is_c_sw_insn instead of is_sw_insn.
4046         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
4047         (riscv_software_single_step): New.
4048         * riscv-tdep.h (riscv_software_single_step): Declare.
4049
4050         * riscv-tdep.c (riscv_isa_xlen): Drop static.
4051         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
4052
4053 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
4054
4055         PR gdb/18050:
4056         * target.c (dispose_inferior): Don't dispose of inferiors that are
4057         already killed.
4058
4059 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
4060
4061         * remote.c (remote_target::download_tracepoint): Change char* to
4062         const char*.
4063
4064 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
4065
4066         * target.h (target_options_to_string): Return an std::string.
4067         * target.c (str_comma_list_concat_elem): Return void, use
4068         std::string.
4069         (do_option): Likewise.
4070         (target_options_to_string): Return an std::string.
4071         * linux-nat.c (linux_nat_target::wait): Adjust.
4072         * target-debug.h (target_debug_print_options): Adjust.
4073
4074 2018-08-07  Tom Tromey  <tom@tromey.com>
4075
4076         * Makefile.in (CPPFLAGS): New variable.
4077         (INTERNAL_CPPFLAGS): Use it.
4078
4079 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4080
4081         * NEWS: Mention the index cache.
4082
4083 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4084
4085         * common/pathstuff.h (get_standard_cache_dir): New.
4086         * common/pathstuff.c (get_standard_cache_dir): New.
4087         * build-id.h (build_id_to_string): New.
4088         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4089         DEBUG_STR_SUFFIX): Move to here.
4090         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4091         DEBUG_STR_SUFFIX): Move from there.
4092         (write_psymtabs_to_index): Make non-static, add basename
4093         parameter.  Write to temporary files, rename when done.
4094         (save_gdb_index_command): Adjust call to
4095         write_psymtabs_to_index.
4096         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4097         field.
4098         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4099         (get_gdb_index_contents_from_cache): New.
4100         (get_gdb_index_contents_from_cache_dwz): New.
4101         (dwarf2_initialize_objfile): Read index from cache.
4102         (dwarf2_build_psymtabs): Save to index.
4103         * dwarf-index-cache.h: New file.
4104         * dwarf-index-cache.c: New file.
4105         * dwarf-index-write.h: New file.
4106
4107 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4108
4109         * gnulib/aclocal.m4: Re-generate.
4110         * gnulib/config.in: Re-generate.
4111         * gnulib/configure: Re-generate.
4112         * gnulib/import/Makefile.am: Re-generate.
4113         * gnulib/import/Makefile.in: Re-generate.
4114         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4115         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4116         * gnulib/import/m4/mkdir.m4: New file.
4117         * gnulib/import/mkdir.c: New file.
4118         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4119         module.
4120
4121 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4122
4123         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4124         * common/scoped_mmap.c: New file.
4125         * common/scoped_mmap.h (destroy): New method.
4126         (~scoped_mmap, reset): Use destroy.
4127         (scoped_mmap): New move constructor.
4128         (mmap_file): New declaration.
4129         * unittests/scoped_mmap-selftests.c (test_normal,
4130         test_invalid_filename, run_tests): New functions.
4131         (_initialize_scoped_mmap_selftests): Register selftest.
4132
4133 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4134
4135         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4136         (read_gdb_index_from_buffer): ... this.  Remove section
4137         parameter, add buffer parameter.
4138         (get_gdb_index_contents_ftype,
4139         get_gdb_index_contents_dwz_ftype): New typedefs.
4140         (dwarf2_read_gdb_index): Add callback parameters to get the
4141         index contents.
4142         (get_gdb_index_contents_from_section): New.
4143         (dwarf2_initialize_objfile): Update call to
4144         dwarf2_read_gdb_index.
4145
4146 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4147
4148         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4149         (gdb_open_cloexec): Likewise.
4150         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4151         (commandline_from_pid): Likewise.
4152         (linux_xfer_osdata_threads): Likewise.
4153         (linux_xfer_osdata_fds): Likewise.
4154         * ada-lang.c (is_package_name): Likewise.
4155         * auxv.c (procfs_xfer_auxv): Likewise.
4156         * breakpoint.c (print_one_breakpoint_location): Use
4157         uiout::field_fmt.
4158         (print_one_catch_solib): Use string_printf.
4159         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4160         (add_pe_forwarded_sym): Likewise.
4161         * dwarf2read.c (create_type_unit_group): Likewise.
4162         (build_error_marker_type): Likewise.
4163         * infcall.c (get_function_name): Likewise.
4164         * valprint.c (print_converted_chars_to_obstack): Likewise.
4165         * xtensa-tdep.c (xtensa_register_type): Likewise.
4166
4167 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4168
4169         * remote.c (remote_target::download_tracepoint): Fix format
4170         string errors.
4171
4172 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4173
4174         * tracefile.c: Include common/byte-vector.h.
4175         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4176         with trace_regblock_size if needed.  Update uses of buf.
4177
4178 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4179
4180         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4181         std::vector<unsigned char>.
4182         * tracepoint.c (collection_list::collection_list): Remove
4183         m_regs_mask initializer from initializer list.  Resize
4184         m_regs_mask using the largest remote register number.
4185         (collection_list::add_remote_register): Remove size check on
4186         m_regs_mask.  Use at to access element.
4187         (collection_list::stringify): Change type of temp_buf to
4188         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4189         stringify the register mask.  Use pack_hex_byte for the register
4190         mask.
4191
4192 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4193
4194         * tracepoint.h (class collection_list) <add_register>: Remove.
4195         <add_remote_register, add_ax_registers, add_local_register>:
4196         Declare.
4197         <add_memrange>: Add scope parameter.
4198         * tracepoint.c (encode_actions_1): Likewise.
4199         (collection_list::add_register): Rename to ...
4200         (collection_list::add_remote_register): ... this.  Update
4201         comment.
4202         (collection_list::add_ax_registers, add_local_register): New
4203         methods.
4204         (collection_list::add_memrange): Add scope parameter.  Call
4205         add_local_register instead of add_register.
4206         (finalize_tracepoint_aexpr): New function.
4207         (collection_list::collect_symbol): Update calls to add_memrange.
4208         Call add_local_register instead of add_register.  Call
4209         add_ax_registers.  Call finalize_tracepoint_aexpr.
4210         (encode_actions_1): Get remote regnos for $reg action.  Call
4211         add_remote_register, add_ax_registers, and add_local_register.
4212         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4213         (validate_actionline): Call finalize_tracepoint_aexpr.
4214
4215 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4216
4217         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4218         Replace array buf with gdb::char_vector buf, of size
4219         get_remote_packet_size ().  Replace references to buf and
4220         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4221         and xsnprintf with snprintf.  Raise errors if the buffer is too
4222         small.
4223
4224 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4225
4226         * remote.c (remote_target::download_tracepoint): Fix the has_more
4227         predicate in the QTDP action list iteration.
4228
4229 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4230
4231         * remote.c (remote_target::download_tracepoint): Fix indentation
4232         in for block.
4233
4234 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4235
4236         * proc-api.c (_initialize_proc_api): Remove c, unused.
4237         * procfs.c (procfs_init_inferior): Remove signals, unused.
4238         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4239         unused.
4240
4241 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4242             Andrew Burgess  <andrew.burgess@embecosm.com>
4243
4244         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4245         'W_STOPCODE (0)' as this could be ambiguous.
4246
4247 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4248
4249         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4250         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4251         "ai_socktype").
4252
4253 2018-08-02  Tom Tromey  <tom@tromey.com>
4254
4255         PR symtab/16842.
4256         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4257         symbols.
4258         (process_structure_scope): Likewise.
4259
4260 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4261
4262         PR gdb/22629:
4263         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4264         kill inferior.
4265
4266 2018-08-02  Tom Tromey  <tom@tromey.com>
4267
4268         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4269         (darwin_suspend_inferior, darwin_resume_inferior)
4270         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4271         (darwin_check_new_threads): Check result of get_darwin_inferior.
4272
4273 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4274
4275         GDB 8.1.1 released.
4276
4277 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4278
4279         * varobj.c (varobj_get_path_expr_parent): Report an error if
4280         parent is a dynamic varobj.
4281
4282 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4283
4284         * gnulib/aclocal.m4: Re-generate.
4285         * gnulib/config.in: Re-generate.
4286         * gnulib/configure: Re-generate.
4287         * gnulib/import/Makefile.in: Re-generate.
4288         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4289         * gnulib/import/m4/onceonly.m4: Re-generate.
4290
4291 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4292
4293         * target-descriptions.c (struct xml_test_tdesc): New.
4294         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4295         (record_xml_tdesc): Update.
4296         (maintenance_check_xml_descriptions): Update.
4297         * target-descriptions.h (record_xml_tdesc): Update comment.
4298
4299 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4300
4301         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4302         checking array bounds are defined.
4303
4304 2018-07-30  Tom Tromey  <tom@tromey.com>
4305
4306         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4307         irreflexivity violation.
4308
4309 2018-07-30  Tom Tromey  <tom@tromey.com>
4310
4311         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4312         * value.c (unpack_long): Remove lint code.
4313         * valops.c (value_ind): Remove lint code.
4314         * valarith.c (value_x_binop, value_x_unop, value_equal)
4315         (value_pos): Remove lint code.
4316
4317 2018-07-28  Tom de Vries  <tdevries@suse.de>
4318
4319         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4320         with undefined upper bound as <optimized out>.
4321
4322 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4323
4324         * gcore.in: Rename variable "name" to "prefix".  Expand
4325         "usage" text.
4326
4327 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4328
4329         * windows-nat.c (windows_nat_target::create_inferior): Update to
4330         call close() in global namespace.
4331
4332 2018-07-26  Tom Tromey  <tom@tromey.com>
4333
4334         * dwarf-index-write.c (add_address_entry): Don't add objfile
4335         offsets.
4336         * dbxread.c (find_stab_function): Rename from
4337         find_stab_function_addr.  Return a bound_minimal_symbol.
4338         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4339         Don't add objfile offsets.
4340         (end_psymtab): Use raw_text_low, raw_text_high,
4341         MSYMBOL_VALUE_RAW_ADDRESS.
4342         (read_ofile_symtab): Update.
4343         (process_one_symbol): Update.
4344         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4345         offsets.
4346         (dw2_relocate): Remove.
4347         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4348         searching addrmap.
4349         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4350         Update.
4351         (process_psymtab_comp_unit_reader, add_partial_symbol)
4352         (add_partial_subprogram, dwarf2_ranges_read): Update.
4353         (load_partial_dies): Update.
4354         (add_address_entry): Don't add objfile offsets.
4355         (dwarf2_build_include_psymtabs): Update.
4356         (create_addrmap_from_aranges): Don't add objfile offsets.
4357         (dw2_find_pc_sect_compunit_symtab): Update.
4358         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4359         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4360         Update.
4361         (parse_partial_symbols): Don't add objfile offsets.  Use
4362         raw_text_low, raw_text_high.  Update.
4363         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4364         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4365         or call 'relocate' quick function.  Clear psymbol_map.
4366         * psympriv.h (struct partial_symbol) <address>: Add section
4367         offset.
4368         <set_unrelocated_address>: Rename from set_address.
4369         <raw_text_low, raw_text_high>: New methods.
4370         <text_low, text_high>: Add objfile parameter.
4371         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4372         set_unrelocated_address.
4373         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4374         (find_pc_psymbol): Update.
4375         (fixup_psymbol_section, relocate_psymtabs): Remove.
4376         (dump_psymtab, psym_functions): Update.
4377         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4378         parameter.
4379         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4380         (start_psymtab_common): Update.
4381         * symfile-debug.c (debug_qf_relocate): Remove.
4382         (debug_sym_quick_functions): Update.
4383         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4384         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4385         Update.
4386
4387 2018-07-26  Tom Tromey  <tromey@redhat.com>
4388
4389         * dbxread.c (end_psymtab): Use text_high_valid and
4390         text_low_valid.
4391         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4392         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4393         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4394         Update comment.
4395         <text_low_valid, text_high_valid>: New fields.
4396         <set_text_low, set_text_high>: Update.
4397         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4398
4399 2018-07-26  Tom Tromey  <tom@tromey.com>
4400
4401         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4402         Update.
4403         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4404         textlow and texthigh fields.
4405         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4406         Update.
4407         * mdebugread.c (parse_lines, parse_partial_symbols)
4408         (psymtab_to_symtab_1): Update.
4409         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4410         Rename fields.  Update comment.  Now private.
4411         <text_low, text_high, set_text_low, set_text_high>: New methods.
4412         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4413         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4414         (start_psymtab_common, maintenance_info_psymtabs)
4415         (maintenance_check_psymtabs): Update.
4416         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4417         texthigh fields.
4418         (scan_xcoff_symtab): Update.
4419
4420 2018-07-26  Tom Tromey  <tromey@redhat.com>
4421
4422         * psympriv.h (struct partial_symbol) <unrelocated_address,
4423         address, set_address>: New methods.
4424         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4425         (fixup_psymbol_section, relocate_psymtabs): Update.
4426         (print_partial_symbols): Add 'objfile' parameter.  Update.
4427         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4428         Update.
4429
4430 2018-07-26  Tom Tromey  <tom@tromey.com>
4431
4432         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4433         (debug_names::write_psymbols): Update.
4434         * psympriv.h (struct partial_symbol): Derive from
4435         general_symbol_info.
4436         <obj_section>: New method.
4437         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4438         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4439         (find_pc_sect_psymbol, fixup_psymbol_section)
4440         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4441         (print_partial_symbols, recursively_search_psymtabs)
4442         (compare_psymbols, psymbol_hash, psymbol_compare)
4443         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4444         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4445
4446 2018-07-26  Tom Tromey  <tromey@redhat.com>
4447
4448         * dbxread.c (end_psymtab): Remove dead code.
4449
4450 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4451
4452         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4453         DWARF unwinders are disabled.
4454         * dwarf2-frame.c: Add dwarf2read.h include.
4455         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4456         disabled.
4457         (dwarf2_frame_unwinders_enabled_p): Define.
4458         (show_dwarf_unwinders_enabled_p): New function.
4459         (_initialize_dwarf2_frame): Register switch to control DWARF
4460         unwinder use.
4461         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4462         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4463         (show_dwarf_cmdlist): Remove static keyword.
4464         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4465         (show_dwarf_cmdlist): Declare.
4466         * NEWS: Document new feature.
4467
4468 2018-07-26  Tom de Vries  <tdevries@suse.de>
4469
4470         PR breakpoints/23366
4471         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4472
4473 2018-07-26  Tom de Vries  <tdevries@suse.de>
4474
4475         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4476         DW_AT_count can't be translated to a dynamic prop.
4477
4478 2018-07-25  Tom de Vries  <tdevries@suse.de>
4479
4480         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4481         try/catch.
4482
4483 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4484
4485         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4486
4487 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4488
4489         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4490
4491 2018-07-24  Keith Seitz  <keiths@redhat.comt
4492
4493         PR symtab/23010
4494         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4495         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4496         instead of add_symbol_to_list.
4497         (read_file_scope): Call prepare_one_comp_unit before reading
4498         any other DIEs.
4499
4500 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4501
4502         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4503
4504 2018-07-24  Tom Tromey  <tom@tromey.com>
4505
4506         * utils.c (malloc, realloc, free): Don't declare.
4507         * configure, config.in: Rebuild.
4508         * configure.ac: Don't check for declarations of free, malloc, or
4509         realloc.
4510
4511 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4512
4513         * aarch64-linux-nat.c
4514         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4515         variable.
4516         * arm-linux-nat.c (fetch_regs): Likewise.
4517         (store_regs): Likewise.
4518         (fetch_vfp_regs): Likewise.
4519         (store_vfp_regs): Likewise.
4520         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4521         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4522         (arm_linux_nat_target::insert_watchpoint): Likewise.
4523         (arm_linux_nat_target::remove_watchpoint): Likewise.
4524         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4525         Likewise.
4526         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4527         Likewise.
4528         * ppc-linux-nat.c (fetch_register): Likewise.
4529         (fetch_all_gp_regs): Likewise.
4530         (fetch_ppc_registers): Likewise.
4531         (store_all_gp_regs): Likewise.
4532         (store_ppc_registers): Likewise.
4533         (hwdebug_insert_point): Likewise.
4534         (can_use_watchpoint_cond_accel): Likewise.
4535         * remote-sim.c (gdb_os_write_stdout): Likewise.
4536
4537 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4538             Tom Tromey  <tom@tromey.com>
4539
4540         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4541         test for it.
4542         * configure: Rebuild.
4543
4544 2018-07-22  Tom Tromey  <tom@tromey.com>
4545
4546         * regformats/regdat.sh: Define xmltarget_${name} inside
4547         #ifndef IN_PROCESS_AGENT.
4548
4549 2018-07-22  Tom Tromey  <tom@tromey.com>
4550
4551         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4552
4553 2018-07-22  Tom Tromey  <tom@tromey.com>
4554
4555         * symfile.c (reread_symbols): Notify iter, not objfile.
4556
4557 2018-07-22  Tom Tromey  <tom@tromey.com>
4558
4559         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4560         Use arch_ops.
4561         (ravenscar_thread_target::prepare_to_store): Likewise.
4562
4563 2018-07-22  Tom Tromey  <tom@tromey.com>
4564
4565         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4566         unused variable.  Call value_fetch_lazy when needed.
4567         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4568         Remove unused variable.  Call value_fetch_lazy when needed.
4569
4570 2018-07-22  Tom Tromey  <tom@tromey.com>
4571
4572         * m32c-tdep.c (mark_dma): Return void.
4573         (make_regs): Remove unused declarations.
4574
4575 2018-07-22  Tom Tromey  <tom@tromey.com>
4576
4577         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4578         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4579         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4580         bkscm_get_valid_block_smob_arg_unsafe for effect.
4581
4582 2018-07-22  Tom Tromey  <tom@tromey.com>
4583
4584         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4585         value_type.
4586
4587 2018-07-22  Tom Tromey  <tom@tromey.com>
4588
4589         * windows-nat.c (saved_context): Conditionally define.
4590         * remote.c (remote_target::remote_btrace_maybe_reopen):
4591         Conditionally declare "warned".
4592         * inflow.c (sigquit_ours): Conditionally define.
4593         (new_tty): Move "tty" declaration inside #if.
4594         * guile/guile.c (guile_datadir): Conditionally define.
4595         * charset.c (set_be_le_names): Move some declarations inside #if.
4596         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4597         #if.
4598         (parse_xml_btrace_conf): Likewise.
4599
4600 2018-07-22  Tom Tromey  <tom@tromey.com>
4601
4602         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4603
4604 2018-07-22  Tom Tromey  <tom@tromey.com>
4605
4606         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4607         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4608         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4609         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4610         * stack.c (frame_apply_level_command): Remove unused variable.
4611         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4612         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4613         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4614         unused variable.
4615         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4616         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4617         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4618         variable.
4619         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4620         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4621         variable.
4622         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4623         Remove unused variable.
4624         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4625         variable.
4626         * common/tdesc.c (print_xml_feature::visit): Remove unused
4627         variable.
4628         * compile/compile-object-load.c (store_regs): Remove unused
4629         variables.
4630         * complaints.c (clear_complaints): Remove unused variable.
4631         * corelow.c (core_target_open): Remove unused variable.
4632         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4633         variable.
4634         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4635         variable.
4636         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4637         variable.
4638         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4639         variable.
4640         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4641         variable.
4642         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4643         variable.
4644         * ia64-tdep.c (examine_prologue): Remove unused variable.
4645         * infcall.c (run_inferior_call): Remove unused variable.
4646         * inferior.c (exit_inferior): Remove unused variable.
4647         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4648         * linespec.c (decode_line_2): Remove unused variable.
4649         * linux-nat.c (super_close): Remove.
4650         * linux-tdep.c (linux_info_proc): Remove unused variable.
4651         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4652         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4653         Remove unused variable.
4654         * parse.c (find_minsym_type_and_address): Remove unused variable.
4655         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4656         variable.
4657         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4658         variable.
4659         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4660         variables.
4661         * record-btrace.c (record_btrace_target::store_registers): Remove
4662         unused variable.
4663         (cmd_show_record_btrace_cpu): Remove unused variable.
4664         * riscv-tdep.c (riscv_register_reggroup_p)
4665         (riscv_push_dummy_call, riscv_return_value): Remove unused
4666         variable.
4667         * rust-exp.y (literal): Remove unused variable.
4668         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4669         unused variable.
4670         <STRUCTOP_ANONYMOUS>: Likewise.
4671         * s390-linux-tdep.c (s390_linux_init_abi_31)
4672         (s390_linux_init_abi_64): Remove unused variable.
4673         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4674         (file_select_thread, net_windows_open, _initialize_ser_windows):
4675         Remove unused variables.
4676         * symtab.c (find_pc_sect_line): Remove unused variable.
4677         * target-memory.c (compute_garbled_blocks): Remove unused
4678         variable.
4679         (target_write_memory_blocks): Remove unused variable.
4680         * target.c (target_stack::unpush): Remove unused variables.
4681         * tracepoint.c (start_tracing, all_tracepoint_actions)
4682         (merge_uploaded_trace_state_variables)
4683         (print_one_static_tracepoint_marker): Remove unused variable.
4684         * unittests/basic_string_view/element_access/char/1.cc (test01):
4685         Remove unused variable.
4686         * windows-nat.c (windows_continue, windows_add_all_dlls)
4687         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4688         Remove unused variables.
4689
4690 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4691
4692         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4693         attr_profile in HAVE_ELF.
4694         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4695         HAVE_ELF.
4696
4697 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4698
4699         * frame.c (frame_register_unwind): Change parameter name.
4700         (frame_unwind_register): Likewise.
4701         (frame_unwind_register_value): Likewise.
4702         (frame_unwind_register_signed): Likewise.
4703         (frame_unwind_register_unsigned): Likewise.
4704         * frame.h (frame_register_unwind): Likewise.
4705         (frame_unwind_register): Likewise.
4706         (frame_unwind_register_value): Likewise.
4707         (frame_unwind_register_signed): Likewise.
4708         (frame_unwind_register_unsigned): Likewise.
4709         (frame_unwind_arch): Likewise.
4710
4711 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4712
4713         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4714         ISA maintenance.
4715
4716 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4717
4718         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4719         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4720         hand.
4721
4722 2018-07-20  Keith Seitz  <keiths@redhat.com>
4723
4724         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4725         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4726         m_compunit_symtab, m_language>: Add "m_" prefix.
4727         Update all uses.
4728         * buildsym.c: Update all uses.
4729
4730 2018-07-20  Tom Tromey  <tom@tromey.com>
4731
4732         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4733         * buildsym.h (record_line_ftype): Remove typedef.
4734
4735 2018-07-20  Tom Tromey  <tom@tromey.com>
4736
4737         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4738         (end_expandable_symtab): Likewise.
4739         (end_symtab_get_static_block): Likewise.
4740         (end_symtab_from_static_block): Likewise.
4741         * buildsym-legacy.c (augment_type_symtab): Remove.
4742         (end_expandable_symtab): Remove.
4743         (end_symtab_get_static_block): Remove.
4744         (end_symtab_from_static_block): Remove.
4745
4746 2018-07-20  Tom Tromey  <tom@tromey.com>
4747
4748         * dwarf2read.c: Include buildsym.h.
4749         (struct dwarf2_cu) <builder>: New method.
4750         (fixup_go_packaging): Update.
4751         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4752         use scoped_free_pendings.
4753         (using_directives): Add "cu" parameter, remove "language".
4754         (read_import_statement, setup_type_unit_groups, )
4755         (read_func_scope, read_lexical_block_scope)
4756         (dwarf2_record_block_ranges, read_namespace): Update.
4757         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4758         (lnp_state_machine::handle_end_sequence): Update.
4759         (class lnp_state_machine) <m_cu>: New member.
4760         <m_record_line_callback>: Remove.
4761         <m_currently_recording_lines>: New member.
4762         (lnp_state_machine::handle_set_file): Update.
4763         (noop_record_line): Remove.
4764         (dwarf_record_line_p): Add cu parameter.
4765         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4766         (lnp_state_machine::record_line)
4767         (lnp_state_machine::lnp_state_machine)
4768         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4769         (dwarf_decode_lines): Update.
4770         (dwarf2_start_subfile): Add cu parameter.
4771         (dwarf2_start_symtab, new_symbol): Update.
4772         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4773         Remove dwarf2_per_objfile parameter.
4774         (dwarf_decode_macros): Update.
4775
4776 2018-07-20  Tom Tromey  <tom@tromey.com>
4777
4778         * stabsread.c (define_symbol): Update.
4779         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4780         * dwarf2read.c (new_symbol): Update.
4781         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4782         * cp-namespace.c: Include buildsym.h.
4783         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4784         * buildsym-legacy.c (get_buildsym_compunit): New function.
4785
4786 2018-07-20  Tom Tromey  <tom@tromey.com>
4787
4788         * xcoffread.c: Include buildsym-legacy.h.
4789         * windows-nat.c: Include buildsym-legacy.h.
4790         * stabsread.c: Include buildsym-legacy.h.
4791         * mdebugread.c: Include buildsym-legacy.h.
4792         * buildsym-legacy.h: New file.
4793         * buildsym-legacy.c: New file, from buildsym.c.
4794         * go32-nat.c: Include buildsym-legacy.h.
4795         * dwarf2read.c: Include buildsym-legacy.h.
4796         * dbxread.c: Include buildsym-legacy.h.
4797         * cp-namespace.c: Include buildsym-legacy.h.
4798         * coffread.c: Include buildsym-legacy.h.
4799         * buildsym.h: Move some contents to buildsym-legacy.h.
4800         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4801         buildsym-legacy.c.
4802         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4803
4804 2018-07-20  Tom Tromey  <tom@tromey.com>
4805
4806         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4807         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4808         (buildsym_compunit::buildsym_compunit)
4809         (buildsym_compunit::~buildsym_compunit)
4810         (buildsym_compunit::get_macro_table): Define.
4811
4812 2018-07-20  Tom Tromey  <tom@tromey.com>
4813
4814         * buildsym.c (reset_symtab_globals): Remove.
4815         (buildsym_compunit::end_symtab_from_static_block): Update.
4816         (buildsym_compunit::augment_type_symtab): Update.
4817         (end_symtab_from_static_block): Call free_buildsym_compunit.
4818         (augment_type_symtab, end_symtab, end_expandable_symtab):
4819         Likewise.
4820
4821 2018-07-20  Tom Tromey  <tom@tromey.com>
4822
4823         * arch-utils.c: Do not include buildsym.h.
4824         * mipsread.c: Do not include buildsym.h.
4825         * machoread.c: Do not include buildsym.h.
4826         * elfread.c: Do not include buildsym.h.
4827
4828 2018-07-20  Tom Tromey  <tom@tromey.com>
4829
4830         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4831         initialization.
4832         (buildsym_compunit): Add new constructor.
4833         (struct buildsym_compunit) <get_last_source_file, finish_block,
4834         record_block_range, start_subfile, patch_subfile_names,
4835         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4836         set_last_source_start_addr, get_last_source_start_addr,
4837         get_local_using_directives, set_local_using_directives,
4838         get_global_using_directives, outermost_context_p,
4839         get_current_context_stack, get_context_stack_depth,
4840         get_current_subfile, get_local_symbols, get_file_symbols,
4841         get_global_symbols, record_debugformat, record_producer,
4842         push_context, pop_context, end_symtab_get_static_block,
4843         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4844         New public methods.
4845         <record_pending_block, finish_block_internal, make_blockvector,
4846         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4847         private methods.
4848         Update all users.
4849
4850 2018-05-22  Tom Tromey  <tom@tromey.com>
4851
4852         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4853         parameter.
4854         (finish_block_internal): Update.
4855
4856 2018-07-20  Tom Tromey  <tom@tromey.com>
4857
4858         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4859         parameter.
4860         (finish_block_internal): Update.
4861
4862 2018-07-20  Tom Tromey  <tom@tromey.com>
4863
4864         * buildsym.h (EXTERN): Don't define or undef.
4865         * buildsym.c (EXTERN): Don't define.
4866
4867 2018-07-20  Tom Tromey  <tom@tromey.com>
4868
4869         * buildsym.c: Remove TODO comment.
4870
4871 2018-07-20  Tom Tromey  <tom@tromey.com>
4872
4873         * coffread.c (coff_symtab_read): Update.
4874         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4875         (xcoff_new_init): Update.
4876         * mipsread.c (mipscoff_new_init): Update.
4877         * mdebugread.c (mdebug_build_psymtabs): Update.
4878         * elfread.c (elf_new_init): Update.
4879         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4880         Update.
4881         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4882         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4883         (stabsect_build_psymtabs): Update.
4884         * buildsym.h (buildsym_init): Don't declare.
4885         * buildsym.c: Update comment.
4886         (prepare_for_building): Remove.
4887         (start_symtab, restart_symtab): Update.
4888         (reset_symtab_globals): Update comment.
4889         (buildsym_init): Remove.
4890
4891 2018-07-20  Tom Tromey  <tom@tromey.com>
4892
4893         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4894         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4895         (read_enum_type, common_block_start, common_block_end)
4896         (cleanup_undefined_types_1, finish_global_stabs): Update.
4897         * mdebugread.c (psymtab_to_symtab_1): Update.
4898         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4899         (read_lexical_block_scope, new_symbol): Update.
4900         * dbxread.c (process_one_symbol): Update.
4901         * coffread.c (coff_symtab_read, process_coff_symbol)
4902         (coff_read_enum_type): Update.
4903         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4904         declare.
4905         (get_local_symbols, get_file_symbols, get_global_symbols): New
4906         functions.
4907         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4908         m_global_symbols.
4909         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4910         (~scoped_free_pendings): Update.
4911         (finish_block, prepare_for_building, reset_symtab_globals)
4912         (end_symtab_get_static_block, end_symtab_with_blockvector)
4913         (augment_type_symtab, push_context): Update.
4914         (get_local_symbols, get_file_symbols, get_global_symbols): New
4915         functions.
4916         (buildsym_init): Update.
4917
4918 2018-07-20  Tom Tromey  <tom@tromey.com>
4919
4920         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4921         (process_full_type_unit): Likewise.
4922         (dwarf2_start_symtab): Set list_in_scope.
4923
4924 2018-07-20  Tom Tromey  <tom@tromey.com>
4925
4926         * dwarf2read.c (process_psymtab_comp_unit_reader)
4927         (build_type_psymtabs_reader): Do not set list_in_scope.
4928
4929 2018-07-20  Tom Tromey  <tom@tromey.com>
4930
4931         * buildsym.c (free_pendings): Remove.
4932         (add_symbol_to_list, scoped_free_pendings)
4933         (finish_block_internal, buildsym_init): Update.
4934
4935 2018-07-20  Tom Tromey  <tom@tromey.com>
4936
4937         * xcoffread.c (read_xcoff_symtab): Update.
4938         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4939         Update.
4940         * dbxread.c (process_one_symbol): Update.
4941         * coffread.c (coff_symtab_read): Update.
4942         * buildsym.h (finish_block): Update.
4943         * buildsym.c (finish_block): Remove "listhead" argument.
4944         (end_symtab_get_static_block): Update.
4945
4946 2018-07-20  Tom Tromey  <tom@tromey.com>
4947
4948         * buildsym.h (class scoped_free_pendings): Remove constructor.
4949         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4950         method.
4951         <m_pending_block_obstack, m_pending_blocks>: New members.
4952         (pending_block_obstack, pending_blocks): Remove.
4953         (scoped_free_pendings::scoped_free_pendings): Default.
4954         (~scoped_free_pendings): Update.
4955         (free_pending_blocks): Remove.
4956         (finish_block_internal, record_pending_block, make_blockvector)
4957         (end_symtab_get_static_block, augment_type_symtab, push_context)
4958         (buildsym_init): Update.
4959
4960 2018-07-20  Tom Tromey  <tom@tromey.com>
4961
4962         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4963         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4964         members.
4965         (pending_addrmap, pending_addrmap_obstack)
4966         (pending_addrmap_interesting): Remove.
4967         (scoped_free_pendings, record_block_range, make_blockvector)
4968         (prepare_for_building, reset_symtab_globals, buildsym_init):
4969         Update.
4970
4971 2018-07-20  Tom Tromey  <tom@tromey.com>
4972
4973         * xcoffread.c (process_linenos): Update.
4974         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4975         * mdebugread.c (psymtab_to_symtab_1): Update.
4976         * dwarf2read.c (setup_type_unit_groups)
4977         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4978         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4979         * dbxread.c (process_one_symbol): Update.
4980         * coffread.c (coff_symtab_read, enter_linenos)
4981         (process_coff_symbol): Update.
4982         * buildsym.h (current_subfile): Don't declare.
4983         (get_current_subfile): Declare.
4984         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4985         member.
4986         (start_subfile, free_buildsym_compunit, push_subfile)
4987         (prepare_for_building, start_symtab): Update.
4988         (get_current_subfile): New function.
4989
4990 2018-07-20  Tom Tromey  <tom@tromey.com>
4991
4992         * coffread.c (coff_symtab_read): Update.
4993         * xcoffread.c (read_xcoff_symtab): Update.
4994         * dwarf2read.c (new_symbol): Update.
4995         (read_func_scope, read_lexical_block_scope): Update.
4996         * dbxread.c (process_one_symbol): Update.
4997         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4998         (outermost_context_p): Remove macro.
4999         (outermost_context_p, get_current_context_stack)
5000         (get_context_stack_depth): Declare.
5001         (pop_context): Return struct context_stack.
5002         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5003         member.
5004         (context_stack_size): Remove.
5005         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5006         (prepare_for_building, end_symtab_get_static_block)
5007         (augment_type_symtab, push_context): Update.
5008         (pop_context): Return struct context_stack.
5009         (outermost_context_p, get_current_context_stack)
5010         (get_context_stack_depth): New functions.
5011         (buildsym_init): Update.
5012
5013 2018-07-20  Tom Tromey  <tom@tromey.com>
5014
5015         * rust-exp.y: Now a pure parser.  Update all rules.
5016         (%union): Move earlier.
5017         (current_parser, work_obstack): Remove globals.
5018         (rust_parser, ~rust_parser): Update.
5019         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5020         lex_character, lex_number, lex_string, lex_identifier,
5021         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5022         convert_name, convert_params_to_expression,
5023         convert_ast_to_expression, ast_basic_type, ast_operation,
5024         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5025         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5026         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5027         ast_array_type, ast_slice_type, ast_reference_type,
5028         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5029         (rust_parse): Update.
5030         (rustyyerror, rustyylex): Add parser parameter.
5031         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5032         (rust_lex_stringish_test, rust_lex_test_sequence)
5033         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5034         (rust_lex_test_push_back, rust_lex_tests): Update.
5035
5036 2018-07-19  Pedro Alves  <palves@redhat.com>
5037
5038         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
5039         gdb::unique_xmalloc_ptr.
5040         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
5041         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
5042         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
5043         copy-initialization.
5044         * guile/scm-pretty-print.c (ppscm_print_children): Use
5045         gdb::unique_xmalloc_ptr instead of cleanups.
5046         (gdbscm_apply_val_pretty_printer): Remove cleanups.
5047         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
5048         gdb::unique_xmalloc_ptr.
5049         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5050         Adjust to use gdb::unique_xmalloc_ptr.
5051         * guile/scm-utils.c (extract_arg): Adjust.
5052         * guile/scm-value.c (gdbscm_value_field): Adjust to use
5053         gdb::unique_xmalloc_ptr instead of a cleanup.
5054
5055 2018-07-19  Tom Tromey  <tom@tromey.com>
5056
5057         * utils.c (do_value_free_to_mark)
5058         (make_cleanup_value_free_to_mark): Remove.
5059         * utils.h (make_cleanup_value_free_to_mark): Remove.
5060
5061 2018-07-19  Pedro Alves  <palves@redhat.com>
5062
5063         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
5064         forwarding reference.
5065
5066 2018-07-18  Pedro Alves  <palves@redhat.com>
5067
5068         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
5069         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
5070         cleanup.
5071
5072 2018-07-18  Pedro Alves  <palves@redhat.com>
5073
5074         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
5075         exceptions.
5076         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
5077         (gdbscm_wrap): New.
5078         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
5079         directly instead of a cleanup.
5080         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
5081         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5082         (vlscm_binop_gdbthrow): New, factored out from ...
5083         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5084         (vlscm_rich_compare): Use gdbscm_wrap.
5085         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5086         instead of a cleanup.
5087         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5088         cleanup.
5089         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5090         Use xfree directly instead of a cleanup.
5091         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5092         Adjust to use gdbscm_wrap and scoped_value_mark.
5093         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5094         (gdbscm_value_address, gdbscm_value_dereference)
5095         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5096         scoped_value_mark.
5097         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5098         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5099         scoped_value_mark.
5100         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5101         gdbscm_wrap and scoped_value_mark.
5102         (gdbscm_value_to_string): Use xfree directly instead of a
5103         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5104         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5105         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5106         scoped_value_mark.
5107         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5108         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5109         scoped_value_mark.
5110         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5111         gdbscm_wrap.
5112
5113 2018-07-18  Tom de Vries  <tdevries@suse.de>
5114
5115         * findvar.c (default_read_var_value): Also resolve dynamic type for
5116         LOC_OPTIMIZED_OUT vars.
5117
5118 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5119
5120         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5121         decoding.
5122
5123 2018-07-17  Tom Tromey  <tom@tromey.com>
5124
5125         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5126         (compute_enum_list, pascm_set_param_value_x)
5127         (gdbscm_parameter_value): Update.
5128         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5129         (gdbscm_scm_to_host_string): Update.
5130         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5131         Update.
5132         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5133         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5134         * guile/scm-string.c (gdbscm_scm_to_string): Return
5135         unique_xmalloc_ptr.
5136         (gdbscm_scm_to_host_string): Likewise.
5137
5138 2018-07-17  Tom Tromey  <tom@tromey.com>
5139
5140         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5141         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5142         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5143         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5144         unique_xmalloc_ptr.
5145
5146 2018-07-17  Tom Tromey  <tom@tromey.com>
5147
5148         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5149         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5150         Update.
5151         * guile/scm-cmd.c (cmdscm_function): Update.
5152         * guile/scm-pretty-print.c
5153         (ppscm_print_exception_unless_memory_error): Update.
5154         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5155         Return unique_xmalloc_ptr.
5156
5157 2018-07-17  Tom Tromey  <tom@tromey.com>
5158
5159         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5160         Use string_printf.
5161
5162 2018-07-17  Jim Wilson  <jimw@sifive.com>
5163
5164         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5165         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5166         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5167         unecessary braces after EF_RISCV_RVC test.  Delete call to
5168         set_gdbarch_decr_pc_after_break.
5169
5170         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5171         RISCV_LAST_FP_REGNUM + 1.
5172         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5173
5174 2018-07-17  Tom Tromey  <tom@tromey.com>
5175
5176         * configure.ac: Remove --disable-gdbcli.
5177         * configure: Rebuild.
5178         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5179         (SUBDIR_CLI_CFLAGS): Remove.
5180         (SFILES): Use SUBDIR_CLI_SRCS.
5181         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5182
5183 2018-07-17  Tom Tromey  <tom@tromey.com>
5184
5185         PR gdb/18624:
5186         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5187
5188 2018-07-16  Jim Wilson  <jimw@sifive.com>
5189
5190         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5191
5192 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5193
5194         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5195         variable.
5196         (libunwind_frame_sniffer): Likewise.
5197         (libunwind_frame_prev_register): Likewise.
5198         (libunwind_sigtramp_frame_sniffer): Likewise.
5199         * ia64-tdep.c (ia64_access_reg): Likewise.
5200         (ia64_access_rse_reg): Likewise.
5201         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5202         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5203
5204 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5205
5206         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5207
5208 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5209
5210         * remote-sim.c (gdbsim_target::close,
5211         gdbsim_target::mourn_inferior): Remove unused variables.
5212
5213 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5214
5215         * ia64-tdep.c (ktab_buf): New global.
5216         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5217         (get_kernel_table): Adjust.
5218
5219 2018-07-16  Tom Tromey  <tom@tromey.com>
5220
5221         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5222         * dwarf2read.c (using_directives, new_symbol): Use
5223         outermost_context_p.
5224         * dbxread.c (process_one_symbol): Use outermost_context_p.
5225         * coffread.c (coff_symtab_read): Use outermost_context_p.
5226
5227 2018-07-16  Tom Tromey  <tom@tromey.com>
5228
5229         * dwarf2read.c (using_directives, read_func_scope)
5230         (read_lexical_block_scope): Update.
5231         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5232         * buildsym.h (local_using_directives, global_using_directives):
5233         Don't declare.
5234         (get_local_using_directives, set_local_using_directives)
5235         (get_global_using_directives): Declare.
5236         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5237         m_global_using_directives>: New members.
5238         (finish_block_internal, prepare_for_building)
5239         (reset_symtab_globals, end_symtab_get_static_block)
5240         (push_context): Update.
5241         (get_local_using_directives, set_local_using_directives)
5242         (get_global_using_directives): New functions.
5243         (buildsym_init): Update.
5244
5245 2018-07-16  Tom Tromey  <tom@tromey.com>
5246
5247         * xcoffread.c (xcoff_initial_scan): Don't call
5248         free_pending_blocks.
5249         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5250         * buildsym.h (class scoped_free_pendings): Add constructor.
5251         (free_pending_blocks): Don't declare.
5252         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5253         (free_pending_blocks): Now static.
5254
5255 2018-07-16  Tom Tromey  <tom@tromey.com>
5256
5257         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5258         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5259         member.
5260         (struct subfile_stack): Remove.
5261         (subfile_stack): Remove.
5262         (push_subfile, pop_subfile, buildsym_init): Update.
5263
5264 2018-07-16  Tom Tromey  <tom@tromey.com>
5265
5266         * buildsym.c (push_subfile): Use gdb_assert.
5267         (pop_subfile): Use gdb_assert.
5268
5269 2018-07-16  Tom Tromey  <tom@tromey.com>
5270
5271         * buildsym.h (merge_symbol_lists): Remove.
5272         * buildsym.c (merge_symbol_lists): Remove.
5273
5274 2018-07-16  Tom Tromey  <tom@tromey.com>
5275
5276         * stabsread.c (scan_file_globals): Update comment.
5277         * stabsread.h (scan_file_globals): Move from buildsym.h.
5278         * buildsym.h (scan_file_globals): Move to stabsread.h.
5279
5280 2018-07-16  Tom Tromey  <tom@tromey.com>
5281
5282         * xcoffread.c (xcoff_new_init): Update.
5283         * mipsread.c (mipscoff_new_init): Update.
5284         * mdebugread.c (mdebug_build_psymtabs): Update.
5285         * elfread.c (elf_new_init): Update.
5286         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5287         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5288         * buildsym.h (buildsym_new_init): Don't declare.
5289         * buildsym.c (buildsym_new_init): Remove.
5290
5291 2018-07-16  Tom Tromey  <tom@tromey.com>
5292
5293         * stabsread.h (within_function): Move from buildsym.h.
5294         * stabsread.c (start_stabs): Clear within_function.
5295         * coffread.c (coff_start_symtab): Clear within_function.
5296         * buildsym.h (within_function): Move to stabsread.h.
5297         * buildsym.c (prepare_for_building): Update.
5298
5299 2018-07-16  Tom Tromey  <tom@tromey.com>
5300
5301         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5302         * dwarf2read.c (dwarf2_start_symtab): Don't set
5303         processing_gcc_compilation.
5304         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5305
5306 2018-07-16  Tom Tromey  <tom@tromey.com>
5307
5308         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5309         (next_symbol_text_func): Move from buildsym.h.
5310         * stabsread.c (hashname): Move from buildsym.c.
5311         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5312         (next_symbol_text_func, hashname): Move to stabsread.h.
5313         * buildsym.c: Don't include bcache.h
5314         (hashname): Move to stasbread.c.
5315
5316 2018-07-16  Tom Tromey  <tom@tromey.com>
5317
5318         * buildsym.h (context_stack_size): Don't declare.
5319         * buildsym.c (context_stack_size): New global.
5320
5321 2018-07-16  Tom Tromey  <tom@tromey.com>
5322
5323         * dbxread.c (processing_acc_compilation): New global.
5324         * buildsym.h (processing_acc_compilation): Don't declare.
5325
5326 2018-07-16  Tom Tromey  <tom@tromey.com>
5327
5328         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5329         * dbxread.c (read_ofile_symtab): Update.
5330         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5331         * buildsym.h (last_source_start_addr): Remove.
5332         (set_last_source_start_addr, get_last_source_start_addr):
5333         Declare.
5334         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5335         parameter.
5336         (struct buildsym_compunit) <m_last_source_start_addr>: New
5337         member.
5338         (prepare_for_building): Remove start_addr parameter.
5339         (start_symtab, restart_symtab, end_symtab_get_static_block)
5340         (end_symtab_with_blockvector): Update.
5341         (set_last_source_start_addr, get_last_source_start_addr): New
5342         functions.
5343
5344 2018-07-16  Tom Tromey  <tom@tromey.com>
5345
5346         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5347         member.
5348         (have_line_numbers): Remove.
5349         (record_line, prepare_for_building, end_symtab_get_static_block)
5350         (augment_type_symtab): Update.
5351
5352 2018-07-16  Tom Tromey  <tom@tromey.com>
5353
5354         * buildsym.c (~buildsym_compunit): Free the macro table.
5355         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5356         methods.
5357         <m_pending_macros>: New member.
5358         (pending_macros): Remove.
5359         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5360         (reset_symtab_globals, end_symtab_get_static_block)
5361         (end_symtab_with_blockvector, augment_type_symtab)
5362         (buildsym_init): Update.
5363
5364 2018-07-16  Tom Tromey  <tom@tromey.com>
5365
5366         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5367         parameter.
5368         (buildsym_compunit::set_last_source_file): New method.
5369         <m_last_source_file>: New member.
5370         (prepare_for_building): Remove "name" parameter.
5371         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5372         (last_source_file): Remove.
5373         (set_last_source_file, get_last_source_file): Update.
5374
5375 2018-07-16  Tom Tromey  <tom@tromey.com>
5376
5377         * buildsym.c (prepare_for_building): Add assert.
5378
5379 2018-07-16  Tom Tromey  <tom@tromey.com>
5380
5381         * buildsym.c (~buildsym_compunit): Update.
5382         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5383         (start_subfile, patch_subfile_names)
5384         (end_symtab_with_blockvector): Update.
5385
5386 2018-07-16  Tom Tromey  <tom@tromey.com>
5387
5388         * buildsym.c (struct buildsym_compunit): Add constructor,
5389         destructor, initializers.
5390         (start_buildsym_compunit): Remove.
5391         (free_buildsym_compunit): Use "delete".
5392         (start_symtab, restart_symtab): Use "new".
5393
5394 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5395
5396         * symfile.c (set_objfile_default_section_offset): Remove struct
5397         keyword.
5398
5399 2018-07-14  Stafford Horne  <shorne@gmail.com>
5400
5401         * (Responsible Maintainers): Add myself as or1k maintainer.
5402
5403 2018-07-13  Tom Tromey  <tom@tromey.com>
5404
5405         * symfile.c (set_objfile_default_section_offset): Use extra braces
5406         around initializer.
5407
5408 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5409
5410         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5411         non-branching basr.
5412
5413 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5414
5415         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5416         unittests/cli-utils-selftests.c
5417         * unittests/cli-utils-selftests.c: New file.
5418
5419 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5420
5421         * NEWS: Mention new commands. Mention change to 'thread apply'.
5422
5423 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5424
5425         * thread.c (thr_try_catch_cmd): New function.
5426         (thread_apply_all_command): Handle qcs flags.
5427         (thread_apply_command): Handle qcs flags.
5428         (taas_command): New function.
5429         (tfaas_command): New function.
5430         (_initialize_thread): Update to setup the new commands 'taas
5431         and 'tfaas'. Change doc string for 'thread apply'.
5432
5433 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5434
5435         * stack.c: (trailing_outermost_frame): New function, mostly
5436         extracted from backtrace_command_1.
5437         (leading_innermost_frame): New function.
5438         (backtrace_command_1): Update to call trailing_outermost_frame.
5439         (frame_apply_command_count): New function.
5440         (frame_apply_level_command): New function.
5441         (frame_apply_all_command): New function.
5442         (frame_apply_command): New function.
5443         (faas_command): New function.
5444         (frame_cmd_list): New variable.
5445         (_initialize_stack): Update to setup the new commands 'frame apply'
5446         and 'faas'.
5447
5448 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5449
5450         * cli-utils.c (number_or_range_parser::get_number): Only handle
5451         numbers or convenience var as numbers.
5452         (parse_flags): New function.
5453         (parse_flags_qcs): New function.
5454         (number_or_range_parser::finished): Ensure parsing end is detected
5455         before end of string.
5456         * cli-utils.h (parse_flags): New function.
5457         (parse_flags_qcs): New function.
5458         (number_or_range_parser): Remove m_finished bool.
5459         (number_or_range_parser::skip_range): Set m_in_range to false.
5460
5461 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5462
5463         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5464         on Windows.
5465
5466 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5467             Jan Kratochvil  <jan.kratochvil@redhat.com>
5468             Paul Fertser  <fercerpav@gmail.com>
5469             Tsutomu Seki  <sekiriki@gmail.com>
5470             Pedro Alves  <palves@redhat.com>
5471
5472         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5473         'unittests/parse-connection-spec-selftests.c'.
5474         (COMMON_SFILES): Add 'common/netstuff.c'.
5475         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5476         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5477         * common/netstuff.c: New file.
5478         * common/netstuff.h: New file.
5479         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5480         (wait_for_connect): Update comment.  New parameter
5481         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5482         Use 'sock' directly instead of 'scb->fd'.
5483         (try_connect): New function, with code from 'net_open'.
5484         (net_open): Rewrite main loop to deal with multiple
5485         sockets/addresses.  Handle IPv6-style hostnames; implement
5486         support for IPv6 connections.
5487         * unittests/parse-connection-spec-selftests.c: New file.
5488
5489 2018-07-11  Pedro Alves  <palves@redhat.com>
5490
5491         PR gdb/23377
5492         * remote.c (remote_target::remote_detach_pid): Call
5493         set_current_process.
5494
5495 2018-07-11  Pedro Alves  <palves@redhat.com>
5496
5497         * h8300-tdep.c (h8300_gdbarch_init): Remove
5498         set_gdbarch_ecoff_reg_to_regnum calls.
5499
5500 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5501
5502         PR c++/23373
5503         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5504         offsets/sizes for static members of a class/struct.
5505
5506 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5507
5508         * target-descriptions.c (tdesc_register_bitsize): Rename.
5509         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5510         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5511         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5512
5513 2018-07-10  Tom Tromey  <tom@tromey.com>
5514
5515         * breakpoint.c (moribund_locations): Now static and a
5516         std::vector.
5517         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5518         (build_bpstat_chain, update_global_location_list)
5519         (breakpoint_retire_moribund): Update.
5520         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5521         VEC.
5522
5523 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5524
5525         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5526         (riscv_register_reggroup_p): Use new function, remove unneeded
5527         parenthesis.
5528         (riscv_push_dummy_call): Extend assert to compare against xlen or
5529         flen based on register type.
5530
5531 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5532
5533         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5534
5535 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5536
5537         * remote.c (show_hardware_watchpoint_limit): New function.
5538         (show_hardware_watchpoint_length_limit): New function.
5539         (show_hardware_breakpoint_limit): New function.
5540         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5541         where appropriate, update help text.
5542
5543 2018-07-09  Tom Tromey  <tom@tromey.com>
5544
5545         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5546         (CLIBS): Don't mention NAT_CLIBS.
5547
5548 2018-07-09  Tom Tromey  <tom@tromey.com>
5549
5550         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5551         (LIBGDB_OBS, clean mostlyclean): Update.
5552         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5553
5554 2018-07-09  Tom Tromey  <tom@tromey.com>
5555
5556         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5557         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5558         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5559
5560 2018-07-09  Tom Tromey  <tom@tromey.com>
5561
5562         * Makefile.in (ALLDEPFILES): Remove exec.c.
5563         (COMMON_OBS): Remove exec.o.
5564         (COMMON_SFILES): Add exec.c.
5565
5566 2018-07-09  Tom Tromey  <tom@tromey.com>
5567
5568         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5569
5570 2018-07-09  Tom Tromey  <tom@tromey.com>
5571
5572         * Makefile.in (clean mostlyclean): Remove stamp-version.
5573         (version.c): Depend on stamp-version.
5574         (stamp-version): New rule, from version.c rule.
5575
5576 2018-07-09  Tom Tromey  <tom@tromey.com>
5577
5578         * Makefile.in (init.c): Depend on stamp-init.
5579         (stamp-init): New rule, from init.c rule.
5580         (clean mostlyclean): Remove stamp-init.
5581
5582 2018-07-09  Tom Tromey  <tom@tromey.com>
5583
5584         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5585         SUBDIR_GCC_COMPILE_SRCS.
5586
5587 2018-07-09  Tom Tromey  <tom@tromey.com>
5588
5589         * Makefile.in (init.c): Remove some unused sed rules.
5590
5591 2018-07-09  Tom Tromey  <tom@tromey.com>
5592
5593         * Makefile.in (TSOBS): Remove.
5594         (INIT_FILES): Update.
5595         (LIBGDB_OBS): Update.
5596         (COMMON_SFILES): Add inflow.c.
5597         (SFILES): Remove inflow.c.
5598
5599 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5600
5601         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5602
5603 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5604
5605         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5606         get_saveloc_name, is_signal_frame_name, step_name,
5607         init_remote_name, create_addr_space_name,
5608         destroy_addr_space_name, search_unwind_table_name,
5609         find_dyn_list_name): Constify.
5610
5611 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5612
5613         * darwin-nat.c (darwin_pthread_kill): New function.
5614         (darwin_resume_thread): Use darwin_pthread_kill.
5615
5616 2018-07-05  Tom de Vries  <tdevries@suse.de>
5617
5618         * macroexp.c (macro_buffer) <operator=>: New member function.
5619
5620 2018-07-04  Tom Tromey  <tom@tromey.com>
5621
5622         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5623
5624 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5625
5626         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5627         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5628         * maint.c: Likewise.
5629         * top.c: Likewise.
5630
5631 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5632
5633         * NEWS: Create a new section for the next release branch.
5634         Rename the section of the current branch, now that it has
5635         been cut.
5636
5637 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5638
5639         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5640         * version.in: Bump version to 8.2.50.DATE-git.
5641
5642 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5643             Pedro Alves  <palves@redhat.com>
5644
5645         * linux-nat.c (linux_init_ptrace): Rename to ...
5646         (linux_init_ptrace_procfs): ... this.  Call
5647         linux_proc_init_warnings.
5648         (linux_nat_target::post_attach)
5649         (linux_nat_target::post_startup_inferior): Adjust.
5650         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5651         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5652
5653 2018-07-04  Tom de Vries  <tdevries@suse.de>
5654
5655         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5656         check ...
5657         (read_comp_unit_head): ... here.
5658
5659 2018-07-03  Tom Tromey  <tom@tromey.com>
5660
5661         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5662         (stop_tracing, tstatus_command)
5663         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5664         (print_one_static_tracepoint_marker): Update.
5665         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5666         std::vector.
5667         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5668         VEC.
5669         (all_tracepoints, static_tracepoints_here): Return std::vector.
5670
5671 2018-07-03  Tom Tromey  <tom@tromey.com>
5672
5673         * common/ptid.c (ptid_equal): Remove.
5674         * common/ptid.h (ptid_equal): Don't declare.
5675         * ada-tasks.c: Update.
5676         * breakpoint.c: Update.
5677         * common/agent.c: Update.
5678         * corelow.c: Update.
5679         * darwin-nat-info.c: Update.
5680         * darwin-nat.c: Update.
5681         * dcache.c: Update.
5682         * dtrace-probe.c: Update.
5683         * dummy-frame.c: Update.
5684         * fbsd-nat.c: Update.
5685         * frame.c: Update.
5686         * gdbthread.h: Update.
5687         * gnu-nat.c: Update.
5688         * go32-nat.c: Update.
5689         * inf-loop.c: Update.
5690         * inf-ptrace.c: Update.
5691         * infcall.c: Update.
5692         * infcmd.c: Update.
5693         * inflow.c: Update.
5694         * infrun.c: Update.
5695         * linux-fork.c: Update.
5696         * linux-nat.c: Update.
5697         * linux-thread-db.c: Update.
5698         * mi/mi-cmd-var.c: Update.
5699         * mi/mi-interp.c: Update.
5700         * mi/mi-main.c: Update.
5701         * nto-procfs.c: Update.
5702         * ppc-linux-tdep.c: Update.
5703         * procfs.c: Update.
5704         * python/py-inferior.c: Update.
5705         * python/py-record-btrace.c: Update.
5706         * python/py-record.c: Update.
5707         * ravenscar-thread.c: Update.
5708         * regcache.c: Update.
5709         * remote-sim.c: Update.
5710         * remote.c: Update.
5711         * sol-thread.c: Update.
5712         * solib.c: Update.
5713         * target.c: Update.
5714         * tui/tui-stack.c: Update.
5715         * varobj.c: Update.
5716         * windows-nat.c: Update.
5717         * windows-tdep.c: Update.
5718
5719 2018-07-03  Tom Tromey  <tom@tromey.com>
5720
5721         * common/ptid.c (ptid_match): Remove.
5722         * common/ptid.h (ptid_match): Don't declare.
5723         * fbsd-nat.c: Update.
5724         * infcmd.c: Update.
5725         * infrun.c: Update.
5726         * linux-nat.c: Update.
5727         * record-btrace.c: Update.
5728         * regcache.c: Update.
5729         * remote.c: Update.
5730
5731 2018-07-03  Tom Tromey  <tom@tromey.com>
5732
5733         * common/ptid.c (ptid_tid_p): Remove.
5734         * common/ptid.h (ptid_tid_p): Don't declare.
5735         * sol-thread.c: Update.
5736
5737 2018-07-03  Tom Tromey  <tom@tromey.com>
5738
5739         * common/ptid.c (ptid_lwp_p): Remove.
5740         * common/ptid.h (ptid_lwp_p): Don't declare.
5741         * fbsd-nat.c: Update.
5742         * linux-nat.c: Update.
5743         * nat/linux-procfs.c: Update.
5744         * nat/x86-linux-dregs.c: Update.
5745         * sol-thread.c: Update.
5746
5747 2018-07-03  Tom Tromey  <tom@tromey.com>
5748
5749         * common/ptid.c (ptid_is_pid): Remove.
5750         * common/ptid.h (ptid_is_pid): Don't declare.
5751         * infrun.c: Update.
5752         * linux-nat.c: Update.
5753         * mi/mi-interp.c: Update.
5754         * remote.c: Update.
5755         * thread.c: Update.
5756
5757 2018-07-03  Tom Tromey  <tom@tromey.com>
5758
5759         * common/ptid.c (ptid_get_tid): Remove.
5760         * common/ptid.h (ptid_get_tid): Don't declare.
5761         * ada-tasks.c: Update.
5762         * aix-thread.c: Update.
5763         * bsd-uthread.c: Update.
5764         * darwin-nat.c: Update.
5765         * fbsd-nat.c: Update.
5766         * i386-darwin-nat.c: Update.
5767         * infrun.c: Update.
5768         * linux-tdep.c: Update.
5769         * nto-procfs.c: Update.
5770         * ppc-ravenscar-thread.c: Update.
5771         * python/py-infthread.c: Update.
5772         * ravenscar-thread.c: Update.
5773         * sol-thread.c: Update.
5774         * sparc-ravenscar-thread.c: Update.
5775         * windows-nat.c: Update.
5776
5777 2018-07-03  Tom Tromey  <tom@tromey.com>
5778
5779         * common/ptid.c (ptid_get_lwp): Remove.
5780         * common/ptid.h (ptid_get_lwp): Don't declare.
5781         * aarch64-linux-nat.c: Update.
5782         * ada-tasks.c: Update.
5783         * aix-thread.c: Update.
5784         * amd64-linux-nat.c: Update.
5785         * arm-linux-nat.c: Update.
5786         * corelow.c: Update.
5787         * fbsd-nat.c: Update.
5788         * fbsd-tdep.c: Update.
5789         * gnu-nat.c: Update.
5790         * i386-cygwin-tdep.c: Update.
5791         * i386-gnu-nat.c: Update.
5792         * i386-linux-nat.c: Update.
5793         * ia64-linux-nat.c: Update.
5794         * inf-ptrace.c: Update.
5795         * infrun.c: Update.
5796         * linux-fork.c: Update.
5797         * linux-nat.c: Update.
5798         * linux-tdep.c: Update.
5799         * linux-thread-db.c: Update.
5800         * mips-linux-nat.c: Update.
5801         * nat/aarch64-linux-hw-point.c: Update.
5802         * nat/aarch64-linux.c: Update.
5803         * nat/linux-btrace.c: Update.
5804         * nat/linux-osdata.c: Update.
5805         * nat/linux-procfs.c: Update.
5806         * nat/x86-linux-dregs.c: Update.
5807         * obsd-nat.c: Update.
5808         * ppc-fbsd-nat.c: Update.
5809         * ppc-linux-nat.c: Update.
5810         * procfs.c: Update.
5811         * python/py-infthread.c: Update.
5812         * ravenscar-thread.c: Update.
5813         * remote.c: Update.
5814         * s390-linux-nat.c: Update.
5815         * sol-thread.c: Update.
5816         * sol2-tdep.c: Update.
5817         * spu-linux-nat.c: Update.
5818         * x86-linux-nat.c: Update.
5819         * xtensa-linux-nat.c: Update.
5820
5821 2018-07-03  Tom Tromey  <tom@tromey.com>
5822
5823         * common/ptid.c (ptid_get_pid): Remove.
5824         * common/ptid.h (ptid_get_pid): Don't declare.
5825         * aarch64-linux-nat.c: Update.
5826         * ada-lang.c: Update.
5827         * aix-thread.c: Update.
5828         * alpha-bsd-nat.c: Update.
5829         * amd64-fbsd-nat.c: Update.
5830         * amd64-linux-nat.c: Update.
5831         * arm-linux-nat.c: Update.
5832         * arm-nbsd-nat.c: Update.
5833         * auxv.c: Update.
5834         * break-catch-syscall.c: Update.
5835         * breakpoint.c: Update.
5836         * bsd-uthread.c: Update.
5837         * corelow.c: Update.
5838         * ctf.c: Update.
5839         * darwin-nat.c: Update.
5840         * fbsd-nat.c: Update.
5841         * fbsd-tdep.c: Update.
5842         * gcore.c: Update.
5843         * gnu-nat.c: Update.
5844         * hppa-nbsd-nat.c: Update.
5845         * hppa-obsd-nat.c: Update.
5846         * i386-fbsd-nat.c: Update.
5847         * ia64-linux-nat.c: Update.
5848         * inf-ptrace.c: Update.
5849         * infcmd.c: Update.
5850         * inferior.c: Update.
5851         * inferior.h: Update.
5852         * inflow.c: Update.
5853         * infrun.c: Update.
5854         * linux-fork.c: Update.
5855         * linux-nat.c: Update.
5856         * linux-tdep.c: Update.
5857         * linux-thread-db.c: Update.
5858         * m68k-bsd-nat.c: Update.
5859         * mi/mi-interp.c: Update.
5860         * mi/mi-main.c: Update.
5861         * mips-linux-nat.c: Update.
5862         * mips-nbsd-nat.c: Update.
5863         * mips64-obsd-nat.c: Update.
5864         * nat/aarch64-linux-hw-point.c: Update.
5865         * nat/aarch64-linux.c: Update.
5866         * nat/linux-btrace.c: Update.
5867         * nat/linux-osdata.c: Update.
5868         * nat/linux-procfs.c: Update.
5869         * nat/x86-linux-dregs.c: Update.
5870         * nto-procfs.c: Update.
5871         * obsd-nat.c: Update.
5872         * ppc-linux-nat.c: Update.
5873         * ppc-nbsd-nat.c: Update.
5874         * ppc-obsd-nat.c: Update.
5875         * proc-service.c: Update.
5876         * procfs.c: Update.
5877         * python/py-inferior.c: Update.
5878         * python/py-infthread.c: Update.
5879         * ravenscar-thread.c: Update.
5880         * record.c: Update.
5881         * remote-sim.c: Update.
5882         * remote.c: Update.
5883         * rs6000-nat.c: Update.
5884         * s390-linux-nat.c: Update.
5885         * sh-nbsd-nat.c: Update.
5886         * sol-thread.c: Update.
5887         * sparc-nat.c: Update.
5888         * sparc64-tdep.c: Update.
5889         * spu-linux-nat.c: Update.
5890         * spu-tdep.c: Update.
5891         * target-debug.h: Update.
5892         * target.c: Update.
5893         * thread.c: Update.
5894         * tid-parse.c: Update.
5895         * tracefile-tfile.c: Update.
5896         * vax-bsd-nat.c: Update.
5897         * windows-nat.c: Update.
5898         * x86-linux-nat.c: Update.
5899         * x86-nat.c: Update.
5900
5901 2018-07-03  Tom Tromey  <tom@tromey.com>
5902
5903         * common/ptid.c (pid_to_ptid): Remove.
5904         * common/ptid.h (pid_to_ptid): Don't declare.
5905         * aix-thread.c: Update.
5906         * arm-linux-nat.c: Update.
5907         * common/ptid.c: Update.
5908         * common/ptid.h: Update.
5909         * corelow.c: Update.
5910         * ctf.c: Update.
5911         * darwin-nat.c: Update.
5912         * fbsd-nat.c: Update.
5913         * fork-child.c: Update.
5914         * gnu-nat.c: Update.
5915         * go32-nat.c: Update.
5916         * inf-ptrace.c: Update.
5917         * infcmd.c: Update.
5918         * inferior.c: Update.
5919         * infrun.c: Update.
5920         * linux-fork.c: Update.
5921         * linux-nat.c: Update.
5922         * nat/aarch64-linux-hw-point.c: Update.
5923         * nat/fork-inferior.c: Update.
5924         * nat/x86-linux-dregs.c: Update.
5925         * nto-procfs.c: Update.
5926         * obsd-nat.c: Update.
5927         * procfs.c: Update.
5928         * progspace.c: Update.
5929         * remote.c: Update.
5930         * rs6000-nat.c: Update.
5931         * s390-linux-nat.c: Update.
5932         * sol-thread.c: Update.
5933         * spu-linux-nat.c: Update.
5934         * target.c: Update.
5935         * top.c: Update.
5936         * tracefile-tfile.c: Update.
5937         * windows-nat.c: Update.
5938
5939 2018-07-03  Tom Tromey  <tom@tromey.com>
5940
5941         * common/ptid.h (ptid_build): Don't declare.
5942         * common/ptid.c (ptid_build): Remove.
5943         * aix-thread.c: Update.
5944         * bsd-kvm.c: Update.
5945         * bsd-uthread.c: Update.
5946         * common/agent.c: Update.
5947         * common/ptid.c: Update.
5948         * common/ptid.h: Update.
5949         * corelow.c: Update.
5950         * darwin-nat.c: Update.
5951         * fbsd-nat.c: Update.
5952         * gnu-nat.c: Update.
5953         * linux-fork.c: Update.
5954         * linux-nat.c: Update.
5955         * linux-thread-db.c: Update.
5956         * nat/linux-osdata.c: Update.
5957         * nat/linux-procfs.c: Update.
5958         * nto-procfs.c: Update.
5959         * obsd-nat.c: Update.
5960         * proc-service.c: Update.
5961         * procfs.c: Update.
5962         * ravenscar-thread.c: Update.
5963         * remote-sim.c: Update.
5964         * remote.c: Update.
5965         * sol-thread.c: Update.
5966         * target.c: Update.
5967         * windows-nat.c: Update.
5968
5969 2018-07-03  Tom Tromey  <tom@tromey.com>
5970
5971         * infrun.c (follow_exec): Use exit_inferior_silent.
5972         * inferior.c (exit_inferior_num_silent): Remove.
5973         * inferior.h (exit_inferior_num_silent): Don't declare.
5974
5975 2018-07-03  Tom Tromey  <tom@tromey.com>
5976
5977         PR cli/23340:
5978         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5979         inferior_ptid on error.
5980
5981 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5982             Simon Marchi  <simon.marchi@polymtl.ca>
5983
5984         PR tdep/8282
5985         * disasm.h (gdb_disassembler): Add
5986         `m_disassembler_options_holder'. member
5987         * disasm.c (get_all_disassembler_options): New function.
5988         (gdb_disassembler::gdb_disassembler): Use it.
5989         (gdb_buffered_insn_length_init_dis): Likewise.
5990         (gdb_buffered_insn_length): Adjust accordingly.
5991         (set_disassembler_options): Handle options with arguments.
5992         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5993         line if showing options with descriptions.
5994         (disassembler_options_completer): Adapt to using the
5995         `disasm_options_and_args_t' structure.
5996         * mips-tdep.c (mips_disassembler_options): New variable.
5997         (mips_disassembler_options_o32): Likewise.
5998         (mips_disassembler_options_n32): Likewise.
5999         (mips_disassembler_options_n64): Likewise.
6000         (gdb_print_insn_mips): Don't set `disassembler_options'.
6001         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6002         functions.
6003         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6004         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6005         `gdbarch_disassembler_options_implicit' and
6006         `gdbarch_valid_disassembler_options'.
6007         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6008         `disasm_options_and_args_t' structure.
6009         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6010         method.
6011         (valid_disassembler_options): Switch from `disasm_options_t' to
6012         the `disasm_options_and_args_t' structure.
6013         * NEWS: Document `set disassembler-options' support for the MIPS
6014         target.
6015         * gdbarch.h: Regenerate.
6016         * gdbarch.c: Regenerate.
6017
6018 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6019
6020         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6021
6022 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6023
6024         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6025         parameter in call to amd64_target_description.
6026         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6027         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6028         (amd64fbsd_init_abi): Likewise.
6029         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6030         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6031         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6032         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6033
6034 2018-06-29  Pedro Alves  <palves@redhat.com>
6035
6036         * gdb/amd64-tdep.h (amd64_create_target_description): Add
6037         "segments" parameter.
6038         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
6039         (_initialize_amd64_tdep): Update call to
6040         amd64_create_target_description.
6041         (amd64_target_description): Add "segments" parameter.  Adjust
6042         the implementation to use it.
6043         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
6044         call to amd64_create_target_description.
6045         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
6046         * gdb/arch/amd64.h (amd64_create_target_description): Add
6047         "segments" register.
6048         * gdb/arch/amd64.c (amd64_create_target_description): Add
6049         "segments" parameter.  Call create_feature_i386_64bit_segments
6050         only if SEGMENTS is true.
6051         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
6052         call to amd64_create_target_description.
6053
6054 2018-06-29  Pedro Alves  <palves@redhat.com>
6055
6056         * thread.c (thread_target_id_str): New, factored out from ...
6057         (print_thread_info_1): ... here.  Use it to compute the max
6058         "Target Id" column width.
6059
6060 2018-06-29  Pedro Alves  <palves@redhat.com>
6061
6062         * remote.c (remote_target::extra_thread_info): Delete
6063         'display_buf' and 'n' locals.  from the cache, regardless of
6064         packet mechanims is in use.  Use cache for qThreadExtra and qP
6065         methods too.
6066
6067 2018-06-29  Pedro Alves  <palves@redhat.com>
6068
6069         * blockframe.c (find_pc_sect_containing_function): New function.
6070         * breakpoint.c (print_breakpoint_location): Don't call
6071         find_pc_sect_function.
6072         * linespec.c (create_sals_line_offset): Record the location's
6073         symbol in the sal.
6074         * linespec.c (convert_address_location_to_sals): Fill in sal's
6075         symbol with find_pc_sect_containing_function.
6076         * symtab.c (find_function_start_sal): Rename to ...
6077         (find_function_start_sal_1): ... this.
6078         (find_function_start_sal): Reimplement as wrapper around
6079         find_function_start_sal_1, and use
6080         find_pc_sect_containing_function to fill in the sal's symbol.
6081         (find_function_start_sal(symbol*, bool)): Adjust.
6082         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6083         comments.
6084         (find_pc_sect_containing_function): Declare.
6085
6086 2018-06-29  Pedro Alves  <palves@redhat.com>
6087
6088         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6089         true if the the location has no symbol.
6090
6091 2018-06-28  Tom Tromey  <tom@tromey.com>
6092
6093         * NEWS: Mention --enable-codesign.
6094         * silent-rules.mk (ECHO_SIGN): New variable.
6095         * configure.ac: Add --enable-codesign.
6096         * configure: Rebuild.
6097         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6098         (gdb$(EXEEXT)): Optionally invoke codesign.
6099
6100 2018-06-28  Pedro Alves  <palves@redhat.com>
6101
6102         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6103         comments.
6104         (switch_to_thread_no_regs): Adjust comment.
6105         * infcmd.c (stop_pc): Delete.
6106         (post_create_inferior, info_program_command): Replace references
6107         to stop_pc with references to thread_info->suspend.stop_pc.
6108         * inferior.h (stop_pc): Delete declaration.
6109         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6110         (handle_inferior_event_1, handle_signal_stop)
6111         (process_event_stop_test, keep_going_stepped_thread)
6112         (handle_step_into_function, handle_step_into_function_backward)
6113         (print_stop_location): Replace references to stop_pc with
6114         references to thread_info->suspend.stop_pc.
6115         (struct infcall_suspend_state) <stop_pc>: Delete field.
6116         (save_infcall_suspend_state, restore_infcall_suspend_state):
6117         Remove references to inf_stat->stop_pc.
6118         * linux-fork.c (fork_load_infrun_state): Likewise.
6119         * record-btrace.c (record_btrace_set_replay): Likewise.
6120         * record-full.c (record_full_goto_entry): Likewise.
6121         * remote.c (print_one_stopped_thread): Likewise.
6122         * target.c (target_resume): Extend comment.
6123         * thread.c (set_executing_thread): New.
6124         (set_executing): Use it.
6125         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6126         Remove references to stop_pc.
6127
6128 2018-06-28  Pedro Alves  <palves@redhat.com>
6129
6130         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6131         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6132
6133 2018-06-28  Tom Tromey  <tom@tromey.com>
6134
6135         * coffread.c (coff_symfile_finish): Update.
6136         * xcoffread.c (xcoff_symfile_finish): Update.
6137         * elfread.c (elf_symfile_finish): Update.
6138         * symfile.h (dwarf2_free_objfile): Don't declare.
6139         * dwarf2read.c (_initialize_dwarf2_read): Use
6140         register_objfile_data_with_cleanup.
6141         (dwarf2_free_objfile): Now static.  Change signature.
6142
6143 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6144
6145         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6146         option "-o" to add-symbol-file-load to add an offset to each
6147         section's load address.
6148         * symfile.c (set_objfile_default_section_offset): New function.
6149
6150 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6151
6152         * symfile.c (add_symbol_file_command): Make sure that sections
6153         with the same name are sorted in the same order.
6154
6155 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6156
6157         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6158         require the second argument.  If omitted, load sections at the
6159         addresses specified in the file.
6160
6161 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6162
6163         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6164         (_initialize_symfile): Add option "-o" to symbol-file to add an
6165         offset to each section of the symbol file.
6166
6167 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6168
6169         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6170
6171 2018-06-27  Tom Tromey  <tom@tromey.com>
6172
6173         * stack.c (_initialize_stack): Update "func" help text.
6174
6175 2018-06-27  Tom Tromey  <tom@tromey.com>
6176
6177         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6178         std::vector.
6179         (unwind_infopy_str, pyuw_create_unwind_info)
6180         (unwind_infopy_add_saved_register, pyuw_sniffer)
6181         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6182         Update.
6183         (struct saved_reg): Add constructor.
6184         <value>: Now a gdbpy_ref<>.
6185
6186 2018-06-27  Tom Tromey  <tom@tromey.com>
6187
6188         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6189
6190 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6191
6192         * gdb-gdb.py.in: Format using autopep8.
6193
6194 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6195
6196         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6197         (type_lookup_function): Recognize CORE_ADDR values.
6198
6199 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6200
6201         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6202         print tag_name.
6203
6204 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6205
6206         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6207         <__lt__>: Add.
6208
6209 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6210
6211         * gdb-gdb.py: Move to...
6212         * gdb-gdb.py.in: ... here.
6213         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6214         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6215         dependencies.
6216         (distclean): Remove gdb-gdb.py when cleaning.
6217         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6218         * configure: Re-generate.
6219
6220 2018-06-27  Pedro Alves  <palves@redhat.com>
6221
6222         * proc-service.c (get_ps_regcache): New.
6223         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6224         (ps_lsetfpregs): Use it.
6225
6226 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6227
6228         PR gdb/21695
6229         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6230         (dwarf_decode_lines_1): Adjust.
6231
6232 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6233
6234         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6235         override.
6236         <info_proc>: Likewise.
6237
6238 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6239
6240         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6241         to windows_fetch_one_register, and only handle the case of
6242         fetching one register.  Move the code that reloads the context
6243         and iterates over all registers if R is negative to...
6244         (windows_nat_target::fetch_registers): ... here.
6245         (do_windows_store_inferior_registers): Rename to
6246         windows_store_one_register, and only handle the case of storing
6247         one register.  Move the code that handles the case where r is
6248         negative to...
6249         (windows_nat_target::store_registers) ... here.
6250
6251 2018-06-26  Tom Tromey  <tom@tromey.com>
6252
6253         PR rust/22574:
6254         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6255         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6256         Update.
6257         (rust_internal_print_type): Add podata parameter.
6258         (rust_print_type): Update.
6259
6260 2018-06-26  Tom Tromey  <tom@tromey.com>
6261
6262         * typeprint.h (struct print_offset_data) <update, finish,
6263         maybe_print_hole>: New methods.
6264         <indentation>: New constant.
6265         * typeprint.c (print_offset_data::indentation): Define.
6266         (print_offset_data::maybe_print_hole, print_offset_data::update)
6267         (print_offset_data::finish): Move from c-typeprint.c and rename.
6268         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6269         (print_spaces_filtered_with_print_options): Update.
6270         (c_print_type_union_field_offset, maybe_print_hole)
6271         (c_print_type_struct_field_offset): Move to typeprint.c and
6272         rename.
6273         (c_type_print_base_struct_union): Update.
6274
6275 2018-06-25  Pedro Alves  <palves@redhat.com>
6276
6277         * gdbthread.h (thread_info_ref, delete_thread)
6278         (delete_thread_silent, first_thread_of_inferior)
6279         (any_thread_of_inferior, switch_to_thread)
6280         (enable_thread_stack_temporaries)
6281         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6282         (get_last_thread_stack_temporary)
6283         (value_in_thread_stack_temporaries, can_access_registers_thread):
6284         Spell out "struct thread_info" instead of just "thread_info".
6285         * inferior.h (notice_new_inferior): Likewise.
6286
6287 2018-06-25  Pedro Alves  <palves@redhat.com>
6288
6289         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6290         pass thread_info pointer to delete_thread.
6291         (windows_nat_target::detach): Pass inferior pointer to
6292         detach_inferior.
6293         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6294         delete_thread.
6295         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6296         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6297         and pass a thread_info pointer to delete_thread.
6298         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6299         pass thread_info pointer to delete_thread.
6300         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6301         delete_thread_silent call.
6302         * procfs.c (procfs_target::detach): Pass inferior pointer to
6303         detach_inferior.
6304         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6305         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6306         delete_thread_silent call.
6307         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6308         pass thread_info pointer to delete_thread.
6309         (windows_nat_target::detach): Pass inferior pointer to
6310         delete_inferior.
6311
6312 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6313
6314         * regcache.c (readable_regcache::read_part): Fix asserts.
6315         (reg_buffer::raw_collect_part): New function.
6316         (regcache::write_part): Fix asserts.
6317         (reg_buffer::raw_supply_part): New function.
6318         (regcache::transfer_regset_register): New helper function.
6319         (regcache::transfer_regset): Call new functions.
6320         (regcache_supply_regset): Use gdb_byte*.
6321         (regcache::supply_regset): Likewise.
6322         (regcache_collect_regset): Likewise.
6323         (regcache::collect_regset): Likewise.
6324         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6325         (reg_buffer::raw_supply_part): Likewise.
6326         (regcache::transfer_regset_register): Likewise.
6327         (regcache::transfer_regset): Use gdb_byte*.
6328
6329 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6330
6331         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6332
6333 2018-06-21  Pedro Alves  <palves@redhat.com>
6334
6335         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6336         instead of a ptid_t.  All callers adjusted.
6337         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6338         adjusted.
6339         (print_ada_task_info, display_current_task_id, task_command_1):
6340         Adjust.
6341         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6342         inferior_thread.
6343         (breakpoint_kind): Adjust.
6344         (remove_breakpoints_pid): Rename to ...
6345         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6346         pointer.  All callers adjusted.
6347         (bpstat_clear_actions): Use inferior_thread.
6348         (get_bpstat_thread): New.
6349         (bpstat_do_actions): Use it.
6350         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6351         to take a thread_info pointer.  All callers adjusted.
6352         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6353         (breakpoint_re_set_thread): Use inferior_thread.
6354         * breakpoint.h (struct inferior): Forward declare.
6355         (bpstat_stop_status): Update.
6356         (remove_breakpoints_pid): Delete.
6357         (remove_breakpoints_inf): New.
6358         * bsd-uthread.c (bsd_uthread_target::wait)
6359         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6360         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6361         (maint_btrace_packet_history_cmd)
6362         (maint_btrace_clear_packet_history_cmd): Adjust.
6363         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6364         inferior_thread.
6365         * cli/cli-interp.c: Include "inferior.h".
6366         * common/refcounted-object.h (struct
6367         refcounted_object_ref_policy): New.
6368         * compile/compile-object-load.c: Include gdbthread.h.
6369         (store_regs): Use inferior_thread.
6370         * corelow.c (core_target::close): Use current_inferior.
6371         (core_target_open): Adjust to use first_thread_of_inferior and use
6372         the current inferior.
6373         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6374         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6375         <thread>: ... this new field.  All references adjusted.
6376         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6377         Take a thread_info pointer instead of a ptid_t.
6378         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6379         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6380         thread_info pointer instead of a ptid_t.
6381         * elfread.c: Include "inferior.h".
6382         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6383         Use inferior_thread.
6384         * eval.c (evaluate_subexp): Likewise.
6385         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6386         inferior_thread.
6387         * gdb_proc_service.h (struct thread_info): Forward declare.
6388         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6389         <thread>: ... this new field.  All references adjusted.
6390         * gdbarch.h, gdbarch.c: Regenerate.
6391         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6392         'thread' parameter.  All implementations and callers adjusted.
6393         * gdbthread.h (thread_info) <set_running>: New method.
6394         (delete_thread, delete_thread_silent): Take a thread_info pointer
6395         instead of a ptid.
6396         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6397         (first_thread_of_process): Delete, replaced by ...
6398         (first_thread_of_inferior): ... this new function.  All callers
6399         adjusted.
6400         (any_live_thread_of_process): Delete, replaced by ...
6401         (any_live_thread_of_inferior): ... this new function.  All callers
6402         adjusted.
6403         (switch_to_thread, switch_to_no_thread): Declare.
6404         (is_executing): Delete.
6405         (enable_thread_stack_temporaries): Update comment.
6406         <enable_thread_stack_temporaries>: Take a thread_info pointer
6407         instead of a ptid_t.  Incref the thread.
6408         <~enable_thread_stack_temporaries>: Decref the thread.
6409         <m_ptid>: Delete
6410         <m_thr>: New.
6411         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6412         (get_last_thread_stack_temporary)
6413         (value_in_thread_stack_temporaries, can_access_registers_thread):
6414         Take a thread_info pointer instead of a ptid_t.  All callers
6415         adjusted.
6416         * infcall.c (get_call_return_value): Use inferior_thread.
6417         (run_inferior_call): Work with thread pointers instead of ptid_t.
6418         (call_function_by_hand_dummy): Work with thread pointers instead
6419         of ptid_t.  Use thread_info_ref.
6420         * infcmd.c (proceed_thread_callback): Access thread's state
6421         directly.
6422         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6423         access thread's state directly.
6424         (continue_command): Use inferior_thread.
6425         (info_program_command): Use find_thread_ptid and access thread
6426         state directly.
6427         (proceed_after_attach_callback): Use thread state directly.
6428         (notice_new_inferior): Take a thread_info pointer instead of a
6429         ptid_t.  All callers adjusted.
6430         (exit_inferior): Take an inferior pointer instead of a pid.  All
6431         callers adjusted.
6432         (exit_inferior_silent): New.
6433         (detach_inferior): Delete.
6434         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6435         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6436         (detach_inferior_command, kill_inferior_command): Use
6437         find_inferior_id instead of valid_gdb_inferior_id and
6438         gdb_inferior_id_to_pid.
6439         (inferior_command): Use inferior and thread pointers.
6440         * inferior.h (struct thread_info): Forward declare.
6441         (notice_new_inferior): Take a thread_info pointer instead of a
6442         ptid_t.  All callers adjusted.
6443         (detach_inferior): Delete declaration.
6444         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6445         instead of a pid.  All callers adjusted.
6446         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6447         (valid_gdb_inferior_id): Delete.
6448         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6449         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6450         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6451         ...
6452         <inf>: ... this new field.
6453         <step_ptid>: Delete, replaced by ...
6454         <step_thread>: ... this new field.
6455         (get_displaced_stepping_state): Take an inferior pointer instead
6456         of a pid.  All callers adjusted.
6457         (displaced_step_in_progress_any_inferior): Adjust.
6458         (displaced_step_in_progress_thread): Take a thread pointer instead
6459         of a ptid_t.  All callers adjusted.
6460         (displaced_step_in_progress, add_displaced_stepping_state): Take
6461         an inferior pointer instead of a pid.  All callers adjusted.
6462         (get_displaced_step_closure_by_addr): Adjust.
6463         (remove_displaced_stepping_state): Take an inferior pointer
6464         instead of a pid.  All callers adjusted.
6465         (displaced_step_prepare_throw, displaced_step_prepare)
6466         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6467         All callers adjusted.
6468         (start_step_over): Adjust.
6469         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6470         displaced step queue.
6471         (do_target_resume): Adjust.
6472         (fetch_inferior_event): Use inferior_thread.
6473         (context_switch, get_inferior_stop_soon): Take an
6474         execution_control_state pointer instead of a ptid_t.  All callers
6475         adjusted.
6476         (switch_to_thread_cleanup): Delete.
6477         (stop_all_threads): Use scoped_restore_current_thread.
6478         * inline-frame.c: Include "gdbthread.h".
6479         (inline_state) <inline_state>: Take a thread pointer instead of a
6480         ptid_t.  All callers adjusted.
6481         <ptid>: Delete, replaced by ...
6482         <thread>: ... this new field.
6483         (find_inline_frame_state): Take a thread pointer instead of a
6484         ptid_t.  All callers adjusted.
6485         (skip_inline_frames, step_into_inline_frame)
6486         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6487         pointer instead of a ptid_t.  All callers adjusted.
6488         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6489         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6490         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6491         pointers directly.
6492         * linux-nat.c (get_detach_signal): Likewise.
6493         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6494         (thread_db_notice_clone): Adjust.
6495         (thread_db_find_new_threads_silently)
6496         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6497         a thread pointer instead of a ptid_t.  All callers adjusted.
6498         * mi/mi-cmd-var.c: Include "inferior.h".
6499         (mi_cmd_var_update_iter): Update to use thread pointers.
6500         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6501         inferior directly.
6502         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6503         out to ...
6504         (mi_output_running): ... this new function.
6505         (mi_on_resume_1): Adjust to use it.
6506         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6507         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6508         directly.
6509         (interrupt_thread_callback): : Adjust to use thread and inferior
6510         pointers.
6511         * proc-service.c: Include "gdbthread.h".
6512         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6513         * progspace-and-thread.c: Include "inferior.h".
6514         * progspace.c: Include "inferior.h".
6515         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6516         hold a reference to an inferior_object.
6517         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6518         inferior_thread.
6519         * python/py-inferior.c (struct inferior_object): Give the type a
6520         tag name instead of a typedef.
6521         (python_on_normal_stop): No need to check if the current thread is
6522         listed.
6523         (inferior_to_inferior_object): Change return type to
6524         inferior_object.  All callers adjusted.
6525         (find_thread_object): Delete, bits factored out to ...
6526         (thread_to_thread_object): ... this new function.
6527         * python/py-infthread.c (create_thread_object): Use
6528         inferior_to_inferior_object.
6529         (thpy_is_stopped): Use thread pointer directly.
6530         (gdbpy_selected_thread): Use inferior_thread.
6531         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6532         field, replaced with ...
6533         <thread>: ... this new field.  All users adjusted.
6534         (btpy_insn_or_gap_new): Drop const.
6535         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6536         callers adjusted.
6537         * python/py-record.c: Include "gdbthread.h".
6538         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6539         a ptid_t.  All callers adjusted.
6540         (gdbpy_current_recording): Use inferior_thread.
6541         * python/py-record.h (recpy_record_object) <ptid>: Delete
6542         field, replaced with ...
6543         <thread>: ... this new field.  All users adjusted.
6544         (recpy_element_object) <ptid>: Delete
6545         field, replaced with ...
6546         <thread>: ... this new field.  All users adjusted.
6547         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6548         a ptid_t.  All callers adjusted.
6549         * python/py-threadevent.c: Include "gdbthread.h".
6550         (get_event_thread): Use thread_to_thread_object.
6551         * python/python-internal.h (struct inferior_object): Forward
6552         declare.
6553         (find_thread_object, find_inferior_object): Delete declarations.
6554         (thread_to_thread_object, inferior_to_inferior_object): New
6555         declarations.
6556         * record-btrace.c: Include "inferior.h".
6557         (require_btrace_thread): Use inferior_thread.
6558         (record_btrace_frame_sniffer)
6559         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6560         (get_thread_current_frame): Use scoped_restore_current_thread and
6561         switch_to_thread.
6562         (get_thread_current_frame): Use thread pointer directly.
6563         (record_btrace_replay_at_breakpoint): Use thread's inferior
6564         pointer directly.
6565         * record-full.c: Include "inferior.h".
6566         * regcache.c: Include "gdbthread.h".
6567         (get_thread_arch_regcache): Use the inferior's address space
6568         directly.
6569         (get_thread_regcache, registers_changed_thread): New.
6570         * regcache.h (get_thread_regcache(thread_info *thread)): New
6571         overload.
6572         (registers_changed_thread): New.
6573         (remote_target) <remote_detach_1>: Swap order of parameters.
6574         (remote_add_thread): <remote_add_thread>: Return the new thread.
6575         (get_remote_thread_info(ptid_t)): New overload.
6576         (remote_target::remote_notice_new_inferior): Use thread pointers
6577         directly.
6578         (remote_target::process_initial_stop_replies): Use
6579         thread_info::set_running.
6580         (remote_target::remote_detach_1, remote_target::detach)
6581         (extended_remote_target::detach): Adjust.
6582         * stack.c (frame_show_address): Use inferior_thread.
6583         * target-debug.h (target_debug_print_thread_info_pp): New.
6584         * target-delegates.c: Regenerate.
6585         * target.c (default_thread_address_space): Delete.
6586         (memory_xfer_partial_1): Use current_inferior.
6587         (target_detach): Use current_inferior.
6588         (target_thread_address_space): Delete.
6589         (generic_mourn_inferior): Use current_inferior.
6590         * target.h (struct target_ops) <thread_address_space>: Delete.
6591         (target_thread_address_space): Delete.
6592         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6593         pointers directly.
6594         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6595         thread pointer instead of a ptid_t.  Adjust all callers.
6596         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6597         (first_thread_of_process): Delete, replaced by ...
6598         (first_thread_of_inferior): ... this new function.  All callers
6599         adjusted.
6600         (any_thread_of_process): Rename to ...
6601         (any_thread_of_inferior): ... this, and take an inferior pointer.
6602         (any_live_thread_of_process): Rename to ...
6603         (any_live_thread_of_inferior): ... this, and take an inferior
6604         pointer.
6605         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6606         (value_in_thread_stack_temporaries)
6607         (get_last_thread_stack_temporary): Take a thread pointer instead
6608         of a ptid_t.  Adjust all callers.
6609         (thread_info::set_running): New.
6610         (validate_registers_access): Use inferior_thread.
6611         (can_access_registers_ptid): Rename to ...
6612         (can_access_registers_thread): ... this, and take a thread
6613         pointer.
6614         (print_thread_info_1): Adjust to compare thread pointers instead
6615         of ptids.
6616         (switch_to_no_thread, switch_to_thread): Make extern.
6617         (scoped_restore_current_thread::~scoped_restore_current_thread):
6618         Use m_thread pointer directly.
6619         (scoped_restore_current_thread::scoped_restore_current_thread):
6620         Use inferior_thread.
6621         (thread_command): Use thread pointer directly.
6622         (thread_num_make_value_helper): Use inferior_thread.
6623         * top.c (execute_command): Use inferior_thread.
6624         * tui/tui-interp.c: Include "inferior.h".
6625         * varobj.c (varobj_create): Use inferior_thread.
6626         (value_of_root_1): Use find_thread_global_id instead of
6627         global_thread_id_to_ptid.
6628
6629 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6630
6631         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6632         possible.
6633         (regcache::write_part): Likewise.
6634         (readable_regcache::cooked_read_part): Update comment.
6635         (readable_regcache::cooked_write_part): Likewise.
6636         * regcache.h: (readable_regcache::read_part): Likewise.
6637         (regcache::write_part): Likewise.
6638
6639 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6640             Dirk Schubert  <dirk.schubert@arm.com>
6641
6642         * aarch64-linux-nat.c (post_attach): New.
6643         (aarch64_linux_nat_target::post_attach): Override post_attach to
6644         record the number of hardware debug registers.
6645
6646 2018-06-20  Tom Tromey  <tom@tromey.com>
6647
6648         * python/py-param.c (add_setshow_generic): Make parameters const.
6649         (parmpy_init): Update.
6650
6651 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6652
6653         * regcache.h (regcache_cooked_read_ftype): Rename to...
6654         (register_read_ftype): ...this, change type to function_view.
6655         (class reg_buffer) <save>: Remove src parameter.
6656         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6657         parameter non-const in first overload.  Remove src parameter in
6658         second overload.
6659         * regcache.c (do_cooked_read): Remove.
6660         (readonly_detached_regcache::readonly_detached_regcache): Make
6661         parameter non-const, adjust call to other constructor.
6662         (reg_buffer::save): Remove src parameter.
6663         * frame.c (do_frame_register_read): Remove.
6664         (frame_save_as_regcache): Use lambda function.
6665         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6666         parameter to ppu2spu_data *.
6667         (ppu2spu_sniffer): Use lambda function.
6668
6669 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6670
6671         * record-full.c (record_full_target::insert_breakpoint): Remove
6672         "struct" keyword, add const.
6673
6674 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6675
6676         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6677         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6678         * configure.ac: Remove AC_PREREQ, add missing quoting.
6679         * gnulib/configure.ac: Modernize usage of
6680         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6681         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6682         (AUTOMAKE_VERSION): Bump to 1.15.1.
6683         * configure: Re-generate.
6684         * config.in: Re-generate.
6685         * aclocal.m4: Re-generate.
6686         * gnulib/aclocal.m4: Re-generate.
6687         * gnulib/config.in: Re-generate.
6688         * gnulib/configure: Re-generate.
6689         * gnulib/import/Makefile.in: Re-generate.
6690
6691 2018-06-19  Pedro Alves  <palves@redhat.com>
6692
6693         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6694         (lookup_minimal_symbol_by_pc_section): ... here with
6695         gdb_assert_not_reached added.
6696
6697 2018-06-19  Pedro Alves  <palves@redhat.com>
6698
6699         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6700         parameter with a block parameter.  Compare location's block symbol
6701         with the frame's block instead of addresses.
6702         (skip_inline_frames): Pass the current block instead of the
6703         frame's address.  Break out as soon as we determine the frame
6704         should not be skipped.
6705
6706 2018-06-18  Tom Tromey  <tom@tromey.com>
6707
6708         * solib-aix.c (solib_aix_get_section_offsets): Return
6709         unique_xmalloc_ptr.
6710         (solib_aix_solib_create_inferior_hook): Update.
6711
6712 2018-06-18  Tom Tromey  <tom@tromey.com>
6713
6714         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6715
6716 2018-06-18  Tom Tromey  <tom@tromey.com>
6717
6718         * solib-frv.c (frv_relocate_main_executable): Use
6719         unique_xmalloc_ptr.
6720         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6721         unique_xmalloc_ptr.
6722
6723 2018-06-18  Tom Tromey  <tom@tromey.com>
6724
6725         * objfiles.h (inhibit_section_map_updates): Update.
6726         (resume_section_map_updates, resume_section_map_updates_cleanup):
6727         Remove.
6728         * solib-svr4.c (svr4_handle_solib_event): Update.
6729         * objfiles.c (inhibit_section_map_updates): Return
6730         scoped_restore_tmpl<int>.
6731         (resume_section_map_updates, resume_section_map_updates_cleanup):
6732         Remove.
6733
6734 2018-06-18  Tom Tromey  <tom@tromey.com>
6735
6736         * valprint.h (read_string): Update.
6737         * valprint.c (read_string): Change type of "buffer".
6738         (val_print_string): Update.
6739         * python/py-value.c (valpy_string): Update.
6740         * language.h (struct language_defn) <la_get_string>: Change
6741         type of "buffer".
6742         (default_get_string, c_get_string): Update.
6743         * language.c (default_get_string): Change type of "buffer".
6744         * guile/scm-value.c (gdbscm_value_to_string): Update.
6745         * c-lang.c (c_get_string): Change type of "buffer".
6746
6747 2018-06-18  Tom Tromey  <tom@tromey.com>
6748
6749         * ser-mingw.c (struct pipe_state_destroyer): New.
6750         (pipe_state_up): New typedef.
6751         (cleanup_pipe_state): Remove.
6752         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6753
6754 2018-06-18  Tom Tromey  <tom@tromey.com>
6755
6756         * rust-lang.h (rust_yyerror): Don't declare.
6757         * rust-lang.c (rust_language_defn): Update.
6758         * rust-exp.y (yyerror): Now static.
6759         * parse.c (parse_exp_in_context_1): Update.
6760         * p-lang.h (p_yyerror): Don't declare.
6761         * p-lang.c (p_language_defn): Update.
6762         * p-exp.y (yyerror): Now static.
6763         * opencl-lang.c (opencl_language_defn): Update.
6764         * objc-lang.c (objc_language_defn): Update.
6765         * m2-lang.h (m2_yyerror): Don't declare.
6766         * m2-lang.c (m2_language_defn): Update.
6767         * m2-exp.y (yyerror): Now static.
6768         * language.h (struct language_defn) <la_error>: Remove.
6769         * language.c (unk_lang_error): Remove.
6770         (unknown_language_defn, auto_language_defn): Remove.
6771         * go-lang.h (go_yyerror): Don't declare.
6772         * go-lang.c (go_language_defn): Update.
6773         * go-exp.y (yyerror): Now static.
6774         * f-lang.h (f_yyerror): Don't declare.
6775         * f-lang.c (f_language_defn): Update.
6776         * f-exp.y (yyerror): Now static.
6777         * d-lang.h (d_yyerror): Don't declare.
6778         * d-lang.c (d_language_defn): Update.
6779         * d-exp.y (yyerror): Now static.
6780         * c-lang.h (c_yyerror): Don't declare.
6781         * c-lang.c (c_language_defn, cplus_language_defn)
6782         (asm_language_defn, minimal_language_defn): Update.
6783         * c-exp.y (yyerror): Now static.
6784         * ada-lang.h (ada_yyerror): Don't declare.
6785         * ada-lang.c (ada_language_defn): Update.
6786         * ada-exp.y (yyerror): Now static.
6787
6788 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6789
6790         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6791         (store_sveregs_to_thread): Likewise.
6792         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6793         (aarch64_linux_store_inferior_registers): Likewise.
6794         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6795         function.
6796         (aarch64_sve_regs_copy_to_regcache): Likewise.
6797         (aarch64_sve_regs_copy_from_regcache): Likewise.
6798         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6799         declaration.
6800         (aarch64_sve_regs_copy_to_regcache): Likewise.
6801         (aarch64_sve_regs_copy_from_regcache): Likewise.
6802         (sve_context): Structure from Linux headers.
6803         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6804         (SVE_SIG_ZREG_SIZE): Likewise.
6805         (SVE_SIG_PREG_SIZE): Likewise.
6806         (SVE_SIG_FFR_SIZE): Likewise.
6807         (SVE_SIG_REGS_OFFSET): Likewise.
6808         (SVE_SIG_ZREGS_OFFSET): Likewise.
6809         (SVE_SIG_ZREG_OFFSET): Likewise.
6810         (SVE_SIG_ZREGS_SIZE): Likewise.
6811         (SVE_SIG_PREGS_OFFSET): Likewise.
6812         (SVE_SIG_PREG_OFFSET): Likewise.
6813         (SVE_SIG_PREGS_SIZE): Likewise.
6814         (SVE_SIG_FFR_OFFSET): Likewise.
6815         (SVE_SIG_REGS_SIZE): Likewise.
6816         (SVE_SIG_CONTEXT_SIZE): Likewise.
6817         (SVE_PT_REGS_MASK): Likewise.
6818         (SVE_PT_REGS_FPSIMD): Likewise.
6819         (SVE_PT_REGS_SVE): Likewise.
6820         (SVE_PT_VL_INHERIT): Likewise.
6821         (SVE_PT_VL_ONEXEC): Likewise.
6822         (SVE_PT_REGS_OFFSET): Likewise.
6823         (SVE_PT_FPSIMD_OFFSET): Likewise.
6824         (SVE_PT_FPSIMD_SIZE): Likewise.
6825         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6826         (SVE_PT_SVE_PREG_SIZE): Likewise.
6827         (SVE_PT_SVE_FFR_SIZE): Likewise.
6828         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6829         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6830         (__SVE_SIG_TO_PT): Likewise.
6831         (SVE_PT_SVE_OFFSET): Likewise.
6832         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6833         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6834         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6835         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6836         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6837         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6838         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6839         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6840         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6841         (SVE_PT_SVE_SIZE): Likewise.
6842         (SVE_PT_SIZE): Likewise.
6843         (HAS_SVE_STATE): New define.
6844
6845 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6846
6847         * nat/aarch64-sve-linux-sigcontext.h: New file.
6848         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6849         new files.
6850         (SVE_VQ_MIN): Likewise.
6851         (SVE_VQ_MAX): Likewise.
6852         (SVE_VL_MIN): Likewise.
6853         (SVE_VL_MAX): Likewise.
6854         (SVE_NUM_ZREGS): Likewise.
6855         (SVE_NUM_PREGS): Likewise.
6856         (sve_vl_valid): Likewise.
6857         (struct user_sve_header): Likewise.
6858
6859 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6860             Richard Bunt <Richard.Bunt@arm.com>
6861
6862         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6863         was requested by GDB.
6864
6865 2018-06-15  Tom de Vries  <tdevries@suse.de>
6866
6867         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6868
6869 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6870
6871         * gnulib/update-gnulib.sh: Print expected versions of
6872         autoconf/aclocal.
6873
6874 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6875
6876         * arch-utils.c (default_type_align): Use type_length_units.
6877         * gdbtypes.c (type_align): Use type_length_units.
6878
6879 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6880
6881         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6882         of 'define' command.
6883
6884 2018-06-14  Tom de Vries  <tdevries@suse.de>
6885
6886         PR cli/22573
6887         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6888         get_no_prettyformat_print_options.
6889
6890 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6891
6892         * sparc-nat.h: Include target.h.
6893         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6894         <fetch_registers>: Remove this argument in function call.
6895         <store_registers>: Remove this argument in function call, remove
6896         extra semicolon.
6897         <low_forget_process>: Call sparc64_forget_process instead of
6898         sparc_forget_process.
6899
6900 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6901
6902         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6903         (procfs_target::make_corefile_notes): Adjust to new
6904         target_read_alloc return type.
6905
6906 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6907             Stephen Roberts  <stephen.roberts@arm.com>
6908
6909         PR gdb/22882
6910         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6911         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6912         Move should_notify_stop local into more inner scope.
6913
6914 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6915             Stephen Roberts  <stephen.roberts@arm.com>
6916
6917         PR gdb/22882
6918         * infrun.c (resume_1): Add call to mark_async_event_handler.
6919
6920 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6921
6922         * infrun.c (do_target_wait): Change old version of $pc printed.
6923
6924 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6925
6926         * dwarf2read.c (read_index_from_section): Rename to...
6927         (read_gdb_index_from_section): ... this, update all callers.
6928         (dwarf2_read_index): Rename to...
6929         (dwarf2_read_gdb_index): ... this, update all callers.
6930
6931 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6932
6933         * gdb/hppa-linux-nat.c
6934         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6935         hppa_linux_nat_target::fetch_registers.
6936
6937 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6938
6939         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6940         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6941         (AARCH64_DWARF_SVE_FFR): Likewise.
6942         (AARCH64_DWARF_SVE_P0): Likewise.
6943         (AARCH64_DWARF_SVE_Z0): Likewise.
6944
6945 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6946
6947         * common/common-regcache.h (raw_compare): New function.
6948         * regcache.c (regcache::raw_compare): Likewise.
6949         * regcache.h (regcache::raw_compare): New declaration.
6950
6951 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6952
6953         * common/common-regcache.h (reg_buffer_common): New structure.
6954         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6955         (reg_buffer::raw_supply): Likewise.
6956         (reg_buffer::raw_supply_integer): Likewise.
6957         (reg_buffer::raw_supply_zeroed): Likewise.
6958         (reg_buffer::raw_collect): Likewise.
6959         (reg_buffer::raw_collect_integer): Likewise.
6960         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6961         (reg_buffer::raw_supply): Likewise.
6962         (reg_buffer::raw_supply_integer): Likewise.
6963         (reg_buffer::raw_supply_zeroed): Likewise.
6964         (reg_buffer::raw_collect): Likewise.
6965         (reg_buffer::raw_collect_integer): Likewise.
6966
6967 2018-06-10  Tom Tromey  <tom@tromey.com>
6968
6969         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6970         (class remote_state) <stop_reply_queue>: Now std::vector.
6971         (remote_state::~remote_state)
6972         (remote_target::stop_reply_queue_length): Update.
6973         (struct queue_iter_param, remove_child_of_pending_fork)
6974         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6975         (check_pending_event_prevents_wildcard_vcont_callback)
6976         (remove_stop_reply_for_inferior)
6977         (remove_stop_reply_of_remote_state)
6978         (remote_notif_remove_once_on_match)
6979         (stop_reply_match_ptid_and_ws)
6980         (remote_kill_child_of_pending_fork): Remove.
6981         (remote_target::remove_new_fork_children)
6982         (remote_target::check_pending_events_prevent_wildcard_vcont)
6983         (remote_target::discard_pending_stop_replies)
6984         (remote_target::discard_pending_stop_replies_in_queue)
6985         (remote_target::remote_notif_remove_queued_reply)
6986         (remote_target::queued_stop_reply)
6987         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6988         (remote_target::wait, remote_target::kill_new_fork_children)
6989         (remote_target::async): Update.
6990
6991 2018-06-10  Tom Tromey  <tom@tromey.com>
6992
6993         * record-full.c (record_full_arch_list_cleanups): Remove.
6994         (record_full_message): Use try/catch.
6995         (record_full_wait_cleanups): Remove.
6996         (record_full_wait_1): Use try/catch.
6997         (record_full_restore): Likewise.
6998
6999 2018-06-10  Tom Tromey  <tom@tromey.com>
7000
7001         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7002         declare VEC.  Add constructor.
7003         <in_target_beneath>: Now bool.
7004         (record_full_breakpoints): Now a std::vector, static.
7005         (record_full_sync_record_breakpoints)
7006         (record_full_init_record_breakpoints)
7007         (record_full_target::insert_breakpoint)
7008         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7009
7010 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7011
7012         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7013         * serial.c (serial_interface_lookup): Remove struct keyword.
7014
7015 2018-06-10  Tom Tromey  <tom@tromey.com>
7016
7017         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7018         method.
7019         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7020         a method.
7021         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7022         method.
7023         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7024         "beneath" as a method.
7025         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7026         Use "beneath" as a method.
7027
7028 2018-06-10  Tom Tromey  <tom@tromey.com>
7029
7030         * tracefile.c (struct trace_file_writer_deleter): New.
7031         <operator()>: Rename from trace_file_writer_xfree.
7032         (trace_file_writer_up): New typedef.
7033         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7034
7035 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7036
7037         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
7038         <m_registers, m_register_status>: Change type to
7039         std::unique_ptr.
7040         * regcache.c (reg_buffer::reg_buffer): Use new instead of
7041         XCNEWVEC.
7042
7043 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
7044
7045         * common/common-regcache.h (enum register_status): Add
7046         underlying type "signed char".
7047         * regcache.h (reg_buffer) <m_register_status>: Change type to
7048         register_status *.
7049         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
7050         register_status instead of signed char.
7051         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
7052         (reg_buffer::get_register_status): Remove cast.
7053         (readable_regcache::raw_read): Remove cast.
7054         (readable_regcache::cooked_read): Remove cast.
7055
7056 2018-06-09  Tom Tromey  <tom@tromey.com>
7057
7058         * source.c (reverse_search_command, forward_search_command): Use
7059         scoped_fd.
7060
7061 2018-06-09  Tom Tromey  <tom@tromey.com>
7062
7063         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
7064         (serial_ops_list): Now static, std::vector.
7065         (serial_interface_lookup, serial_add_interface): Update.
7066
7067 2018-06-09  Tom Tromey  <tom@tromey.com>
7068
7069         * dwarf2read.c (process_cu_includes): Update.
7070         (process_full_comp_unit): Update.
7071         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
7072         std::vector.
7073
7074 2018-06-08  Paul Koning  <paul_koning@dell.com>
7075
7076         PR gdb/23252
7077
7078         * python/python.c (do_start_initialization):
7079         Avoid call to internal Python API.
7080         (init__gdb_module): New function.
7081
7082 2018-06-08  Gary Benson <gbenson@redhat.com>
7083
7084         * linux-thread-db.c (valprint.h): New include.
7085         (struct check_thread_db_info): New structure.
7086         (check_thread_db_on_load, tdb_testinfo): New static globals.
7087         (check_thread_db, check_thread_db_callback): New functions.
7088         (try_thread_db_load_1): Run integrity checks if requested.
7089         (maintenance_check_libthread_db): New function.
7090         (_initialize_thread_db): Register "maint check libthread-db"
7091         and "maint set/show check-libthread-db".
7092         * NEWS: Mention the above new commands.
7093
7094 2018-06-08  Tom Tromey  <tom@tromey.com>
7095
7096         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7097         now a method.
7098
7099 2018-06-08  Tom Tromey  <tom@tromey.com>
7100
7101         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7102
7103 2018-06-08  Tom Tromey  <tom@tromey.com>
7104
7105         * common/btrace-common.h (struct btrace_data): Add constructor,
7106         destructor, move assignment operator.
7107         <empty, clear, fini>: New methods.
7108         <format>: Initialize.
7109         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7110         (btrace_data_empty): Don't declare.
7111         * common/btrace-common.c (btrace_data_init): Remove.
7112         (btrace_data::fini): Rename from btrace_data_fini.
7113         (btrace_data::empty): Rename from btrace_data_empty.
7114         (btrace_data::clear): Rename from btrace_data_clear.  Return
7115         bool.
7116         * btrace.h (make_cleanup_btrace_data): Don't declare.
7117         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7118         (parse_xml_btrace): Update.
7119         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7120         (maint_btrace_clear_packet_history_cmd): Update.
7121
7122 2018-06-07  Pedro Alves  <palves@redhat.com>
7123
7124         * target.h (target_ops) <beneath>: Now a method.  All references
7125         updated.
7126         (class target_stack): New.
7127         * target.c (g_target_stack): New.
7128         (g_current_top_target): Delete.
7129         (current_top_target): Get the top target out of g_target_stack.
7130         (target_stack::push, target_stack::unpush): New.
7131         (push_target, unpush_target): Reimplement.
7132         (target_is_pushed): Reimplement in terms of g_target_stack.
7133         (target_ops::beneath, target_stack::find_beneath): New.
7134
7135 2018-06-07  Pedro Alves  <palves@redhat.com>
7136
7137         * target.h (find_target_beneath): Delete declaration.
7138         * target.c (find_target_beneath): Delete definition.
7139         * aix-thread.c: All callers of find_target_beneath adjusted to
7140         call target_ops::beneath instead.
7141         * bsd-uthread.c: Likewise.
7142         * linux-thread-db.c: Likewise.
7143         * ravenscar-thread.c: Likewise.
7144         * sol-thread.c: Likewise.
7145         * spu-multiarch.c: Likewise.
7146
7147 2018-06-07  Pedro Alves  <palves@redhat.com>
7148
7149         * target.h (target_ops) <beneath>: Now a method.  All references
7150         updated.
7151         (target_ops) <m_beneath>: New.
7152         * target.c (target_ops::beneath): New.
7153         * corelow.c: Adjust all references to target_ops::beneath.
7154         * linux-thread-db.c: Likewise.
7155         * make-target-delegates: Likewise.
7156         * record-btrace.c: Likewise.
7157         * record-full.c: Likewise.
7158         * remote.c: Likewise.
7159         * target.c: Likewise.
7160         * target-delegates.c: Regenerate.
7161
7162 2018-06-07  Pedro Alves  <palves@redhat.com>
7163
7164         * target.h (target_stack): Delete.
7165         (current_top_target): Declare function.
7166         * target.c (target_stack): Delete.
7167         (g_current_top_target): New.
7168         (current_top_target): New function.
7169         * auxv.c: Use current_top_target instead of target_stack
7170         throughout.
7171         * avr-tdep.c: Likewise.
7172         * breakpoint.c: Likewise.
7173         * corefile.c: Likewise.
7174         * elfread.c: Likewise.
7175         * eval.c: Likewise.
7176         * exceptions.c: Likewise.
7177         * frame.c: Likewise.
7178         * gdbarch-selftests.c: Likewise.
7179         * gnu-v3-abi.c: Likewise.
7180         * ia64-tdep.c: Likewise.
7181         * ia64-vms-tdep.c: Likewise.
7182         * infcall.c: Likewise.
7183         * infcmd.c: Likewise.
7184         * infrun.c: Likewise.
7185         * linespec.c: Likewise.
7186         * linux-tdep.c: Likewise.
7187         * minsyms.c: Likewise.
7188         * ppc-linux-nat.c: Likewise.
7189         * ppc-linux-tdep.c: Likewise.
7190         * procfs.c: Likewise.
7191         * regcache.c: Likewise.
7192         * remote.c: Likewise.
7193         * rs6000-tdep.c: Likewise.
7194         * s390-linux-nat.c: Likewise.
7195         * s390-tdep.c: Likewise.
7196         * solib-aix.c: Likewise.
7197         * solib-darwin.c: Likewise.
7198         * solib-dsbt.c: Likewise.
7199         * solib-spu.c: Likewise.
7200         * solib-svr4.c: Likewise.
7201         * solib-target.c: Likewise.
7202         * sparc-tdep.c: Likewise.
7203         * sparc64-tdep.c: Likewise.
7204         * spu-tdep.c: Likewise.
7205         * symfile.c: Likewise.
7206         * symtab.c: Likewise.
7207         * target-descriptions.c: Likewise.
7208         * target-memory.c: Likewise.
7209         * target.c: Likewise.
7210         * target.h: Likewise.
7211         * tracefile-tfile.c: Likewise.
7212         * tracepoint.c: Likewise.
7213         * valops.c: Likewise.
7214         * valprint.c: Likewise.
7215         * value.c: Likewise.
7216         * windows-tdep.c: Likewise.
7217         * mi/mi-main.c: Likewise.
7218
7219 2018-06-07  Tom Tromey  <tom@tromey.com>
7220
7221         * valprint.h (build_address_symbolic): Declare.
7222         * printcmd.c (print_address_symbolic): Update.
7223         (build_address_symbolic): Change "name" and "filename" to
7224         std::string.
7225         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7226         Update.
7227         * defs.h (build_address_symbolic): Remove declaration.
7228
7229 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7230
7231         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7232         (aarch64_vnv_type): Add function.
7233         (aarch64_pseudo_register_name): Add V regs for SVE.
7234         (aarch64_pseudo_register_type): Likewise.
7235         (aarch64_pseudo_register_reggroup_p): Likewise.
7236         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7237         (aarch64_pseudo_read_value): Add V regs for SVE.
7238         (aarch64_pseudo_write_2): Use V0 offset for SVE
7239         (aarch64_pseudo_write): Add V regs for SVE.
7240         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7241
7242 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7243
7244         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7245         (sve_vl_from_vq): Likewise.
7246
7247 2018-06-05  Tom Tromey  <tom@tromey.com>
7248
7249         * cli/cli-cmds.c (show_version): Update.
7250         * top.c (print_gdb_version): Add "interactive" parameter.
7251         Update.
7252         * main.c (captured_main_1): Update.
7253         * top.h (print_gdb_version): Add "interactive" parameter and a
7254         comment.
7255
7256 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7257
7258         * common/enum-flags.h: Add trailing semicolon to example in
7259         comment.
7260
7261 2018-06-05  Tom Tromey  <tom@tromey.com>
7262
7263         PR cli/12326:
7264         * NEWS: Add entry about pager.
7265         * utils.c (pagination_disabled_for_command): New global.
7266         (prompt_for_continue): Allow "c" response to prompt.
7267         (reinitialize_more_filter): Clear
7268         pagination_disabled_for_command.
7269         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7270
7271 2018-06-04  Tom Tromey  <tom@tromey.com>
7272
7273         * ada-lang.h (ada_lookup_symbol_list): Update.
7274         * ada-lang.c (resolve_subexp): Update.
7275         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7276         parameter.
7277         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7278         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7279         results parameter to std::vector.
7280         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7281         Update.
7282         * ada-exp.y (block_lookup): Update.
7283         (select_possible_type_sym): Change type of syms.  Remove nsyms
7284         parameter.
7285         (write_var_or_type, write_name_assoc): Update.
7286
7287 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7288
7289         * windows-nat.c (windows_nat_target::xfer_partial): Return
7290         TARGET_XFER_E_IO if we need to delegate to the target beneath
7291         but BENEATH is NULL.
7292
7293 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7294
7295         * Makefile.in (config.status): Add configure.nat as a
7296         dependency.
7297
7298 2018-06-04  Tom Tromey  <tom@tromey.com>
7299
7300         * cp-name-parser.y (cpname_state): Add method declarations.
7301         (HANDLE_QUAL): Update.
7302         (cpname_state::d_grab, cpname_state::fill_comp)
7303         (cpname_state::make_operator, cpname_state::make_dtor)
7304         (cpname_state::make_builtin_type, cpname_state::make_name)
7305         (cpname_state::d_qualify, cpname_state::d_int_type)
7306         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7307         (%union): Move earlier.
7308
7309 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7310
7311         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7312
7313 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7314
7315         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7316         (aarch64_pseudo_write_1): Likewise.
7317         (aarch64_pseudo_read_value): Use helper.
7318         (aarch64_pseudo_write): Likewise.
7319
7320 2018-06-04  Pedro Alves  <palves@redhat.com>
7321
7322         * darwin-nat.c (darwin_ops): Delete.
7323         (darwin_attach_pid): Use get_native_target.
7324
7325 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7326
7327         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7328         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7329
7330 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7331
7332         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7333         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7334         (aarch64_gdbarch_init): Check for SVE.
7335         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7336
7337 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7338
7339         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7340         * aarch64-tdep.h (aarch64_read_description): Likewise.
7341         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7342         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7343         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7344         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7345         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7346
7347 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7348
7349         * value.c (value_fetch_lazy_bitfield): New.
7350         (value_fetch_lazy_memory): New.
7351         (value_fetch_lazy_register): New.
7352         (value_fetch_lazy): Factor out to smaller functions.
7353
7354 2018-06-01  Tom Tromey  <tom@tromey.com>
7355
7356         * cp-name-parser.y (backslashable, represented): Now const.
7357
7358 2018-06-01  Tom Tromey  <tom@tromey.com>
7359
7360         * cp-name-parser.y: Include parser-defs.h.
7361         (parser_fprintf): Remove declaration.
7362
7363 2018-06-01  Tom Tromey  <tom@tromey.com>
7364
7365         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7366         %parse-param.
7367         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7368         (global_result): Remove globals.
7369         (struct cpname_state): New.
7370         (yyparse): Don't declare.
7371         (yylex, yyerror): Move declarations after %union.
7372         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7373         (make_name): Add state parameter.
7374         Update all callers.
7375         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7376         parameter.
7377         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7378         Update.
7379         (yylex): Add lvalp, state parameters.
7380         (yyerror): Add state parameter.
7381         (cp_demangled_name_to_comp): Update.
7382
7383 2018-06-01  Tom Tromey  <tom@tromey.com>
7384
7385         * cp-name-parser.y (parser_fprintf): Declare.
7386         (GDB_YY_REMAP_PREFIX): Define.
7387         Include yy-remap.h.  Don't redefine yy* identifiers.
7388
7389 2018-06-01  Tom Tromey  <tom@tromey.com>
7390
7391         * python/py-type.c (typy_legacy_template_argument): Update.
7392         * cp-support.h (cp_demangled_name_to_comp): Update.
7393         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7394         parameter to be a "std::string *".
7395         (main): Update.
7396
7397 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7398
7399         * ada-lex.l: Include "diagnostics.h" instead of
7400         "common/diagnostics.h".
7401         * unittests/environ-selftests.c: Likewise.
7402         * common/diagnostics.h: Moved to ../include.
7403
7404 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7405
7406         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7407         to language_mode_manual while calling breakpoint_re_set_one.
7408
7409 2018-06-01  Tom Tromey  <tom@tromey.com>
7410
7411         * valops.c (value_cast_structs, destructor_name_p): Update.
7412         * symtab.c (gdb_mangle_name): Update.
7413         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7414         Update.
7415         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7416         (pascal_object_print_value_fields, pascal_object_print_value):
7417         Update.
7418         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7419         * linespec.c (find_methods): Update.
7420         * gdbtypes.h (type_name_no_tag): Remove.
7421         (type_name_or_error): Rename from type_name_no_tag_or_error.
7422         * gdbtypes.c (type_name_no_tag): Remove.
7423         (type_name_or_error): Rename from type_name_no_tag_or_error.
7424         (lookup_struct_elt_type, check_typedef): Update.
7425         * expprint.c (print_subexp_standard): Update.
7426         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7427         * d-namespace.c (d_lookup_nested_symbol): Update.
7428         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7429         (cp_print_class_member): Update.
7430         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7431         * completer.c (add_struct_fields): Update.
7432         * c-typeprint.c (cp_type_print_derivation_info)
7433         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7434         Update.
7435         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7436         (ada_prefer_type, ada_is_exception_sym): Update.
7437
7438 2018-06-01  Tom Tromey  <tom@tromey.com>
7439
7440         * valops.c (enum_constant_from_type, value_namespace_elt)
7441         (value_maybe_namespace_elt): Update.
7442         * valarith.c (find_size_for_pointer_math): Update.
7443         * target-descriptions.c (make_gdb_type): Update.
7444         * symmisc.c (print_symbol): Update.
7445         * stabsread.c (define_symbol, read_type)
7446         (complain_about_struct_wipeout, add_undefined_type)
7447         (cleanup_undefined_types_1): Update.
7448         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7449         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7450         (rust_internal_print_type, rust_composite_type)
7451         (rust_evaluate_funcall, rust_evaluate_subexp)
7452         (rust_inclusive_range_type_p): Update.
7453         * python/py-type.c (typy_get_tag): Update.
7454         * p-typeprint.c (pascal_type_print_base): Update.
7455         * mdebugread.c (parse_symbol, parse_type): Update.
7456         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7457         Update.
7458         * guile/scm-type.c (gdbscm_type_tag): Update.
7459         * go-lang.c (sixg_string_p): Update.
7460         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7461         Update.
7462         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7463         (TYPE_TAG_NAME): Remove.
7464         * gdbtypes.c (type_name_no_tag): Simplify.
7465         (check_typedef, check_types_equal, recursive_dump_type)
7466         (copy_type_recursive, arch_composite_type): Update.
7467         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7468         in summary mode when needed.
7469         * eval.c (evaluate_funcall): Update.
7470         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7471         (process_structure_scope, read_enumeration_type)
7472         (read_namespace_type, read_module_type, determine_prefix): Update.
7473         * cp-support.c (inspect_type): Update.
7474         * coffread.c (process_coff_symbol, decode_base_type): Update.
7475         * c-varobj.c (c_is_path_expr_parent): Update.
7476         * c-typeprint.c (c_type_print_base_struct_union): Update.
7477         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7478         summary when using C language.
7479         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7480         (gen_maybe_namespace_elt): Update.
7481         * ada-lang.c (ada_type_name): Simplify.
7482         (empty_record, ada_template_to_fixed_record_type_1)
7483         (template_to_static_fixed_type)
7484         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7485
7486 2018-06-01  Tom Tromey  <tom@tromey.com>
7487
7488         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7489         c_print_type.
7490         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7491         (c_print_type): Update.
7492         (c_print_type): New overload.
7493         (c_type_print_varspec_prefix, c_type_print_args)
7494         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7495         (c_type_print_base_struct_union, c_type_print_base_1)
7496         (cp_type_print_method_args): Add "language" parameter.
7497         (c_type_print_base): Update.
7498         * c-lang.h (c_print_type): Add new overload.
7499
7500 2018-06-01  Tom Tromey  <tom@tromey.com>
7501
7502         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7503         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7504
7505 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7506
7507         * aarch64-tdep.c (aarch64_sve_register_names): New const
7508         var.
7509         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7510         (AARCH64_SVE_Z_REGS_NUM): New define.
7511         (AARCH64_SVE_P_REGS_NUM): Likewise.
7512         (AARCH64_SVE_NUM_REGS): Likewise.
7513
7514 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7515
7516         * nat/linux-ptrace.h [__alpha__]
7517         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7518         definitions.
7519
7520 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7521
7522         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7523         the endianness selected.
7524         * NEWS: Document `set endian auto' mode operation update.
7525
7526 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7527
7528         * Makefile.in: Add new header.
7529         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7530         (sve_vl_from_vg): Likewise.
7531         (sve_vq_from_vl): Likewise.
7532         (sve_vl_from_vq): Likewise.
7533         (sve_vq_from_vg): Likewise.
7534         (sve_vg_from_vq): Likewise.
7535         * configure.nat: Add new c file.
7536         * nat/aarch64-sve-linux-ptrace.c: New file.
7537         * nat/aarch64-sve-linux-ptrace.h: New file.
7538
7539 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7540
7541         * aarch64-linux-nat.c (aarch64_linux_read_description):
7542         Add parmeter zero.
7543         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7544         Likewise.
7545         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7546         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7547         (aarch64_gdbarch_init): Add parmeter zero.
7548         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7549         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7550         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7551         parmeter.
7552         * doc/gdb.texinfo: Describe SVE feature
7553         * features/aarch64-sve.c: New file.
7554
7555 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7556
7557         PR gdb/23210
7558         * gdbarch.sh (significant_addr_bit): Default to zero when
7559         not set by target architecture.
7560         * gdbarch.c: Re-generated.
7561         * utils.c (address_significant): Update.
7562
7563 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7564
7565         * stack.c (func_command): Remove trailing newline in call to error.
7566
7567 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7568
7569         * regcache.h (regcache_raw_collect): Remove, update callers to
7570         use regcache::raw_collect.
7571         * regcache.c (regcache_raw_collect): Remove.
7572
7573 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7574
7575         * regcache.h (regcache_raw_supply): Remove, update callers to
7576         use detached_regcache::raw_supply.
7577         * regcache.c (regcache_raw_supply): Remove.
7578
7579 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7580
7581         * regcache.h (regcache_cooked_write_part): Remove, update
7582         callers to use regcache::cooked_write_part.
7583         * regcache.c (regcache_cooked_write_part): Remove.
7584
7585 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7586
7587         * regcache.h (regcache_cooked_read_part): Remove, update callers
7588         to use readable_regcache::cooked_read_part.
7589         * regcache.c (regcache_cooked_read_part): Remove.
7590
7591 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7592
7593         * regcache.h (regcache_cooked_read_value): Remove, update
7594         callers to use readable_regcache::cooked_read_value.
7595         * regcache.c (regcache_cooked_read_value): Remove.
7596
7597 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7598
7599         * regcache.h (regcache_cooked_write): Remove, update callers to
7600         use regcache::cooked_write.
7601         * regcache.c (regcache_cooked_write): Remove.
7602
7603 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7604
7605         * regcache.h (regcache_invalidate): Remove, update callers to
7606         use detached_regcache::invalidate instead.
7607         * regcache.c (regcache_invalidate): Remove.
7608
7609 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7610
7611         * regcache.h (regcache_raw_write_part): Remove, update callers
7612         to use regcache::raw_write_part instead.
7613         * regcache.c (regcache_raw_write_part): Remove.
7614
7615 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7616
7617         * regcache.h (regcache_raw_read_part): Remove, update callers to
7618         use readable_regcache::raw_read_part instead.
7619         * regcache.c (regcache_raw_read_part): Remove.
7620
7621 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7622
7623         * regcache.h (regcache_cooked_read): Remove, update callers to
7624         use readable_regcache::cooked_read instead.
7625         * regcache.c (regcache_cooked_read): Remove.
7626
7627 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7628
7629         * regcache.h (regcache_raw_write): Remove, update callers to use
7630         regcache::raw_write instead.
7631         * regcache.c (regcache_raw_write): Remove.
7632
7633 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7634
7635         * regcache.h (regcache_raw_read): Remove, update callers to use
7636         readable_regcache::raw_read instead.
7637         * regcache.c (regcache_raw_read): Remove.
7638
7639 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7640
7641         * regcache.h (regcache_raw_update): Remove, update callers to
7642         use readable_regcache::raw_update instead.
7643         * regcache.c (regcache_raw_update): Remove.
7644
7645 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7646
7647         * regcache.h (regcache_register_status): Remove, update callers
7648         to use reg_buffer::get_register_status directly instead.
7649         * regcache.c (regcache_register_status): Remove.
7650
7651 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7652
7653         * regcache.h (regcache_get_ptid): Remove, update all callers to
7654         call regcache::ptid instead.
7655         * regcache.c (regcache_get_ptid): Remove.
7656
7657 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7658
7659         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7660
7661 2018-05-30  Pedro Alves  <palves@redhat.com>
7662
7663         * common/common-exceptions.h (exception_rethrow): Use
7664         ATTRIBUTE_NORETURN.
7665
7666 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7667
7668         * breakpoint.c (print_solib_event, check_status_catch_solib):
7669         Remove struct keyword in range-based for loops.
7670         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7671         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7672         Likewise.
7673         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7674         Likewise.
7675         * symfile.c (addr_info_make_relative): Likewise.
7676         * thread.c (value_in_thread_stack_temporaries): Likewise.
7677
7678 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7679
7680         PR gdb/16841
7681         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7682         aggregate type to get its real type before accessing it.
7683
7684 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7685
7686         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7687         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7688         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7689         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7690         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7691         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7692         * printcmd.c (info_address_command): Likewise.
7693
7694 2018-05-29  Tom Tromey  <tom@tromey.com>
7695
7696         * windows-nat.c (handle_exception): Update fall-through comment.
7697
7698 2018-05-29  Tom Tromey  <tom@tromey.com>
7699
7700         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7701         (struct program_space) <added_solibs>: Now a std::vector.
7702         * breakpoint.c (print_solib_event): Update.
7703         (check_status_catch_solib): Update.
7704         * progspace.c (clear_program_space_solib_cache): Update.
7705         * solib.c (update_solib_list): Update.
7706
7707 2018-05-29  Tom Tromey  <tom@tromey.com>
7708
7709         * python/py-type.c (typy_richcompare): Update.
7710         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7711         * gdbtypes.h (types_deeply_equal): Return bool.
7712         (types_equal): Likewise.
7713         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7714         declare VEC.
7715         (check_types_equal): Change worklist to std::vector.  Return
7716         bool.
7717         (struct type_equality_entry): Add constructor.
7718         (compare_maybe_null_strings): Return bool.
7719         (check_types_worklist): Return bool.  Change worklist to
7720         std::vector.
7721         (types_deeply_equal): Use std::vector.
7722         (types_equal): Return bool.
7723         (compare_maybe_null_strings): Simplify.
7724
7725 2018-05-29  Tom Tromey  <tom@tromey.com>
7726
7727         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7728
7729 2018-05-29  Tom Tromey  <tom@tromey.com>
7730
7731         * objc-lang.h: Don't include cp-support.h.
7732         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7733         declare VEC.
7734
7735 2018-05-27  Tom Tromey  <tom@tromey.com>
7736
7737         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7738
7739 2018-05-25  Tom Tromey  <tom@tromey.com>
7740
7741         * value.c (value::location): Initialize.
7742
7743 2018-05-25  Tom Tromey  <tom@tromey.com>
7744
7745         * dbxread.c (init_bincl_list): Remove.
7746         (bincl_list): Now a std::vector.
7747         (bincls_allocated, next_bincl): Remove.
7748         (free_bincl_list, do_free_bincl_list_cleanup)
7749         (make_cleanup_free_bincl_list): Remove.
7750         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7751         unique_xmalloc_ptr.
7752         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7753         (struct header_file_location): Add constructor.
7754         (add_bincl_to_list): Remove.
7755
7756 2018-05-25  Tom Tromey  <tom@tromey.com>
7757
7758         * tui/tui.c (tui_enable): Update.
7759         * mi/mi-interp.c (mi_interp::init): Update.
7760         * interps.h (class interp) <name>: New method.
7761         <m_name>: Rename from name.
7762         (~scoped_restore_interp): Update.
7763         * interps.c (interp::interp): Update.
7764         (interp_add, interp_set, interp_lookup_existing)
7765         (current_interp_named_p): Update.
7766
7767 2018-05-25  Tom Tromey  <tom@tromey.com>
7768
7769         * interps.c (interp_name): Remove.
7770         * mi/mi-interp.c (mi_interp::init): Update.
7771         * interps.h (interp_name): Remove.
7772         (~scoped_restore_interp): Update.
7773         * tui/tui.c (tui_enable): Update.
7774
7775 2018-05-25  Tom Tromey  <tom@tromey.com>
7776
7777         * utils.c (fputs_maybe_filtered): Update.
7778         * linespec.c (decode_line_full): Update.
7779         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7780         (mi_print_breakpoint_for_event, mi_solib_loaded)
7781         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7782         (mi_user_selected_context_changed): Update.
7783         * mi/mi-main.c (mi_execute_command): Update.
7784         * cli/cli-script.c (execute_control_command): Update.
7785         * python/python.c (execute_gdb_command): Update.
7786         * solib.c (info_sharedlibrary_command): Update.
7787         * interps.c (interp_ui_out): Remove.
7788         * interps.h (interp_ui_out): Remove.
7789
7790 2018-05-25  Tom Tromey  <tom@tromey.com>
7791
7792         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7793         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7794         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7795
7796 2018-05-25  Tom Tromey  <tom@tromey.com>
7797
7798         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7799         * interps.c (interp_exec): Use scoped_restore.
7800
7801 2018-05-25  Tom Tromey  <tom@tromey.com>
7802
7803         * remote.c (remote_target::remote_file_get): Use
7804         gdb::byte_vector.
7805         (remote_target::remote_file_put): Likewise.
7806
7807 2018-05-25  Tom Tromey  <tom@tromey.com>
7808
7809         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7810         a std::string.
7811         (get_pe_section_index, add_pe_exported_sym): Update.
7812         (read_pe_exported_syms): Use gdb::def_vector.
7813
7814 2018-05-25  Tom Tromey  <tom@tromey.com>
7815
7816         * frame.c (remove_prev_frame): Remove.
7817         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7818
7819 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7820
7821         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7822         Remove prototypes.
7823         * mips-linux-nat.c (supply_fpregset): Always call
7824         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7825         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7826         `mips_fill_fpregset'.
7827         * mips-linux-tdep.c (mips_supply_fpregset)
7828         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7829         (mips_fill_fpregset_wrapper): Remove functions.
7830         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7831         (mips_linux_fpregset): Remove variable.
7832         (mips_linux_iterate_over_regset_sections): Use
7833         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7834         (mips_linux_o32_sigframe_init): Remove comment.
7835
7836 2018-05-25  Pedro Alves  <palves@redhat.com>
7837
7838         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7839         (struct readahead_cache, struct packet_reg, struct
7840         remote_arch_state, class remote_state): Move higher up in the
7841         file.
7842         (remote_target::m_remote_state): Now an object instead of a pointer.
7843         (remote_target::get_remote_state): Adjust.
7844
7845 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7846
7847         * stack.c (select_and_print_frame): Delete.
7848         (struct function_bounds): Move struct within function.
7849         (func_command): Most content moved into new function
7850         find_frame_for_function, use new function, print result, add
7851         function comment.
7852         (find_frame_for_function): New function, now returns a result.
7853
7854 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7855
7856         * stack.c (iterate_over_block_arg_vars): Fix comment.
7857         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7858
7859 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7860
7861         PR gdb/23203
7862         * frame.c
7863         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7864         Define.
7865         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7866         Define.
7867         * frame.h (class scoped_restore_selected_frame): New class.
7868         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7869         of any exception, use scoped_restore_selected_frame to restore the
7870         frame instead.
7871
7872 2018-05-24  Pedro Alves  <palves@redhat.com>
7873
7874         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7875         override.
7876
7877 2018-05-23  Tom Tromey  <tom@tromey.com>
7878
7879         * complaints.c (struct complaints): Remove.
7880         (symfile_complaint_book): Remove.
7881         (series): New global.
7882         (complaint_internal): Update.
7883         (clear_complaints): Update.
7884
7885 2018-05-23  Tom Tromey  <tom@tromey.com>
7886
7887         * complaints.c (counters): New global.
7888         (struct complain): Remove.
7889         (struct complaints) <root>: Remove.
7890         (complaint_sentinel): Remove.
7891         (symfile_complaint_book): Update.
7892         (find_complaint) Remove.
7893         (complaint_internal, clear_complaints): Update.
7894
7895 2018-05-23  Tom Tromey  <tom@tromey.com>
7896
7897         * complaints.c (struct complain) <file, line>: Remove.
7898         (find_complaint): Remove file, line parameters.
7899         (complaint_internal): Update.
7900
7901 2018-05-23  Tom Tromey  <tom@tromey.com>
7902
7903         * complaints.c (vcomplaint): Remove.
7904         (complaint_internal) Merge in contents of vcomplaint.
7905
7906 2018-05-23  Tom Tromey  <tom@tromey.com>
7907
7908         * complaints.c (struct complaints) <explanation>: Remove.
7909         (symfile_explanations): Remove.
7910         (symfile_complaint_book): Update.
7911         (vcomplaint): Update.
7912         (struct explanation): Remove.
7913
7914 2018-05-23  Tom Tromey  <tom@tromey.com>
7915
7916         * complaints.c (symfile_complaints): Remove.
7917         (complaint_internal): Remove "complaints" parameter.
7918         (clear_complaints, vcomplaint): Remove "c" parameter.
7919         (get_complaints): Remove.
7920         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7921         (dwarf2_debug_line_missing_file_complaint)
7922         (dwarf2_debug_line_missing_end_sequence_complaint)
7923         (dwarf2_complex_location_expr_complaint)
7924         (dwarf2_const_value_length_mismatch_complaint)
7925         (dwarf2_section_buffer_overflow_complaint)
7926         (dwarf2_macro_malformed_definition_complaint)
7927         (dwarf2_invalid_attrib_class_complaint)
7928         (create_addrmap_from_index, dw2_symtab_iter_next)
7929         (dw2_expand_marked_cus)
7930         (dw2_debug_names_iterator::find_vec_in_debug_names)
7931         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7932         (create_debug_type_hash_table, init_cutu_and_read_dies)
7933         (partial_die_parent_scope, add_partial_enumeration)
7934         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7935         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7936         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7937         (create_cus_hash_table, create_dwp_hash_table)
7938         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7939         (dwarf2_rnglists_process, dwarf2_ranges_process)
7940         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7941         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7942         (handle_struct_member_die, process_structure_scope)
7943         (read_array_type, read_common_block, read_module_type)
7944         (read_tag_pointer_type, read_typedef, read_base_type)
7945         (read_subrange_type, load_partial_dies, partial_die_info::read)
7946         (partial_die_info::read, partial_die_info::read)
7947         (partial_die_info::read, read_checked_initial_length_and_offset)
7948         (dwarf2_string_attr, read_formatted_entries)
7949         (dwarf_decode_line_header)
7950         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7951         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7952         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7953         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7954         (get_signatured_type, get_DW_AT_signature_type)
7955         (decode_locdesc, file_file_name, consume_improper_spaces)
7956         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7957         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7958         (dwarf2_symbol_mark_computed, set_die_type)
7959         (read_attribute_value): Update.
7960         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7961         Update.
7962         * dbxread.c (unknown_symtype_complaint)
7963         (lbrac_mismatch_complaint, repeated_header_complaint)
7964         (set_namestring, function_outside_compilation_unit_complaint)
7965         (read_dbx_symtab, process_one_symbol): Update.
7966         * gdbtypes.c (stub_noname_complaint): Update.
7967         * windows-nat.c (handle_unload_dll): Update.
7968         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7969         (decode_base_type): Update.
7970         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7971         (eb_complaint, record_include_begin, record_include_end)
7972         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7973         (process_xcoff_symbol, read_symbol)
7974         (function_outside_compilation_unit_complaint)
7975         (scan_xcoff_symtab): Update.
7976         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7977         * buildsym.c (finish_block_internal, make_blockvector)
7978         (end_symtab_get_static_block, augment_type_symtab): Update.
7979         * dtrace-probe.c (dtrace_process_dof)
7980         (dtrace_static_probe_ops::get_probes): Update.
7981         * complaints.h (struct complaint): Don't declare.
7982         (symfile_complaints): Remove.
7983         (complaint_internal): Remove "complaints" parameter.
7984         (complaint): Likewise.
7985         (clear_complaints): Likewise.
7986         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7987         (reread_symbols): Update.
7988         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7989         (dwarf2_frame_cache, decode_frame_entry): Update.
7990         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7991         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7992         (info_selectors_command): Update.
7993         * macrotab.c (macro_include, check_for_redefinition)
7994         (macro_undef): Update.
7995         * objfiles.c (filter_overlapping_sections): Update.
7996         * stabsread.c (invalid_cpp_abbrev_complaint)
7997         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7998         (define_symbol, error_type, read_type, rs6000_builtin_type)
7999         (stabs_method_name_from_physname, read_member_functions)
8000         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8001         (attach_fields_to_type, complain_about_struct_wipeout)
8002         (read_range_type, read_args, common_block_start)
8003         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8004         Update.
8005         * mdebugread.c (index_complaint, unknown_ext_complaint)
8006         (basic_type_complaint, bad_tag_guess_complaint)
8007         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8008         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8009         (parse_procedure, parse_lines)
8010         (function_outside_compilation_unit_complaint)
8011         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8012         (bad_tag_guess_complaint, reg_value_complaint): Update.
8013         * cp-support.c (demangled_name_complaint): Update.
8014         * macroscope.c (sal_macro_scope): Update.
8015         * dwarf-index-write.c (class debug_names): Update.
8016
8017 2018-05-23  Tom Tromey  <tom@tromey.com>
8018
8019         * complaints.c (clear_complaints): Remove "noisy" parameter.
8020         * complaints.h (clear_complaints): Update.
8021         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8022         (reread_symbols): Update.
8023
8024 2018-05-23  Tom Tromey  <tom@tromey.com>
8025
8026         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8027         SUBSEQUENT_MESSAGE.
8028         (vcomplaint, clear_complaints): Update.
8029         (symfile_explanations): Remove some messages.
8030
8031 2018-05-23  Tom Tromey  <tom@tromey.com>
8032
8033         * complaints.c (internal_complaint): Remove.
8034         * complaints.h (internal_complaint): Remove.
8035
8036 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8037
8038         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
8039
8040 2018-05-22  Pedro Alves  <palves@redhat.com>
8041
8042         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
8043         (remote_fileio_badfd, remote_fileio_return_errno)
8044         (remote_fileio_return_success, remote_fileio_func_open)
8045         (remote_fileio_func_open, remote_fileio_func_close)
8046         (remote_fileio_func_read, remote_fileio_func_write)
8047         (remote_fileio_func_lseek, remote_fileio_func_rename)
8048         (remote_fileio_func_unlink, remote_fileio_func_stat)
8049         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
8050         (remote_fileio_func_isatty, remote_fileio_func_system): Add
8051         remote_target parameter.
8052         (remote_fio_func_map) <func>: Add remote_target parameter.
8053         (do_remote_fileio_request, remote_fileio_request):
8054         * remote-fileio.h (remote_fileio_request):
8055         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
8056         remote_target parameter.
8057         (remote_notif_process, handle_notification): Adjust to pass down
8058         the remote.
8059         (remote_notif_state_allocate): Add remote_target parameter.  Save
8060         it.
8061         * remote-notif.h (struct remote_target): Forward declare.
8062         (struct notif_client) <parse, ack, can_get_pending_events>: Add
8063         remote_target parameter.
8064         (struct remote_notif_state) <remote>: New field.
8065         (remote_notif_ack, remote_notif_parse): Add remote_target
8066         parameter.
8067         (remote_notif_state_allocate, remote_notif_state_allocate): Add
8068         remote_target parameter.
8069         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
8070         (threads_listing_context, rmt_thread_action, protocol_feature)
8071         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
8072         (packet_result, struct threads_listing_context, remote_state):
8073         Move definitions and declarations higher up.
8074         (remote_target) <~remote_target>: Declare.
8075         (remote_download_command_source, remote_file_put, remote_file_get)
8076         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
8077         (remote_hostio_pread_vFile, remote_hostio_send_command)
8078         (remote_hostio_set_filesystem, remote_hostio_open)
8079         (remote_hostio_close, remote_hostio_unlink, remote_state)
8080         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
8081         (get_memory_write_packet_size, get_memory_read_packet_size)
8082         (append_pending_thread_resumptions, remote_detach_1)
8083         (append_resumption, remote_resume_with_vcont)
8084         (add_current_inferior_and_thread, wait_ns, wait_as)
8085         (process_stop_reply, remote_notice_new_inferior)
8086         (process_initial_stop_replies, remote_add_thread)
8087         (btrace_sync_conf, remote_btrace_maybe_reopen)
8088         (remove_new_fork_children, kill_new_fork_children)
8089         (discard_pending_stop_replies, stop_reply_queue_length)
8090         (check_pending_events_prevent_wildcard_vcont)
8091         (discard_pending_stop_replies_in_queue, stop_reply)
8092         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8093         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8094         (remote_interrupt_as, remote_interrupt_ns)
8095         (remote_get_noisy_reply, remote_query_attached)
8096         (remote_add_inferior, remote_current_thread, get_current_thread)
8097         (set_thread, set_general_thread, set_continue_thread)
8098         (set_general_process, write_ptid)
8099         (remote_unpack_thread_info_response, remote_get_threadinfo)
8100         (parse_threadlist_response, remote_get_threadlist)
8101         (remote_threadlist_iterator, remote_get_threads_with_ql)
8102         (remote_get_threads_with_qxfer)
8103         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8104         (get_offsets, remote_check_symbols, remote_supported_packet)
8105         (remote_query_supported, remote_packet_size)
8106         (remote_serial_quit_handler, remote_detach_pid)
8107         (remote_vcont_probe, remote_resume_with_hc)
8108         (send_interrupt_sequence, interrupt_query)
8109         (remote_notif_get_pending_events, fetch_register_using_p)
8110         (send_g_packet, process_g_packet, fetch_registers_using_g)
8111         (store_register_using_P, store_registers_using_G)
8112         (set_remote_traceframe, check_binary_download)
8113         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8114         (remote_xfer_live_readonly_partial, remote_read_bytes)
8115         (remote_send_printf, remote_flash_write, readchar)
8116         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8117         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8118         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8119         (extended_remote_disable_randomization, extended_remote_run)
8120         (send_environment_packet, extended_remote_environment_support)
8121         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8122         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8123         (packet_command): Now methods of ...
8124         (remote_target): ... this class.
8125         (m_remote_state) <remote_target>: New field.
8126         (struct remote_state) <stop_reply_queue,
8127         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8128         fields.
8129         (remote_state::remote_state): Allocate stop_reply_queue.
8130         (remote_state): Delete global.
8131         (get_remote_state_raw): Delete.
8132         (remote_target::get_remote_state): Allocate m_remote_state on
8133         demand.
8134         (get_current_remote_target): New.
8135         (remote_ops, extended_remote_ops): Delete.
8136         (wait_forever_enabled_p, remote_async_inferior_event_token):
8137         Delete, moved to struct remote_state.
8138         (remote_target::close): Delete self.  Destruction bits split to
8139         ...
8140         (remote_target::~remote_target): ... this.
8141         (show_memory_packet_size): Adjust to use
8142         get_current_remote_target.
8143         (struct protocol_feature) <func>: Add remote_target parameter.
8144         All callers adjusted.
8145         (curr_quit_handler_target): New.
8146         (remote_serial_quit_handler): Reimplement.
8147         (remote_target::open_1): Adjust to use get_current_remote_target.
8148         Heap-allocate remote_target/extended_remote_target instances.
8149         (vcont_builder::vcont_builder): Add remote_target parameter, and
8150         save it in m_remote.  All callers adjusted.
8151         (vcont_builder::m_remote): New field.
8152         (vcont_builder::restart, vcont_builder::flush)
8153         (vcont_builder::push_action): Use it.
8154         (remote_target::commit_resume): Use it.
8155         (struct queue_iter_param) <remote>: New field.
8156         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8157         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8158         (check_pending_event_prevents_wildcard_vcont_callback)
8159         (remote_target::check_pending_events_prevent_wildcard_vcont)
8160         (remote_target::discard_pending_stop_replies)
8161         (remote_target::discard_pending_stop_replies_in_queue)
8162         (remote_target::remote_notif_remove_queued_reply): Fill in
8163         'remote' field.
8164         (remote_notif_get_pending_events): New.
8165         (remote_target::readchar, remote_target::remote_serial_write):
8166         Save/restore curr_quit_handler_target.
8167         (putpkt): New.
8168         (kill_new_fork_children): Fill in 'remote' field.
8169         (packet_command): Use get_current_remote_target, defer to
8170         remote_target method of same name.
8171         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8172         parameter, and save it in m_remote.  All callers adjusted.
8173         (scoped_remote_fd::release): Use m_remote.
8174         (scoped_remote_fd::m_remote): New field.
8175         (remote_file_put, remote_file_get, remote_file_delete): Use
8176         get_current_remote_target, defer to remote_target method of same
8177         name.
8178         (remote_btrace_reset): Add remote_state paremeter.  Update all
8179         callers.
8180         (remote_async_inferior_event_handler). Pass down 'data'.
8181         (remote_new_objfile): Use get_current_remote_target.
8182         (remote_target::vcont_r_supported): New.
8183         (set_range_stepping): Use get_current_remote_target and
8184         remote_target::vcont_r_supported.
8185         (_initialize_remote): Don't allocate 'remote_state' and
8186         'stop_reply_queue' globals.
8187         * remote.h (struct remote_target): Forward declare.
8188         (getpkt, putpkt, remote_notif_get_pending_events): Add
8189         'remote_target' parameter.
8190
8191 2018-05-22  Pedro Alves  <palves@redhat.com>
8192
8193         * remote.c (vcont_builder): Now a class.  Make all data members
8194         private.
8195         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8196         Declare methods.
8197         (vcont_builder_restart): Rename to ...
8198         (vcont_builder::restart): ... this.
8199         (vcont_builder_flush): Rename to ...
8200         (vcont_builder::flush): ... this.
8201         (vcont_builder_push_action): Rename to ...
8202         (vcont_builder::push_action): ... this.
8203         (remote_target::commit_resume): Adjust.
8204
8205 2018-05-22  Pedro Alves  <palves@redhat.com>
8206
8207         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8208         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8209         (get_fixed_memory_packet_size): New.
8210         (get_memory_packet_size): Use it.
8211         (set_memory_packet_size): Don't override the config size with
8212         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8213         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8214         Don't refer to get_memory_packet_size if not connected to a remote
8215         target.  Show "(default)" if configured size is 0.
8216
8217 2018-05-22  Pedro Alves  <palves@redhat.com>
8218
8219         * remote.c (remote_target::mourn_inferior): Move
8220         discard_pending_stop_replies call here from ...
8221         (_initialize_remote): ... here.
8222
8223 2018-05-22  Pedro Alves  <palves@redhat.com>
8224
8225         * remote.c (compare_section_command): Remove set_general_process
8226         call.
8227
8228 2018-05-22  Pedro Alves  <palves@redhat.com>
8229
8230         * remote.c (struct packet_reg, struct remote_arch_state):
8231         Move higher up in the file.
8232         (remote_state) <m_arch_states>: Store remote_arch_state values
8233         instead of remote_arch_state pointers.
8234         (remote_state::get_remote_arch_state): Adjust.
8235
8236 2018-05-22  Pedro Alves  <palves@redhat.com>
8237
8238         * remote.c: Include <unordered_map>.
8239         (remote_state): Now a class.
8240         (remote_state) <get_remote_arch_state>: Declare method.
8241         <get_remote_arch_state>: New field.
8242         (remote_arch_state) <remote_arch_state>: Declare ctor.
8243         <regs>: Now a unique_ptr.
8244         (remote_gdbarch_data_handle): Delete.
8245         (get_remote_arch_state): Delete.
8246         (remote_state::get_remote_arch_state): New.
8247         (get_remote_state): Adjust to call remote_state's
8248         get_remote_arch_state method.
8249         (init_remote_state): Delete, bits factored out to ...
8250         (remote_arch_state::remote_arch_state): ... this new method.
8251         (get_remote_packet_size, get_memory_packet_size)
8252         (process_g_packet, remote_target::fetch_registers)
8253         (remote_target::prepare_to_store, store_registers_using_G)
8254         (remote_target::store_registers, remote_target::get_trace_status):
8255         Adjust to call remote_state's method.
8256         (_initialize_remote): Remove reference to
8257         remote_gdbarch_data_handle.
8258
8259 2018-05-22  Pedro Alves  <palves@redhat.com>
8260
8261         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8262         pread>: New method declarations.
8263         (remote_target::open_1): Adjust.
8264         (readahead_cache_invalidate): Rename to ...
8265         (readahead_cache::invalidate): ... this, and adjust to be a class
8266         method.
8267         (readahead_cache_invalidate_fd): Rename to ...
8268         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8269         class method.
8270         (remote_hostio_pwrite): Adjust.
8271         (remote_hostio_pread_from_cache): Rename to ...
8272         (readahead_cache::pread): ... this, and adjust to be a class
8273         method.
8274         (remote_hostio_close): Adjust.
8275
8276 2018-05-22  Pedro Alves  <palves@redhat.com>
8277
8278         * remote.c (remote_hostio_close_cleanup): Delete.
8279         (class scoped_remote_fd): New.
8280         (remote_file_put, remote_file_get): Use it.
8281
8282 2018-05-22  Pedro Alves  <palves@redhat.com>
8283
8284         (struct vCont_action_support): Use bool and initialize all fields.
8285         (struct readahead_cache): Initialize all fields.
8286         (remote_state): Use bool and initialize all fields.
8287         (remote_state::remote_state, remote_state::~remote_state): New.
8288         (new_remote_state): Delete.
8289         (_initialize_remote): Use new to allocate remote_state.
8290
8291 2018-05-22  Pedro Alves  <palves@redhat.com>
8292             張俊芝  <zjz@zjz.name>
8293
8294         PR gdb/22973
8295         * c-exp.y: Include "c-support.h".
8296         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8297         of tolower.  Use c_ident_is_alpha to scan names.
8298         * c-lang.c: Include "c-support.h".
8299         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8300         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8301         * c-support.h: New file, with bits factored out from ...
8302         * cp-name-parser.y: ... this file.
8303         Include "c-support.h".
8304         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8305         c-support.h and renamed.
8306         (symbol_end, yylex): Adjust.
8307
8308 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8309
8310         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8311         parameter type to CORE_ADDR.
8312         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8313         parameter type in declaration to CORE_ADDR.
8314         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8315         target_auxv_search to get AT_HWCAP and use the result to get the
8316         target description.
8317         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8318         to CORE_ADDR. Remove the cast of the return value to unsigned
8319         long. Fix error predicate of target_auxv_search.
8320         (ppc_linux_nat_target::read_description): Change the type of the
8321         hwcap variable to CORE_ADDR.
8322
8323 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8324
8325         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8326         if the size of fpscr is larger than 32 bits.
8327
8328 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8329
8330         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8331         (ppc32_linux_vsxregmap): New global.
8332         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8333         regcache_supply_regset, and regcache_collect_regset.
8334         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8335         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8336         (fetch_vsx_register, store_vsx_register): Remove.
8337         (fetch_vsx_registers): Add regno parameter. Get regset using
8338         ppc_linux_vsxregset. Use regset to supply registers.
8339         (store_vsx_registers): Add regno parameter. Get regset using
8340         ppc_linux_vsxregset. Use regset to collect registers.
8341         (fetch_register): Call fetch_vsx_registers instead of
8342         fetch_vsx_register.
8343         (store_register): Call store_vsx_registers instead of
8344         store_vsx_register.
8345         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8346         new regno parameter.
8347         (store_ppc_registers): Call store_vsx_registers with -1 for the
8348         new regno parameter.
8349         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8350         (ppc_collect_vsxregset): Remove.
8351
8352 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8353
8354         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8355         offset fields.
8356         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8357         for vector register offset fields.
8358         (ppc64_fbsd_reg_offsets): Likewise.
8359         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8360         to vector register offset fields.
8361         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8362         to vector register offset fields.
8363         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8364         vector register offset fields.
8365         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8366         initializers for vector register offset fields.
8367         (rs6000_aix64_reg_offsets): Likewise.
8368         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8369         (ppc_supply_vrregset): Remove.
8370         (ppc_collect_vrregset): Remove.
8371         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8372         (ppc_linux_vrregset) : New function.
8373         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8374         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8375         (ppc32_linux_vrregset): Remove.
8376         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8377         and use result instead of ppc32_linux_vrregset.
8378         (ppc32_linux_reg_offsets): Remove initializers for vector register
8379         offset fields.
8380         (ppc64_linux_reg_offsets): Likewise.
8381         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8382         * ppc-linux-nat.c: Include regset.h.
8383         (gdb_vrregset_t): Adjust comment to account for little-endian
8384         mode.
8385         (supply_vrregset, fill_vrregset): Remove.
8386         (fetch_altivec_register, store_altivec_register): Remove.
8387         (fetch_altivec_registers): Add regno parameter. Get regset using
8388         ppc_linux_vrregset. Use regset to supply registers.
8389         (store_altivec_registers): Add regno parameter. Get regset using
8390         ppc_linux_vrregset. Use regset to collect registers.
8391         (fetch_register): Call fetch_altivec_registers instead of
8392         fetch_altivec_register.
8393         (store_register): Call store_altivec_registers instead of
8394         store_altivec_register.
8395         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8396         the new regno parameter.
8397         (store_ppc_registers): Call store_altivec_registers with -1 for
8398         the new regno parameter.
8399
8400 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8401
8402         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8403         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8404         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8405         (gdb_vrregset_t): Change array type size to
8406         PPC_LINUX_SIZEOF_VRREGSET.
8407         (gdb_vsxregset_t): Change array type size to
8408         PPC_LINUX_SIZEOF_VSXREGSET.
8409         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8410         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8411         PPC_LINUX_SIZEOF_VSXREGSET.
8412
8413 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8414
8415         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8416         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8417         nat/ppc-linux.c.
8418         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8419         ppc_linux_target_wordsize with tid.
8420         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8421         wordsize with tid.
8422         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8423         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8424         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8425         tid parameter. Remove static specifier.
8426         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8427         (ppc_linux_target_wordsize): New declaration.
8428
8429 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8430
8431         * arch/ppc-linux-common.c: New file.
8432         * arch/ppc-linux-common.h: New file.
8433         * arch/ppc-linux-tdesc.h: New file.
8434         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8435         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8436         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8437         arch/ppc-linux-tdesc.h.
8438         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8439         arch/ppc-linux-tdesc.h.
8440         (ppc_linux_nat_target::read_description): Remove target
8441         description matching code. Fill a ppc_linux_features struct and
8442         call ppc_linux_match_description with it. Move comment about ISA
8443         2.05 to ppc-linux-common.c.
8444         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8445         arch/ppc-linux-tdesc.h.
8446         (ppc_linux_core_read_description): Remove target description
8447         matching code. Fill a ppc_linux_features struct and call
8448         ppc_linux_match_description with it.
8449         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8450         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8451         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8452         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8453         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8454         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8455         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8456         (tdesc_powerpc_e500l): Remove.
8457
8458 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8459
8460         * ada-lang.c (catch_assert_command): Pass empty string instead
8461         of NULL for excep_string argument.
8462
8463 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8464
8465         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8466         the width of the requested register exceeds the width of the
8467         `ptrace' data type.
8468
8469 2018-05-21  Tom Tromey  <tom@tromey.com>
8470
8471         * printcmd.c (output_command): Remove.
8472         (output_command_const): Rename to output_command.
8473         * valprint.h (output_command): Rename from output_command_const.
8474         * tracepoint.c (trace_dump_actions): Call output_command.
8475
8476 2018-05-21  Tom Tromey  <tom@tromey.com>
8477
8478         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8479         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8480         * ada-lang.h (create_ada_exception_catchpoint): Update.
8481         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8482         std::string.
8483         (create_excep_cond_exprs, ~ada_catchpoint)
8484         (should_stop_exception, print_one_exception)
8485         (print_mention_exception, print_recreate_exception): Update.
8486         (ada_get_next_arg): Remove.
8487         (catch_ada_exception_command_split): Use std::string.  Change type
8488         of "excep_string", "cond_string".
8489         (catch_ada_exception_command): Update.
8490         (create_ada_exception_catchpoint): Change type of excep_string.
8491         (ada_exception_sal): Remove excep_string parameter.
8492         (~ada_catchpoint): Remove.
8493
8494 2018-05-21  Tom Tromey  <tom@tromey.com>
8495
8496         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8497         cleanup.
8498
8499 2018-05-21  Tom Tromey  <tom@tromey.com>
8500
8501         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8502         Return unique_xmalloc_ptr.
8503         (print_it_exception): Update.
8504
8505 2018-05-21  Tom Tromey  <tom@tromey.com>
8506
8507         * tracepoint.c (trace_dump_actions): Use std::string.
8508
8509 2018-05-21  Tom Tromey  <tom@tromey.com>
8510
8511         * symfile.c (reread_symbols): Use std::string for original_name.
8512
8513 2018-05-21  Tom Tromey  <tom@tromey.com>
8514
8515         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8516         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8517         constructor.
8518
8519 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8520
8521         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8522         instance to...
8523         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8524         * objfiles.c (get_objfile_bfd_data): Allocate
8525         objfile_per_bfd_storage with obstack_new when allocating on
8526         obstack.
8527
8528 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8529
8530         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8531         OBSTACK_ZALLOC.
8532         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8533         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8534         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8535         (add_pending): Likewise.
8536         (parse_symbol): Likewise.
8537         (parse_partial_symbols): Likewise.
8538         (psymtab_to_symtab_1): Likewise.
8539         (new_psymtab): Likewise.
8540         (elfmdebug_build_psymtabs): Likewise.
8541         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8542         * objfiles.c (get_objfile_bfd_data): Likewise.
8543         (objfile_register_static_link): Likewise.
8544         * psymtab.c (allocate_psymtab): Likewise.
8545         * stabsread.c (read_member_functions): Likewise.
8546         * xcoffread.c (xcoff_end_psymtab): Likewise.
8547
8548 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8549
8550         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8551         compiler supports std::is_trivially_constructible.
8552         * common/poison.h: Include obstack.h.
8553         (IsMallocable): Define to is_trivially_constructible if the
8554         compiler supports it, define to true_type otherwise.
8555         (xobnew): New.
8556         (XOBNEW): Redefine.
8557         (xobnewvec): New.
8558         (XOBNEWVEC): Redefine.
8559         * gdb_obstack.h (obstack_zalloc): New.
8560         (OBSTACK_ZALLOC): Redefine.
8561         (obstack_calloc): New.
8562         (OBSTACK_CALLOC): Redefine.
8563         (obstack_new): New.
8564         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8565         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8566         gdbarch.c.
8567         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8568         obstack_calloc/obstack_zalloc.
8569         (gdbarch_obstack_zalloc): Remove.
8570         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8571
8572 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8573
8574         * stack.c (backtrace_command_1): Remove useless variable int i.
8575
8576 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8577
8578         * stack.c (print_frame_info): Fix comment.
8579
8580 2018-05-18  Tom Tromey  <tom@tromey.com>
8581
8582         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8583         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8584         (~dwarf2_per_objfile): Update
8585         (dwarf2_get_dwz_file): Use new.
8586         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8587         unique_ptr.
8588
8589 2018-05-18  Tom Tromey  <tom@tromey.com>
8590
8591         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8592         unique_ptr.
8593         * dwarf2read.c (struct dwp_file): Add constructor and
8594         initializers.
8595         (open_and_init_dwp_file): Return a unique_ptr.
8596         (dwarf2_per_objfile, create_dwp_hash_table)
8597         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8598         (lookup_dwo_unit_in_dwp): Update.
8599         (open_and_init_dwp_file, get_dwp_file): Update.
8600
8601 2018-05-18  Tom Tromey  <tom@tromey.com>
8602
8603         * dwarf2read.c (dwarf2_per_objfile): Update.
8604         (struct mapped_index): Add initializers.
8605         (dwarf2_read_index): Use new.
8606         (dw2_symtab_iter_init): Update.
8607         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8608         unique_ptr.
8609
8610 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8611
8612         * dwarf2read.c (mapped_index) <total_size>: Remove.
8613
8614 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8615
8616         * unittests/format_pieces-selftests.c (test_format_specifier):
8617         Add ARI comments.
8618
8619 2018-05-18  Tom Tromey  <tom@tromey.com>
8620
8621         * c-typeprint.c (maybe_print_hole): New function.
8622         (c_print_type_struct_field_offset): Update.
8623         (c_type_print_base_struct_union): Call maybe_print_hole.
8624
8625 2018-05-17  Keith Seitz  <keiths@redhat.com>
8626
8627         * breakpoint.c (build_bpstat_chain): New function, moved from
8628         bpstat_stop_status.
8629         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8630         If no stop chain is passed, call build_bpstat_chain to build it.
8631         * breakpoint.h (build_bpstat_chain): Declare.
8632         (bpstat_stop_status): Move documentation here from breakpoint.c.
8633         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8634         build the stop chain and pass it to skip_inline_frames.
8635         Pass this stop chain to bpstat_stop_status.
8636         * inline-frame.c: Include breakpoint.h.
8637         (stopped_by_user_bp_inline_frame): New function.
8638         (skip_inline_frames): Add parameter `stop_chain'.
8639         Move documention to inline-frame.h.
8640         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8641         whether the frame should be elided.
8642         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8643         Add moved documentation and update for new parameter.
8644
8645 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8646
8647         PR cli/14975
8648         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8649         unittests/format_pieces-selftests.c.
8650         * common/format.h (format_piece) <operator==>: New.
8651         (format_pieces) <operator[]>: Remove.
8652         * common/format.c (format_pieces::format_pieces): Handle \e.
8653         * unittests/format_pieces-selftests.c: New.
8654
8655 2018-05-17  Tom Tromey  <tom@tromey.com>
8656
8657         PR symtab/23010:
8658         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8659         (dw2_instantiate_symtab): Add skip_partial parameter.
8660         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8661         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8662         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8663         (dw2_expand_symtabs_matching_one)
8664         (dw2_find_pc_sect_compunit_symtab)
8665         (dw2_debug_names_lookup_symbol)
8666         (dw2_debug_names_expand_symtabs_for_function): Update.
8667         (init_cutu_and_read_dies): Add skip_partial parameter.
8668         (process_psymtab_comp_unit, build_type_psymtabs_1)
8669         (process_skeletonless_type_unit, load_partial_comp_unit)
8670         (psymtab_to_symtab_1): Update.
8671         (load_full_comp_unit): Add skip_partial parameter.
8672         (process_imported_unit_die, dwarf2_read_addr_index)
8673         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8674         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8675         (read_signatured_type): Update.
8676
8677 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8678
8679         * value.c (release_value): Remove unused variable.
8680         (record_latest_value): Likewise.
8681         (access_value_history): Likewise.
8682         (preserve_values): Likewise.
8683
8684 2018-05-17  Tom Tromey  <tom@tromey.com>
8685
8686         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8687         Initialize.
8688
8689 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8690
8691         PR gdb/22286
8692         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8693         Also handle registers whose width is not a multiple of
8694         PTRACE_TYPE_RET.
8695         (linux_nat_trad_target::store_register): Likewise.
8696
8697 2018-05-16  Tom Tromey  <tom@tromey.com>
8698
8699         * gdbcore.h (core_bfd): Redefine.
8700         * corelow.c (core_target::close): Update.
8701         (core_target_open): Update.
8702         * progspace.h (struct program_space) <cbfd>: Now a
8703         gdb_bfd_ref_ptr.
8704
8705 2018-05-16  Tom Tromey  <tom@tromey.com>
8706
8707         PR cli/19551:
8708         * symfile-add-flags.h (enum symfile_add_flags)
8709         <SYMFILE_NOT_FILENAME>: New constant.
8710         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8711         objfile name from BFD.
8712         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8713         * minidebug.c (find_separate_debug_file_in_section): Put
8714         ".gnu_debugdata" into BFD's file name.
8715
8716 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8717
8718         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8719         Remove.
8720
8721 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8722
8723         PR binutils/21446
8724         * aarch64-tdep.c (aarch64_analyze_prologue,
8725         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8726         Indicate not interested in errors.
8727
8728 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8729
8730         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8731         Supply the MIPS_ZERO_REGNUM register.
8732
8733 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8734
8735         * mips-tdep.c (mask_address_var): Make variable static.
8736
8737 2018-05-14  Tom Tromey  <tom@tromey.com>
8738
8739         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8740
8741 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8742
8743         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8744         FXSAVE_ADDR for the mxcsr register.
8745
8746 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8747
8748         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8749
8750 2018-05-11  Pedro Alves  <palves@redhat.com>
8751
8752         * corelow.c (core_target) <core_target>: No longer inline.
8753         Initialize m_core_gdbarch, m_core_vec and build the section table
8754         here.
8755         <~core_target>: New.
8756         <core_gdbarch, get_core_register_section>: New methods.
8757         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8758         factored out from ...
8759         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8760         (core_ops): Delete.
8761         (sniff_core_bfd): Add gdbarch parameter.
8762         (core_close): Delete, merged into ...
8763         (core_target::close): ... here.  Delete self.
8764         (core_close_cleanup): Delete.
8765         (core_target_open): Allocate a core_target on the heap.  Use a
8766         unique_ptr instead of a cleanup.  Bits moved into the core_target
8767         ctor.  Adjust to use core_target methods instead of globals.
8768         (get_core_register_section): Rename to ...
8769         (core_target::get_core_register_section): ... this and adjust.
8770         (struct get_core_registers_cb_data): New.
8771         (get_core_registers_cb): Use it.  Use bool.
8772         (core_target::fetch_registers, core_target::files_info)
8773         (core_target::xfer_partial, core_target::read_description)
8774         (core_target::pid_to, core_target::thread_name): Adjust to
8775         reference class fields instead of globals.
8776         * target.h (struct target_ops_deleter, target_ops_up): New.
8777
8778 2018-05-11  Pedro Alves  <palves@redhat.com>
8779
8780         * corefile.c (core_file_command): Move to corelow.c.
8781         * corelow.c (the_core_target): Delete.
8782         (core_file_command): Moved from corefile.c.  Check exec_bfd
8783         instead of the_core_target.  Use target_detach instead of calling
8784         into the_core_target directly.
8785         (maybe_say_no_core_file_now): New.
8786         (core_target::detach): Use it.
8787         (_initialize_corelow): Remove references to the_core_target.
8788         * gdbcore.h (the_core_target): Delete.
8789
8790 2018-05-11  Tom Tromey  <tromey@redhat.com>
8791             Pedro Alves  <palves@redhat.com>
8792
8793         * corefile.c (core_bfd): Remove.
8794         * gdbcore.h (core_bfd): Now a macro.
8795         * progspace.h (struct program_space) <cbfd>: New field.
8796
8797 2018-05-11  Tom Tromey  <tom@tromey.com>
8798
8799         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8800         gdb::def_vector.
8801
8802 2018-05-10  Tom Tromey  <tom@tromey.com>
8803
8804         * configure: Rebuild.
8805         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8806
8807 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8808
8809         PR server/23158:
8810         * regformats/regdat.sh: Adjust script, following the addition
8811         of the new expedite_regs parameter to init_target_desc.
8812
8813 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8814     
8815         PR gdb/23127
8816         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8817         set_gdbarch_significant_addr_bit.
8818         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8819         set_gdbarch_significant_addr_bit.
8820         * utils.c (address_significant): Update to sign extend addr.
8821
8822 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8823
8824         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8825         (xtensa_linux_init_abi): Limit tdep->num_regs by
8826         tdep->num_nopriv_regs.
8827         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8828         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8829         not initialized.
8830
8831 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8832
8833         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8834
8835 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8836
8837         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8838         (I387_MXCSR_INIT_VAL): New constant.
8839         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8840         buffer if it was supplied by the inferior.
8841         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8842         (i387_xsave_get_clear_bv): New function.
8843         (i387_supply_xsave): Only read x87 control registers from the
8844         xsave buffer if the feature is enabled, and the state will have
8845         been written, otherwise, provide a suitable default.
8846         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8847         including x87 control registers.  Update control registers if they
8848         have changed from the default value, and mark features as enabled
8849         as required.
8850         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8851
8852 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8853
8854         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8855
8856 2018-05-07  Tom Tromey  <tom@tromey.com>
8857
8858         * configure: Rebuild.
8859         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8860
8861 2018-05-07  Tom Tromey  <tom@tromey.com>
8862
8863         PR tdep/20362:
8864         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8865         bit.  Use correct value for VDIV.
8866
8867 2018-05-04  Tom Tromey  <tom@tromey.com>
8868
8869         * configure: Rebuild.
8870         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8871
8872 2018-05-04  Tom Tromey  <tom@tromey.com>
8873
8874         * linux-record.c (record_linux_system_call) <case
8875         RECORD_SYS_RECVFROM>: Add "break".
8876
8877 2018-05-04  Tom Tromey  <tom@tromey.com>
8878
8879         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8880         Add missing "break".
8881         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8882         Add missing "break".
8883
8884 2018-05-04  Tom Tromey  <tom@tromey.com>
8885
8886         * rs6000-tdep.c (ppc_process_record_op4)
8887         (ppc_process_record_op63): Add fall-through comment.
8888
8889 2018-05-04  Tom Tromey  <tom@tromey.com>
8890
8891         * i386-tdep.c (i386_process_record): Add fall-through comment.
8892
8893 2018-05-04  Tom Tromey  <tom@tromey.com>
8894
8895         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8896         comment.
8897
8898 2018-05-04  Tom Tromey  <tom@tromey.com>
8899
8900         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8901         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8902         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8903         comment.
8904         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8905         comment.
8906         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8907         comment.
8908
8909 2018-05-04  Tom Tromey  <tom@tromey.com>
8910
8911         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8912
8913 2018-05-04  Tom Tromey  <tom@tromey.com>
8914
8915         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8916         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8917         * symfile.c (section_is_mapped): Fix fall-through comment.
8918         * stabsread.c (define_symbol, read_member_functions): Fix
8919         fall-through comment.
8920         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8921         comment.
8922         * remote.c (remote_wait_as): Fix fall-through comment.
8923         * p-exp.y (yylex): Fix fall-through comment.
8924         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8925         comment.
8926         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8927         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8928         * jv-exp.y (yylex): Fix fall-through comment.
8929         * go-exp.y (lex_one_token): Fix fall-through comment.
8930         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8931         fall-through comment.
8932         * f-exp.y (yylex): Fix fall-through comment.
8933         * dwarf2read.c (process_die): Fix fall-through comments.
8934         * dbxread.c (process_one_symbol): Fix fall-through comment.
8935         * d-exp.y (lex_one_token): Fix fall-through comment.
8936         * cp-name-parser.y (yylex): Fix fall-through comment.
8937         * coffread.c (coff_symtab_read): Fix fall-through comment.
8938         * c-exp.y (lex_one_token): Fix fall-through comment.
8939         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8940         comment.
8941         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8942         comment.
8943
8944 2018-05-04  Tom Tromey  <tom@tromey.com>
8945
8946         PR python/22730:
8947         * NEWS: Mention gdb.execute change.
8948         * gdbcmd.h (execute_control_command): Don't declare.
8949         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8950         execute_control_commands, execute_control_commands_to_string.
8951         * cli/cli-script.h (execute_control_commands)
8952         (execute_control_commands_to_string): Declare.
8953         (execute_control_command): Add from_tty parameter.
8954         * cli/cli-script.c (execute_control_commands)
8955         (execute_control_commands_to_string): New functions.
8956         (execute_user_command): Use execute_control_commands.
8957         (execute_control_command_1): Add "from_tty" parameter.  Update.
8958         (execute_control_command): Likewise.
8959
8960 2018-05-04  Tom Tromey  <tom@tromey.com>
8961
8962         PR python/22731:
8963         * NEWS: Mention that breakpoint commands are writable.
8964         * python/py-breakpoint.c (bppy_set_commands): New function.
8965         (breakpoint_object_getset) <"commands">: Use it.
8966
8967 2018-05-04  Tom Tromey  <tom@tromey.com>
8968
8969         * tracepoint.c (actions_command): Update.
8970         * mi/mi-cmd-break.c (mi_command_line_array)
8971         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8972         (mi_read_next_line): Remove.
8973         (mi_cmd_break_commands): Update.
8974         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8975         function_view.
8976         * cli/cli-script.c (get_command_line): Update.
8977         (process_next_line): Use function_view.  Constify.
8978         (recurse_read_control_structure, read_command_lines)
8979         (read_command_lines_1): Change argument types to function_view.
8980         (do_define_command, document_command): Update.
8981         * breakpoint.h (check_tracepoint_command): Don't declare.
8982         * breakpoint.c (check_tracepoint_command): Remove.
8983         (commands_command_1, create_tracepoint_from_upload): Update.
8984
8985 2018-05-04  Tom Tromey  <tom@tromey.com>
8986
8987         PR gdb/11750:
8988         * cli/cli-script.h (enum command_control_type) <define_control>:
8989         New constant.
8990         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8991         (build_command_line, execute_control_command_1)
8992         (process_next_line): Likewise.
8993         (do_define_command): New function, extracted from define_command.
8994         (define_command): Use it.
8995
8996 2018-05-04  Tom Tromey  <tom@tromey.com>
8997
8998         * tracepoint.c (actions_command): Update.
8999         * cli/cli-script.h (read_command_lines): Update.
9000         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9001         (MAX_TMPBUF): Remove define.
9002         (define_command): Use string_printf.
9003         (document_command): Likewise.
9004         * breakpoint.c (commands_command_1): Update.
9005
9006 2018-05-04  Tom Tromey  <tom@tromey.com>
9007
9008         * top.c (execute_command): Update.
9009         * cli/cli-script.h (print_command_lines): Now varargs.
9010         * cli/cli-script.c (print_command_lines): Now varargs.
9011         (execute_control_command_1) <case while_control, case if_control>:
9012         Update.
9013
9014 2018-05-04  Tom Tromey  <tom@tromey.com>
9015
9016         * tracepoint.c (all_tracepoint_actions): Rename from
9017         all_tracepoint_actions_and_cleanup.  Change return type.
9018         (actions_command, encode_actions_1, encode_actions)
9019         (trace_dump_actions, tdump_command): Update.
9020         * remote.c (remote_download_command_source): Update.
9021         * python/python.c (gdbpy_eval_from_control_command)
9022         (python_command, python_interactive_command): Update.
9023         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9024         * guile/guile.c (guile_command)
9025         (gdbscm_eval_from_control_command, guile_command): Update.
9026         * compile/compile.c (compile_code_command)
9027         (compile_print_command, compile_to_object): Update.
9028         * cli/cli-script.h (struct command_lines_deleter): New.
9029         (counted_command_line): New typedef.
9030         (struct command_line): Add constructor, destructor.
9031         <body_list>: Remove.
9032         <body_list_0, body_list_1>: New members.
9033         (command_line_up): Remove typedef.
9034         (read_command_lines, read_command_lines_1, get_command_line):
9035         Update.
9036         (copy_command_lines): Don't declare.
9037         * cli/cli-script.c (build_command_line): Use "new".
9038         (get_command_line): Return counted_command_line.
9039         (print_command_lines, execute_user_command)
9040         (execute_control_command_1, while_command, if_command): Update.
9041         (realloc_body_list): Remove.
9042         (process_next_line, recurse_read_control_structure): Update.
9043         (read_command_lines, read_command_lines_1): Return counted_command_line.
9044         (free_command_lines): Use "delete".
9045         (copy_command_lines): Remove.
9046         (define_command, document_command, show_user_1): Update.
9047         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
9048         a counted_command_line.
9049         * breakpoint.h (counted_command_line): Remove typedef.
9050         (breakpoint_set_commands): Update.
9051         * breakpoint.c (check_no_tracepoint_commands)
9052         (validate_commands_for_breakpoint): Update.
9053         (breakpoint_set_commands): Change commands to be a
9054         counted_command_line.
9055         (commands_command_1, update_dprintf_command_list)
9056         (create_tracepoint_from_upload): Update.
9057
9058 2018-05-04  Tom Tromey  <tom@tromey.com>
9059
9060         * cli/cli-decode.h (cmd_list_element): New constructor.
9061         (~cmd_list_element): New destructor.
9062         (struct cmd_list_element): Add initializers.
9063         * cli/cli-decode.c (do_add_cmd): Use "new".
9064         (delete_cmd): Use "delete".
9065
9066 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
9067             Pedro Alves <palves@redhat.com>
9068
9069         PR breakpoints/19806 and support for PR external/20207.
9070         * NEWS: Mention Aarch64 watchpoint improvements.
9071         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
9072         watchpoints and PR external/20207 watchpoints.
9073         * nat/aarch64-linux-hw-point.c
9074         (kernel_supports_any_contiguous_range): New.
9075         (aarch64_watchpoint_offset): New.
9076         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
9077         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
9078         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
9079         (aarch64_align_watchpoint): New parameters aligned_offset_p and
9080         next_addr_orig_p.  Support PR external/20207 watchpoints.
9081         (aarch64_downgrade_regs): New.
9082         (aarch64_dr_state_insert_one_point): New parameters offset and
9083         addr_orig.
9084         (aarch64_dr_state_remove_one_point): Likewise.
9085         (aarch64_handle_breakpoint): Update caller.
9086         (aarch64_handle_aligned_watchpoint): Likewise.
9087         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9088         aligned_offset.
9089         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9090         aarch64_downgrade_regs.
9091         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9092         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9093         (DR_CONTROL_MASK): ... this.
9094         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9095         (unsigned int aarch64_watchpoint_offset): New prototype.
9096         (aarch64_linux_set_debug_regs): Remove const from state.
9097         * utils.c (align_up, align_down): Move to ...
9098         * common/common-utils.c (align_up, align_down): ... here.
9099         * utils.h (align_up, align_down): Move to ...
9100         * common/common-utils.h (align_up, align_down): ... here.
9101
9102 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9103
9104         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9105         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9106         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9107         Re-implement to match the ABI as summarized in GCC's
9108         gcc/config/sparc/sparc.c.  All callers updated.
9109         (sparc32_store_arguments): Remove assertion.
9110
9111 2018-05-04  Tom Tromey  <tom@tromey.com>
9112
9113         * printcmd.c: Don't include tui.h.
9114         (decode_format): Use skip_spaces.
9115
9116 2018-05-04  Tom Tromey  <tom@tromey.com>
9117
9118         PR gdb/22619:
9119         * printcmd.c (last_count): New global.
9120         (x_command): Use saved count when repeating.
9121
9122 2018-05-04  Tom Tromey  <tom@tromey.com>
9123
9124         * nto-procfs.c (do_closedir_cleanup): Remove.
9125         (procfs_pidlist): Use gdb_dir_up.
9126         * procfs.c (do_closedir_cleanup): Remove.
9127         (proc_update_threads): Use gdb_dir_up.
9128         * common/filestuff.h (struct gdb_dir_deleter): New.
9129         (gdb_dir_up): New typedef.
9130
9131 2018-05-04  Tom Tromey  <tom@tromey.com>
9132
9133         * ada-lang.c (print_mention_exception): Use std::string.
9134
9135 2018-05-04  Tom Tromey  <tom@tromey.com>
9136
9137         * ada-lang.c (create_excep_cond_exprs): Update.
9138         (ada_exception_catchpoint_cond_string): Use std::string.
9139
9140 2018-05-04  Tom Tromey  <tom@tromey.com>
9141
9142         * ada-lang.c (xget_renaming_scope): Return std::string.
9143         (old_renaming_is_invisible): Update.
9144
9145 2018-05-04  Tom Tromey  <tom@tromey.com>
9146
9147         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9148         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9149
9150 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9151
9152         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9153
9154 2018-05-04  Tom Tromey  <tom@tromey.com>
9155
9156         * remote.c (remote_query_supported_append): Change type.
9157         (remote_check_symbols): Update.
9158
9159 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9160
9161         PR gdb/11420
9162         * configure.ac: Prepend libpython.
9163         * python/python-config.py: Likewise.
9164         * configure: Regenerate.
9165
9166 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9167
9168         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9169
9170 2018-05-03  Pedro Alves  <palves@redhat.com>
9171
9172         * s390-linux-nat.c
9173         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9174         override.  Write 'true' instead of '1'.
9175         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9176         declaration.
9177
9178 2018-05-02  Pedro Alves  <palves@redhat.com>
9179
9180         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9181         add_inf_child_target.
9182         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9183         add_inf_child_target.
9184         * aix-thread.c (aix_thread_target_info): New.
9185         (aix_thread_target) <shortname, longname, doc>: Delete.
9186         <info>: New.
9187         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9188         add_inf_child_target.
9189         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9190         add_inf_child_target.
9191         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9192         add_inf_child_target.
9193         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9194         add_inf_child_target.
9195         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9196         add_inf_child_target.
9197         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9198         add_inf_child_target.
9199         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9200         add_inf_child_target.
9201         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9202         add_inf_child_target.
9203         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9204         add_inf_child_target.
9205         * bfd-target.c (target_bfd_target_info): New.
9206         (target_bfd) <shortname, longname, doc>: Delete.
9207         <info>: New.
9208         * bsd-kvm.c (bsd_kvm_target_info): New.
9209         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9210         <info>: New.
9211         (bsd_kvm_target::open): Rename to ...
9212         (bsd_kvm_target_open): ... this.  Adjust.
9213         * bsd-uthread.c (bsd_uthread_target_info): New.
9214         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9215         <info>: New.
9216         * corefile.c (core_file_command): Adjust.
9217         * corelow.c (core_target_info): New.
9218         (core_target) <shortname, longname, doc>: Delete.
9219         <info>: New.
9220         (core_target::open): Rename to ...
9221         (core_target_open): ... this.  Adjust.
9222         * ctf.c (ctf_target_info): New.
9223         (ctf_target) <shortname, longname, doc>: Delete.
9224         <info>: New.
9225         (ctf_target::open): Rename to ...
9226         (ctf_target_open): ... this.
9227         (_initialize_ctf): Adjust.
9228         * exec.c (exec_target_info): New.
9229         (exec_target) <shortname, longname, doc>: Delete.
9230         <info>: New.
9231         (exec_target::open): Rename to ...
9232         (exec_target_open): ... this.
9233         * gdbcore.h (core_target_open): Declare.
9234         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9235         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9236         add_inf_child_target.
9237         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9238         add_inf_child_target.
9239         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9240         add_inf_child_target.
9241         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9242         add_inf_child_target.
9243         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9244         add_inf_child_target.
9245         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9246         add_inf_child_target.
9247         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9248         add_inf_child_target.
9249         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9250         add_inf_child_target.
9251         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9252         add_inf_child_target.
9253         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9254         add_inf_child_target.
9255         * inf-child.c (inf_child_target_info): New.
9256         (inf_child_target::info): New.
9257         (inf_child_open_target): Remove 'target' parameter.  Use
9258         get_native_target instead.
9259         (inf_child_target::open): Delete.
9260         (add_inf_child_target): New.
9261         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9262         Delete.
9263         <info>: New.
9264         (add_inf_child_target): Declare.
9265         (inf_child_open_target): Declare.
9266         * linux-thread-db.c (thread_db_target_info): New.
9267         (thread_db_target) <shortname, longname, doc>: Delete.
9268         <info>: New.
9269         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9270         add_inf_child_target.
9271         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9272         add_inf_child_target.
9273         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9274         add_inf_child_target.
9275         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9276         add_inf_child_target.
9277         * make-target-delegates (print_class): Adjust.
9278         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9279         add_inf_child_target.
9280         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9281         add_inf_child_target.
9282         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9283         add_inf_child_target.
9284         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9285         add_inf_child_target.
9286         * nto-procfs.c (nto_native_target_info): New.
9287         (nto_procfs_target_native) <shortname, longname, doc>:
9288         Delete.
9289         <info>: New.
9290         (nto_procfs_target_info): New.
9291         (nto_procfs_target_procfs) <shortname, longname, doc>:
9292         Delete.
9293         <info>: New.
9294         (init_procfs_targets): Adjust.
9295         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9296         add_inf_child_target.
9297         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9298         add_inf_child_target.
9299         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9300         add_inf_child_target.
9301         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9302         add_inf_child_target.
9303         * ravenscar-thread.c (ravenscar_target_info): New.
9304         (ravenscar_thread_target) <shortname, longname, doc>:
9305         Delete.
9306         <info>: New.
9307         * record-btrace.c (record_btrace_target_info):
9308         (record_btrace_target) <shortname, longname, doc>: Delete.
9309         <info>: New.
9310         (record_btrace_target::open): Rename to ...
9311         (record_btrace_target_open): ... this.  Adjust.
9312         * record-full.c (record_longname, record_doc): New.
9313         (record_full_base_target) <shortname, longname, doc>: Delete.
9314         <info>: New.
9315         (record_full_target_info): New.
9316         (record_full_target): <shortname>: Delete.
9317         <info>: New.
9318         (record_full_core_open_1, record_full_open_1): Update comments.
9319         (record_full_base_target::open): Rename to ...
9320         (record_full_open): ... this.
9321         (cmd_record_full_restore): Update.
9322         (_initialize_record_full): Update.
9323         * remote-sim.c (remote_sim_target_info): New.
9324         (gdbsim_target) <shortname, longname, doc>: Delete.
9325         <info>: New.
9326         (gdbsim_target::open): Rename to ...
9327         (gdbsim_target_open): ... this.
9328         (_initialize_remote_sim): Adjust.
9329         * remote.c (remote_doc): New.
9330         (remote_target_info): New.
9331         (remote_target) <shortname, longname, doc>: Delete.
9332         <info>: New.
9333         (extended_remote_target_info): New.
9334         (extended_remote_target) <shortname, longname, doc>: Delete.
9335         <info>: New.
9336         (remote_target::open_1): Make static.  Adjust.
9337         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9338         * s390-linux-nat.c (_initialize_s390_nat): Use
9339         add_inf_child_target.
9340         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9341         add_inf_child_target.
9342         * sol-thread.c (thread_db_target_info): New.
9343         (sol_thread_target) <shortname, longname, doc>: Delete.
9344         <info>: New.
9345         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9346         add_inf_child_target.
9347         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9348         add_inf_child_target.
9349         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9350         add_inf_child_target.
9351         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9352         add_inf_child_target.
9353         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9354         add_inf_child_target.
9355         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9356         add_inf_child_target.
9357         * spu-linux-nat.c (_initialize_spu_nat): Use
9358         add_inf_child_target.
9359         * spu-multiarch.c (spu_multiarch_target_info): New.
9360         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9361         <info>: New.
9362         * target-delegates.c: Regenerate.
9363         * target.c: Include <unordered_map>.
9364         (target_ops_p): Delete.
9365         (DEF_VEC_P(target_ops_p)): Delete.
9366         (target_factories): New.
9367         (test_target_info): New.
9368         (test_target_ops::info): New.
9369         (open_target): Adjust to use target_factories.
9370         (add_target_with_completer): Rename to ...
9371         (add_target): ... this.  Change prototype.  Register target_info
9372         and open callback in target_factories.  Register target_info in
9373         command context instead of target_ops.
9374         (add_target): Delete old implementation.
9375         (add_deprecated_target_alias): Change prototype.  Adjust.
9376         (the_native_target): New.
9377         (set_native_target, get_native_target): New.
9378         (find_default_run_target): Use the_native_target.
9379         (find_attach_target, find_run_target): Simplify.
9380         (target_ops::open): Delete.
9381         (dummy_target_info): New.
9382         (dummy_target::shortname, dummy_target::longname)
9383         (dummy_target::doc): Delete.
9384         (dummy_target::info): New.
9385         (debug_target::shortname, debug_target::longname)
9386         (debug_target::doc): Delete.
9387         (debug_target::info): New.
9388         * target.h (struct target_info): New.
9389         (target_ops::~target_ops): Add comment.
9390         (target_ops::info): New.
9391         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9392         longer virtual.  Implement in terms of target_info.
9393         (set_native_target, get_native_target): Declare.
9394         (target_open_ftype): New.
9395         (add_target, add_target_with_completer)
9396         (add_deprecated_target_alias): Change prototype.
9397         (test_target) <shortname, longname, doc>: Delete.
9398         <info>: New.
9399         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9400         add_inf_child_target.
9401         * tracefile-tfile.c (tfile_target_info): New.
9402         (tfile_target) <shortname, longname, doc>: Delete.
9403         <info>: New.
9404         (tfile_target::open): Rename to ...
9405         (tfile_target_open): ... this.
9406         (_initialize_tracefile_tfile): Adjust.
9407         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9408         add_inf_child_target.
9409         * windows-nat.c (_initialize_windows_nat): Use
9410         add_inf_child_target.
9411         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9412         add_inf_child_target.
9413
9414 2018-05-02  Pedro Alves  <palves@redhat.com>
9415
9416         * linux-nat.h (linux_nat_target) <low_new_thread,
9417         low_delete_thread, low_new_fork, low_forget_process,
9418         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9419         New virtual methods.
9420         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9421         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9422         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9423         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9424         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9425         Delete.
9426         * linux-fork.c (delete_fork): Adjust to call low method.
9427         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9428         (linux_nat_new_fork, linux_nat_forget_process_hook)
9429         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9430         (linux_nat_status_is_event):
9431         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9432         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9433         to call low method.
9434         (sigtrap_is_event): Rename to ...
9435         (linux_nat_target::low_status_is_event): ... this.
9436         (linux_nat_set_status_is_event): Delete.
9437         (save_stop_reason, linux_nat_wait_1)
9438         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9439         low methods.
9440         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9441         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9442         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9443         (linux_nat_set_prepare_to_resume): Delete.
9444         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9445         low virtual methods.
9446         * amd64-linux-nat.c: Likewise.
9447         * arm-linux-nat.c: Likewise.
9448         * i386-linux-nat.c: Likewise.
9449         * ia64-linux-nat.c: Likewise.
9450         * mips-linux-nat.c: Likewise.
9451         * ppc-linux-nat.c: Likewise.
9452         * s390-linux-nat.c: Likewise.
9453         * sparc64-linux-nat.c: Likewise.
9454         * x86-linux-nat.c: Likewise.
9455         * x86-linux-nat.h: Include "nat/x86-linux.h".
9456         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9457         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9458         Override methods.
9459
9460 2018-05-02  Pedro Alves  <palves@redhat.com>
9461
9462         * target.h (target_ops)
9463         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9464         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9465         stopped_by_watchpoint, have_continuable_watchpoint,
9466         stopped_data_address, watchpoint_addr_within_range,
9467         can_accel_watchpoint_condition, can_run, thread_alive,
9468         has_all_memory, has_memory, has_stack, has_registers,
9469         has_execution, can_async_p, is_async_p, supports_non_stop,
9470         always_non_stop_p, can_execute_reverse, supports_multi_process,
9471         supports_enable_disable_tracepoint,
9472         supports_disable_randomization, supports_string_tracing,
9473         supports_evaluation_of_breakpoint_conditions,
9474         can_run_breakpoint_commands, filesystem_is_local,
9475         can_download_tracepoint, get_trace_state_variable_value,
9476         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9477         record_is_replaying, record_will_replay,
9478         augmented_libraries_svr4_read>: Adjust to return bool.
9479         * aarch64-linux-nat.c: All implementations adjusted.
9480         * aix-thread.c: All implementations adjusted.
9481         * arm-linux-nat.c: All implementations adjusted.
9482         * breakpoint.c: All implementations adjusted.
9483         * bsd-kvm.c: All implementations adjusted.
9484         * bsd-uthread.c: All implementations adjusted.
9485         * corelow.c: All implementations adjusted.
9486         * ctf.c: All implementations adjusted.
9487         * darwin-nat.c: All implementations adjusted.
9488         * darwin-nat.h: All implementations adjusted.
9489         * exec.c: All implementations adjusted.
9490         * fbsd-nat.c: All implementations adjusted.
9491         * fbsd-nat.h: All implementations adjusted.
9492         * gnu-nat.c: All implementations adjusted.
9493         * gnu-nat.h: All implementations adjusted.
9494         * go32-nat.c: All implementations adjusted.
9495         * ia64-linux-nat.c: All implementations adjusted.
9496         * inf-child.c: All implementations adjusted.
9497         * inf-child.h: All implementations adjusted.
9498         * inf-ptrace.c: All implementations adjusted.
9499         * inf-ptrace.h: All implementations adjusted.
9500         * linux-nat.c: All implementations adjusted.
9501         * linux-nat.h: All implementations adjusted.
9502         * mips-linux-nat.c: All implementations adjusted.
9503         * nto-procfs.c: All implementations adjusted.
9504         * ppc-linux-nat.c: All implementations adjusted.
9505         * procfs.c: All implementations adjusted.
9506         * ravenscar-thread.c: All implementations adjusted.
9507         * record-btrace.c: All implementations adjusted.
9508         * record-full.c: All implementations adjusted.
9509         * remote-sim.c: All implementations adjusted.
9510         * remote.c: All implementations adjusted.
9511         * s390-linux-nat.c: All implementations adjusted.
9512         * sol-thread.c: All implementations adjusted.
9513         * spu-multiarch.c: All implementations adjusted.
9514         * target-delegates.c: All implementations adjusted.
9515         * target.c: All implementations adjusted.
9516         * target.h: All implementations adjusted.
9517         * tracefile-tfile.c: All implementations adjusted.
9518         * tracefile.c: All implementations adjusted.
9519         * tracefile.h: All implementations adjusted.
9520         * windows-nat.c: All implementations adjusted.
9521         * x86-linux-nat.h: All implementations adjusted.
9522         * x86-nat.h: All implementations adjusted.
9523
9524 2018-05-02  Pedro Alves  <palves@redhat.com>
9525
9526         * make-target-delegates (scan_target_h): Don't trim lines here.
9527         Replace sequences of tabs and/or whitespace with a single
9528         whitespace.
9529         (top level, parsing methods): Trim each line before processing it
9530         here.
9531
9532 2018-05-02  Pedro Alves  <palves@redhat.com>
9533             John Baldwin  <jhb@freebsd.org>
9534
9535         * target.h (enum strata) <debug_stratum>: New.
9536         (struct target_ops) <all delegation methods>: Replace by C++
9537         virtual methods, and drop "to_" prefix.  All references updated
9538         throughout.
9539         <to_shortname, to_longname, to_doc, to_data,
9540         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9541         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9542         virtual methods.  All references updated throughout.
9543         <can_attach, supports_terminal_ours, can_create_inferior,
9544         get_thread_control_capabilities, attach_no_wait>: New
9545         virtual methods.
9546         <insert_breakpoint, remove_breakpoint>: Now
9547         TARGET_DEFAULT_NORETURN methods.
9548         <info_proc>: Now returns bool.
9549         <to_magic>: Delete.
9550         (OPS_MAGIC): Delete.
9551         (current_target): Delete.  All references replaced by references
9552         to ...
9553         (target_stack): ... this.  New.
9554         (target_shortname, target_longname): Adjust.
9555         (target_can_run): Now a function declaration.
9556         (default_child_has_all_memory, default_child_has_memory)
9557         (default_child_has_stack, default_child_has_registers)
9558         (default_child_has_execution): Remove target_ops parameter.
9559         (complete_target_initialization): Delete.
9560         (memory_breakpoint_target): New template class.
9561         (test_target_ops): Refactor as a C++ class with virtual methods.
9562         * make-target-delegates (NAME_PART): Tighten.
9563         (POINTER_PART, CP_SYMBOL): New.
9564         (SIMPLE_RETURN_PART): Reimplement.
9565         (VEC_RETURN_PART): Expect less.
9566         (RETURN_PART, VIRTUAL_PART): New.
9567         (METHOD): Adjust to C++ virtual methods.
9568         (scan_target_h): Remove reference to C99.
9569         (dname): Output "target_ops::" prefix.
9570         (write_function_header): Adjust to output a C++ class method.
9571         (write_declaration): New.
9572         (write_delegator): Adjust to output a C++ class method.
9573         (tdname): Output "dummy_target::" prefix.
9574         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9575         method.
9576         (tdefault_names, debug_names): Delete.
9577         (return_types, tdefaults, styles, argtypes_array): New.
9578         (top level): All methods are delegators.
9579         (print_class): New.
9580         (top level): Print dummy_target and debug_target classes.
9581         * target-delegates.c: Regenerate.
9582         * target-debug.h (target_debug_print_enum_info_proc_what)
9583         (target_debug_print_thread_control_capabilities)
9584         (target_debug_print_thread_info_p): New.
9585         * target.c (dummy_target): Delete.
9586         (the_dummy_target, the_debug_target): New.
9587         (target_stack): Now extern.
9588         (set_targetdebug): Push/unpush debug target.
9589         (default_child_has_all_memory, default_child_has_memory)
9590         (default_child_has_stack, default_child_has_registers)
9591         (default_child_has_execution): Remove target_ops parameter.
9592         (complete_target_initialization): Delete.
9593         (add_target_with_completer): No longer call
9594         complete_target_initialization.
9595         (target_supports_terminal_ours): Use regular delegation.
9596         (update_current_target): Delete.
9597         (push_target): No longer check magic number.  Don't call
9598         update_current_target.
9599         (unpush_target): Don't call update_current_target.
9600         (target_is_pushed): No longer check magic number.
9601         (target_require_runnable): Skip for all stratums over
9602         process_stratum.
9603         (target_ops::info_proc): New.
9604         (target_info_proc): Use find_target_at and
9605         find_default_run_target.
9606         (target_supports_disable_randomization): Use regular delegation.
9607         (target_get_osdata): Use find_target_at.
9608         (target_ops::open, target_ops::close, target_ops::can_attach)
9609         (target_ops::attach, target_ops::can_create_inferior)
9610         (target_ops::create_inferior, target_ops::can_run)
9611         (target_can_run): New.
9612         (default_fileio_target): Use regular delegation.
9613         (target_ops::fileio_open, target_ops::fileio_pwrite)
9614         (target_ops::fileio_pread, target_ops::fileio_fstat)
9615         (target_ops::fileio_close, target_ops::fileio_unlink)
9616         (target_ops::fileio_readlink): New.
9617         (target_fileio_open_1, target_fileio_unlink)
9618         (target_fileio_readlink): Always call the target method.  Handle
9619         FILEIO_ENOSYS.
9620         (return_zero, return_zero_has_execution): Delete.
9621         (init_dummy_target): Delete.
9622         (dummy_target::dummy_target, dummy_target::shortname)
9623         (dummy_target::longname, dummy_target::doc)
9624         (debug_target::debug_target, debug_target::shortname)
9625         (debug_target::longname, debug_target::doc): New.
9626         (target_supports_delete_record): Use regular delegation.
9627         (setup_target_debug): Delete.
9628         (maintenance_print_target_stack): Skip debug_stratum.
9629         (initialize_targets): Instantiate the_dummy_target and
9630         the_debug_target.
9631         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9632         use target_stack.
9633         (target_auxv_search, fprint_target_auxv): Adjust.
9634         (info_auxv_command): Adjust to use target_stack.
9635         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9636         * exceptions.c (print_flush): Handle a NULL target_stack.
9637         * regcache.c (target_ops_no_register): Refactor as class with
9638         virtual methods.
9639
9640         * exec.c (exec_target): New class.
9641         (exec_ops): Now an exec_target.
9642         (exec_open, exec_close_1, exec_get_section_table)
9643         (exec_xfer_partial, exec_files_info, exec_has_memory)
9644         (exec_make_note_section): Refactor as exec_target methods.
9645         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9646         Delete.
9647         (exec_target::find_memory_regions): New.
9648         (_initialize_exec): Don't call init_exec_ops.
9649         * gdbcore.h (exec_file_clear): Delete.
9650
9651         * corefile.c (core_target): Delete.
9652         (core_file_command): Adjust.
9653         * corelow.c (core_target): New class.
9654         (the_core_target): New.
9655         (core_close): Remove target_ops parameter.
9656         (core_close_cleanup): Adjust.
9657         (core_target::close): New.
9658         (core_open, core_detach, get_core_registers, core_files_info)
9659         (core_xfer_partial, core_thread_alive, core_read_description)
9660         (core_pid_to_str, core_thread_name, core_has_memory)
9661         (core_has_stack, core_has_registers, core_info_proc): Rework as
9662         core_target methods.
9663         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9664         (_initialize_corelow): Initialize the_core_target.
9665         * gdbcore.h (core_target): Delete.
9666         (the_core_target): New.
9667
9668         * ctf.c: (ctf_target): New class.
9669         (ctf_ops): Now a ctf_target.
9670         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9671         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9672         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9673         methods.
9674         (init_ctf_ops): Delete.
9675         (_initialize_ctf): Don't call it.
9676         * tracefile-tfile.c (tfile_target): New class.
9677         (tfile_ops): Now a tfile_target.
9678         (tfile_open, tfile_close, tfile_files_info)
9679         (tfile_get_tracepoint_status, tfile_trace_find)
9680         (tfile_fetch_registers, tfile_xfer_partial)
9681         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9682         Refactor as tfile_target methods.
9683         (tfile_xfer_partial_features): Remove target_ops parameter.
9684         (init_tfile_ops): Delete.
9685         (_initialize_tracefile_tfile): Don't call it.
9686         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9687         (tracefile_has_stack, tracefile_has_registers)
9688         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9689         tracefile_target methods.
9690         (init_tracefile_ops): Delete.
9691         (tracefile_target::tracefile_target): New.
9692         * tracefile.h: Include "target.h".
9693         (tracefile_target): New class.
9694         (init_tracefile_ops): Delete.
9695
9696         * spu-multiarch.c (spu_multiarch_target): New class.
9697         (spu_ops): Now a spu_multiarch_target.
9698         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9699         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9700         (spu_search_memory, spu_mourn_inferior): Refactor as
9701         spu_multiarch_target methods.
9702         (init_spu_ops): Delete.
9703         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9704         complete_target_initialization.
9705
9706         * ravenscar-thread.c (ravenscar_thread_target): New class.
9707         (ravenscar_ops): Now a ravenscar_thread_target.
9708         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9709         (ravenscar_thread_alive, ravenscar_pid_to_str)
9710         (ravenscar_fetch_registers, ravenscar_store_registers)
9711         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9712         (ravenscar_stopped_by_hw_breakpoint)
9713         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9714         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9715         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9716         methods.
9717         (init_ravenscar_thread_ops): Delete.
9718         (_initialize_ravenscar): Remove references to
9719         init_ravenscar_thread_ops and complete_target_initialization.
9720
9721         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9722         (bsd_uthread_target): New class.
9723         (bsd_uthread_ops): Now a bsd_uthread_target.
9724         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9725         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9726         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9727         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9728         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9729         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9730         (bsd_uthread_target): Delete function.
9731         (_initialize_bsd_uthread): Remove reference to
9732         complete_target_initialization.
9733
9734         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9735         (target_bfd): ... this new class.
9736         (target_bfd_xfer_partial, target_bfd_get_section_table)
9737         (target_bfd_close): Refactor as target_bfd methods.
9738         (target_bfd::~target_bfd): New.
9739         (target_bfd_reopen): Adjust.
9740         (target_bfd::close): New.
9741
9742         * record-btrace.c (record_btrace_target): New class.
9743         (record_btrace_ops): Now a record_btrace_target.
9744         (record_btrace_open, record_btrace_stop_recording)
9745         (record_btrace_disconnect, record_btrace_close)
9746         (record_btrace_async, record_btrace_info)
9747         (record_btrace_insn_history, record_btrace_insn_history_range)
9748         (record_btrace_insn_history_from, record_btrace_call_history)
9749         (record_btrace_call_history_range)
9750         (record_btrace_call_history_from, record_btrace_record_method)
9751         (record_btrace_is_replaying, record_btrace_will_replay)
9752         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9753         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9754         (record_btrace_store_registers, record_btrace_prepare_to_store)
9755         (record_btrace_to_get_unwinder)
9756         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9757         (record_btrace_commit_resume, record_btrace_wait)
9758         (record_btrace_stop, record_btrace_can_execute_reverse)
9759         (record_btrace_stopped_by_sw_breakpoint)
9760         (record_btrace_supports_stopped_by_sw_breakpoint)
9761         (record_btrace_stopped_by_hw_breakpoint)
9762         (record_btrace_supports_stopped_by_hw_breakpoint)
9763         (record_btrace_update_thread_list, record_btrace_thread_alive)
9764         (record_btrace_goto_begin, record_btrace_goto_end)
9765         (record_btrace_goto, record_btrace_stop_replaying_all)
9766         (record_btrace_execution_direction)
9767         (record_btrace_prepare_to_generate_core)
9768         (record_btrace_done_generating_core): Refactor as
9769         record_btrace_target methods.
9770         (init_record_btrace_ops): Delete.
9771         (_initialize_record_btrace): Remove reference to
9772         init_record_btrace_ops.
9773         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9774         the execution_direction global.
9775         (record_full_base_target, record_full_target)
9776         (record_full_core_target): New classes.
9777         (record_full_ops): Now a record_full_target.
9778         (record_full_core_ops): Now a record_full_core_target.
9779         (record_full_target::detach, record_full_target::disconnect)
9780         (record_full_core_target::disconnect)
9781         (record_full_target::mourn_inferior, record_full_target::kill):
9782         New.
9783         (record_full_open, record_full_close, record_full_async): Refactor
9784         as methods of the record_full_base_target class.
9785         (record_full_resume, record_full_commit_resume): Refactor
9786         as methods of the record_full_target class.
9787         (record_full_wait, record_full_stopped_by_watchpoint)
9788         (record_full_stopped_data_address)
9789         (record_full_stopped_by_sw_breakpoint)
9790         (record_full_supports_stopped_by_sw_breakpoint)
9791         (record_full_stopped_by_hw_breakpoint)
9792         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9793         methods of the record_full_base_target class.
9794         (record_full_store_registers, record_full_xfer_partial)
9795         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9796         Refactor as methods of the record_full_target class.
9797         (record_full_can_execute_reverse, record_full_get_bookmark)
9798         (record_full_goto_bookmark, record_full_execution_direction)
9799         (record_full_record_method, record_full_info, record_full_delete)
9800         (record_full_is_replaying, record_full_will_replay)
9801         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9802         (record_full_stop_replaying): Refactor as methods of the
9803         record_full_base_target class.
9804         (record_full_core_resume, record_full_core_kill)
9805         (record_full_core_fetch_registers)
9806         (record_full_core_prepare_to_store)
9807         (record_full_core_store_registers, record_full_core_xfer_partial)
9808         (record_full_core_insert_breakpoint)
9809         (record_full_core_remove_breakpoint)
9810         (record_full_core_has_execution): Refactor
9811         as methods of the record_full_core_target class.
9812         (record_full_base_target::supports_delete_record): New.
9813         (init_record_full_ops): Delete.
9814         (init_record_full_core_ops): Delete.
9815         (record_full_save): Refactor as method of the
9816         record_full_base_target class.
9817         (_initialize_record_full): Remove references to
9818         init_record_full_ops and init_record_full_core_ops.
9819
9820         * remote.c (remote_target, extended_remote_target): New classes.
9821         (remote_ops): Now a remote_target.
9822         (extended_remote_ops): Now an extended_remote_target.
9823         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9824         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9825         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9826         (remote_pass_signals, remote_set_syscall_catchpoint)
9827         (remote_program_signals, )
9828         (remote_thread_always_alive): Remove target_ops parameter.
9829         (remote_thread_alive, remote_thread_name)
9830         (remote_update_thread_list, remote_threads_extra_info)
9831         (remote_static_tracepoint_marker_at)
9832         (remote_static_tracepoint_markers_by_strid)
9833         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9834         (remote_open): Refactor as methods of remote_target.
9835         (extended_remote_open, extended_remote_detach)
9836         (extended_remote_attach, extended_remote_post_attach):
9837         (extended_remote_supports_disable_randomization)
9838         (extended_remote_create_inferior): : Refactor as method of
9839         extended_remote_target.
9840         (remote_set_permissions, remote_open_1, remote_detach)
9841         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9842         (remote_resume, remote_commit_resume, remote_stop)
9843         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9844         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9845         (remote_prepare_to_store, remote_store_registers)
9846         (remote_flash_erase, remote_flash_done, remote_files_info)
9847         (remote_kill, remote_mourn, remote_insert_breakpoint)
9848         (remote_remove_breakpoint, remote_insert_watchpoint)
9849         (remote_watchpoint_addr_within_range)
9850         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9851         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9852         (remote_supports_stopped_by_sw_breakpoint)
9853         (remote_stopped_by_hw_breakpoint)
9854         (remote_supports_stopped_by_hw_breakpoint)
9855         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9856         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9857         (remote_verify_memory): Refactor as methods of remote_target.
9858         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9859         parameter.
9860         (remote_xfer_partial, remote_get_memory_xfer_limit)
9861         (remote_search_memory, remote_rcmd, remote_memory_map)
9862         (remote_pid_to_str, remote_get_thread_local_address)
9863         (remote_get_tib_address, remote_read_description): Refactor as
9864         methods of remote_target.
9865         (remote_target::fileio_open, remote_target::fileio_pwrite)
9866         (remote_target::fileio_pread, remote_target::fileio_close): New.
9867         (remote_hostio_readlink, remote_hostio_fstat)
9868         (remote_filesystem_is_local, remote_can_execute_reverse)
9869         (remote_supports_non_stop, remote_supports_disable_randomization)
9870         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9871         (remote_supports_enable_disable_tracepoint)
9872         (remote_supports_string_tracing)
9873         (remote_can_run_breakpoint_commands, remote_trace_init)
9874         (remote_download_tracepoint, remote_can_download_tracepoint)
9875         (remote_download_trace_state_variable, remote_enable_tracepoint)
9876         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9877         (remote_trace_start, remote_get_trace_status)
9878         (remote_get_tracepoint_status, remote_trace_stop)
9879         (remote_trace_find, remote_get_trace_state_variable_value)
9880         (remote_save_trace_data, remote_get_raw_trace_data)
9881         (remote_set_disconnected_tracing, remote_core_of_thread)
9882         (remote_set_circular_trace_buffer, remote_traceframe_info)
9883         (remote_get_min_fast_tracepoint_insn_len)
9884         (remote_set_trace_buffer_size, remote_set_trace_notes)
9885         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9886         (remote_disable_btrace, remote_teardown_btrace)
9887         (remote_read_btrace, remote_btrace_conf)
9888         (remote_augmented_libraries_svr4_read, remote_load)
9889         (remote_pid_to_exec_file, remote_can_do_single_step)
9890         (remote_execution_direction, remote_thread_handle_to_thread_info):
9891         Refactor as methods of remote_target.
9892         (init_remote_ops, init_extended_remote_ops): Delete.
9893         (remote_can_async_p, remote_is_async_p, remote_async)
9894         (remote_thread_events, remote_upload_tracepoints)
9895         (remote_upload_trace_state_variables): Refactor as methods of
9896         remote_target.
9897         (_initialize_remote): Remove references to init_remote_ops and
9898         init_extended_remote_ops.
9899
9900         * remote-sim.c (gdbsim_target): New class.
9901         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9902         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9903         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9904         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9905         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9906         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9907         Refactor as methods of gdbsim_target.
9908         (gdbsim_ops): Now a gdbsim_target.
9909         (init_gdbsim_ops): Delete.
9910         (gdbsim_cntrl_c): Adjust.
9911         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9912
9913         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9914         (the_amd64_linux_nat_target): New.
9915         (amd64_linux_fetch_inferior_registers)
9916         (amd64_linux_store_inferior_registers): Refactor as methods of
9917         amd64_linux_nat_target.
9918         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9919         * i386-linux-nat.c: Don't include "linux-nat.h".
9920         (i386_linux_nat_target): New class.
9921         (the_i386_linux_nat_target): New.
9922         (i386_linux_fetch_inferior_registers)
9923         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9924         as methods of i386_linux_nat_target.
9925         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9926         * inf-child.c (inf_child_ops): Delete.
9927         (inf_child_fetch_inferior_registers)
9928         (inf_child_store_inferior_registers): Delete.
9929         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9930         methods of inf_child_target.
9931         (inf_child_target::supports_terminal_ours)
9932         (inf_child_target::terminal_init)
9933         (inf_child_target::terminal_inferior)
9934         (inf_child_target::terminal_ours_for_output)
9935         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9936         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9937         New.
9938         (inf_child_open, inf_child_disconnect, inf_child_close)
9939         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9940         (inf_child_post_startup_inferior, inf_child_can_run)
9941         (inf_child_pid_to_exec_file): Refactor as methods of
9942         inf_child_target.
9943         (inf_child_follow_fork): Delete.
9944         (inf_child_target::can_create_inferior)
9945         (inf_child_target::can_attach): New.
9946         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9947         (inf_child_target::has_stack, inf_child_target::has_registers)
9948         (inf_child_target::has_execution): New.
9949         (inf_child_fileio_open, inf_child_fileio_pwrite)
9950         (inf_child_fileio_pread, inf_child_fileio_fstat)
9951         (inf_child_fileio_close, inf_child_fileio_unlink)
9952         (inf_child_fileio_readlink, inf_child_use_agent)
9953         (inf_child_can_use_agent): Refactor as methods of
9954         inf_child_target.
9955         (return_zero, inf_child_target): Delete.
9956         (inf_child_target::inf_child_target): New.
9957         * inf-child.h: Include "target.h".
9958         (inf_child_target): Delete function prototype.
9959         (inf_child_target): New class.
9960         (inf_child_open_target, inf_child_mourn_inferior)
9961         (inf_child_maybe_unpush_target): Delete.
9962         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9963         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9964         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9965         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9966         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9967         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9968         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9969         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9970         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9971         methods of inf_ptrace_target.
9972         (inf_ptrace_target): Delete function.
9973         * inf-ptrace.h: Include "inf-child.h".
9974         (inf_ptrace_target): Delete function declaration.
9975         (inf_ptrace_target): New class.
9976         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9977         * linux-nat.c (linux_target): New.
9978         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9979         (linux_nat_target::~linux_nat_target): New.
9980         (linux_child_post_attach, linux_child_post_startup_inferior)
9981         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9982         (linux_child_remove_fork_catchpoint)
9983         (linux_child_insert_vfork_catchpoint)
9984         (linux_child_remove_vfork_catchpoint)
9985         (linux_child_insert_exec_catchpoint)
9986         (linux_child_remove_exec_catchpoint)
9987         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9988         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9989         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9990         (linux_nat_stopped_data_address)
9991         (linux_nat_stopped_by_sw_breakpoint)
9992         (linux_nat_supports_stopped_by_sw_breakpoint)
9993         (linux_nat_stopped_by_hw_breakpoint)
9994         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9995         (linux_nat_kill, linux_nat_mourn_inferior)
9996         (linux_nat_xfer_partial, linux_nat_thread_alive)
9997         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9998         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9999         (linux_child_static_tracepoint_markers_by_strid)
10000         (linux_nat_is_async_p, linux_nat_can_async_p)
10001         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10002         (linux_nat_supports_multi_process)
10003         (linux_nat_supports_disable_randomization, linux_nat_async)
10004         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10005         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10006         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10007         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10008         methods of linux_nat_target.
10009         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10010         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10011         parameter.
10012         (check_stopped_by_watchpoint): Adjust.
10013         (linux_xfer_partial): Delete.
10014         (linux_target_install_ops, linux_target, linux_nat_add_target):
10015         Delete.
10016         (linux_nat_target::linux_nat_target): New.
10017         * linux-nat.h: Include "inf-ptrace.h".
10018         (linux_nat_target): New.
10019         (linux_target, linux_target_install_ops, linux_nat_add_target):
10020         Delete function declarations.
10021         (linux_target): Declare global.
10022         * linux-thread-db.c (thread_db_target): New.
10023         (thread_db_target::thread_db_target): New.
10024         (thread_db_ops): Delete.
10025         (the_thread_db_target): New.
10026         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10027         (thread_db_update_thread_list, thread_db_pid_to_str)
10028         (thread_db_extra_thread_info)
10029         (thread_db_thread_handle_to_thread_info)
10030         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10031         (thread_db_resume): Refactor as methods of thread_db_target.
10032         (init_thread_db_ops): Delete.
10033         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10034         * x86-linux-nat.c: Don't include "linux-nat.h".
10035         (super_post_startup_inferior): Delete.
10036         (x86_linux_nat_target::~x86_linux_nat_target): New.
10037         (x86_linux_child_post_startup_inferior)
10038         (x86_linux_read_description, x86_linux_enable_btrace)
10039         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
10040         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
10041         methods of x86_linux_nat_target.
10042         (x86_linux_create_target): Delete.  Bits folded ...
10043         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
10044         pointer.
10045         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
10046         (x86_linux_nat_target): New class.
10047         (x86_linux_create_target): Delete.
10048         (x86_linux_add_target): Now takes a linux_nat_target pointer.
10049         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
10050         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
10051         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
10052         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
10053         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
10054         make extern.
10055         (x86_use_watchpoints): Delete.
10056         * x86-nat.h: Include "breakpoint.h" and "target.h".
10057         (x86_use_watchpoints): Delete.
10058         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
10059         (x86_stopped_by_watchpoint, x86_stopped_data_address)
10060         (x86_insert_watchpoint, x86_remove_watchpoint)
10061         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
10062         (x86_stopped_by_hw_breakpoint): New declarations.
10063         (x86_nat_target): New template class.
10064
10065         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
10066         (the_ppc_linux_nat_target): New.
10067         (ppc_linux_fetch_inferior_registers)
10068         (ppc_linux_can_use_hw_breakpoint)
10069         (ppc_linux_region_ok_for_hw_watchpoint)
10070         (ppc_linux_ranged_break_num_registers)
10071         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
10072         (ppc_linux_insert_mask_watchpoint)
10073         (ppc_linux_remove_mask_watchpoint)
10074         (ppc_linux_can_accel_watchpoint_condition)
10075         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
10076         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
10077         (ppc_linux_watchpoint_addr_within_range)
10078         (ppc_linux_masked_watch_num_registers)
10079         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
10080         (ppc_linux_read_description): Refactor as methods of
10081         ppc_linux_nat_target.
10082         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10083
10084         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10085         (procfs_target): New class.
10086         (the_procfs_target): New.
10087         (procfs_target): Delete function.
10088         (procfs_auxv_parse, procfs_attach, procfs_detach)
10089         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10090         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10091         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10092         (procfs_create_inferior, procfs_update_thread_list)
10093         (procfs_thread_alive, procfs_pid_to_str)
10094         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10095         (procfs_stopped_data_address, procfs_insert_watchpoint)
10096         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10097         (proc_find_memory_regions, procfs_info_proc)
10098         (procfs_make_note_section): Refactor as methods of procfs_target.
10099         (_initialize_procfs): Adjust.
10100         * sol-thread.c (sol_thread_target): New class.
10101         (sol_thread_ops): Now a sol_thread_target.
10102         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10103         (sol_thread_fetch_registers, sol_thread_store_registers)
10104         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10105         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10106         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10107         (init_sol_thread_ops): Delete.
10108         (_initialize_sol_thread): Adjust.  Remove references to
10109         init_sol_thread_ops and complete_target_initialization.
10110
10111         * windows-nat.c (windows_nat_target): New class.
10112         (windows_fetch_inferior_registers)
10113         (windows_store_inferior_registers, windows_resume, windows_wait)
10114         (windows_attach, windows_detach, windows_pid_to_exec_file)
10115         (windows_files_info, windows_create_inferior)
10116         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10117         (windows_close, windows_pid_to_str, windows_xfer_partial)
10118         (windows_get_tib_address, windows_get_ada_task_ptid)
10119         (windows_thread_name, windows_thread_alive): Refactor as
10120         windows_nat_target methods.
10121         (do_initial_windows_stuff): Adjust.
10122         (windows_target): Delete function.
10123         (_initialize_windows_nat): Adjust.
10124
10125         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10126         (darwin_mourn_inferior, darwin_kill_inferior)
10127         (darwin_create_inferior, darwin_attach, darwin_detach)
10128         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10129         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10130         (darwin_supports_multi_process): Refactor as darwin_nat_target
10131         methods.
10132         (darwin_resume_to, darwin_files_info): Delete.
10133         (_initialize_darwin_inferior): Rename to ...
10134         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10135         * darwin-nat.h: Include "inf-child.h".
10136         (darwin_nat_target): New class.
10137         (darwin_complete_target): Delete.
10138         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10139         (darwin_target): New.
10140         (i386_darwin_fetch_inferior_registers)
10141         (i386_darwin_store_inferior_registers): Refactor as methods of
10142         darwin_nat_target.
10143         (darwin_complete_target): Delete, with ...
10144         (_initialize_i386_darwin_nat): ... bits factored out here.
10145
10146         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10147         (the_alpha_linux_nat_target): New.
10148         (alpha_linux_register_u_offset): Refactor as
10149         alpha_linux_nat_target method.
10150         (_initialize_alpha_linux_nat): Adjust.
10151         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10152         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10153         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10154         methods of linux_nat_trad_target.
10155         (linux_trad_target): Delete.
10156         * linux-nat-trad.h (linux_trad_target): Delete function.
10157         (linux_nat_trad_target): New class.
10158         * mips-linux-nat.c (mips_linux_nat_target): New class.
10159         (super_fetch_registers, super_store_registers, super_close):
10160         Delete.
10161         (the_mips_linux_nat_target): New.
10162         (mips64_linux_regsets_fetch_registers)
10163         (mips64_linux_regsets_store_registers)
10164         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10165         (mips_linux_register_u_offset, mips_linux_read_description)
10166         (mips_linux_can_use_hw_breakpoint)
10167         (mips_linux_stopped_by_watchpoint)
10168         (mips_linux_stopped_data_address)
10169         (mips_linux_region_ok_for_hw_watchpoint)
10170         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10171         (mips_linux_close): Refactor as methods of mips_linux_nat.
10172         (_initialize_mips_linux_nat): Adjust to C++ification.
10173
10174         * aix-thread.c (aix_thread_target): New class.
10175         (aix_thread_ops): Now an aix_thread_target.
10176         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10177         (aix_thread_fetch_registers, aix_thread_store_registers)
10178         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10179         (aix_thread_thread_alive, aix_thread_pid_to_str)
10180         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10181         Refactor as methods of aix_thread_target.
10182         (init_aix_thread_ops): Delete.
10183         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10184         and complete_target_initialization.
10185         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10186         (rs6000_nat_target): New class.
10187         (the_rs6000_nat_target): New.
10188         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10189         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10190         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10191         (super_create_inferior): Delete.
10192         (_initialize_rs6000_nat): Adjust to C++ification.
10193
10194         * arm-linux-nat.c (arm_linux_nat_target): New class.
10195         (the_arm_linux_nat_target): New.
10196         (arm_linux_fetch_inferior_registers)
10197         (arm_linux_store_inferior_registers, arm_linux_read_description)
10198         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10199         (arm_linux_remove_hw_breakpoint)
10200         (arm_linux_region_ok_for_hw_watchpoint)
10201         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10202         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10203         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10204         arm_linux_nat_target.
10205         (_initialize_arm_linux_nat): Adjust to C++ification.
10206
10207         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10208         (the_aarch64_linux_nat_target): New.
10209         (aarch64_linux_fetch_inferior_registers)
10210         (aarch64_linux_store_inferior_registers)
10211         (aarch64_linux_child_post_startup_inferior)
10212         (aarch64_linux_read_description)
10213         (aarch64_linux_can_use_hw_breakpoint)
10214         (aarch64_linux_insert_hw_breakpoint)
10215         (aarch64_linux_remove_hw_breakpoint)
10216         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10217         (aarch64_linux_region_ok_for_hw_watchpoint)
10218         (aarch64_linux_stopped_data_address)
10219         (aarch64_linux_stopped_by_watchpoint)
10220         (aarch64_linux_watchpoint_addr_within_range)
10221         (aarch64_linux_can_do_single_step): Refactor as methods of
10222         aarch64_linux_nat_target.
10223         (super_post_startup_inferior): Delete.
10224         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10225
10226         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10227         (the_hppa_linux_nat_target): New.
10228         (hppa_linux_fetch_inferior_registers)
10229         (hppa_linux_store_inferior_registers): Refactor as methods of
10230         hppa_linux_nat_target.
10231         (_initialize_hppa_linux_nat): Adjust to C++ification.
10232
10233         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10234         (the_ia64_linux_nat_target): New.
10235         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10236         (ia64_linux_stopped_data_address)
10237         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10238         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10239         ia64_linux_nat_target methods.
10240         (super_xfer_partial): Delete.
10241         (_initialize_ia64_linux_nat): Adjust to C++ification.
10242
10243         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10244         (the_m32r_linux_nat_target): New.
10245         (m32r_linux_fetch_inferior_registers)
10246         (m32r_linux_store_inferior_registers): Refactor as
10247         m32r_linux_nat_target methods.
10248         (_initialize_m32r_linux_nat): Adjust to C++ification.
10249
10250         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10251         (the_m68k_linux_nat_target): New.
10252         (m68k_linux_fetch_inferior_registers)
10253         (m68k_linux_store_inferior_registers): Refactor as
10254         m68k_linux_nat_target methods.
10255         (_initialize_m68k_linux_nat): Adjust to C++ification.
10256
10257         * s390-linux-nat.c (s390_linux_nat_target): New class.
10258         (the_s390_linux_nat_target): New.
10259         (s390_linux_fetch_inferior_registers)
10260         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10261         (s390_insert_watchpoint, s390_remove_watchpoint)
10262         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10263         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10264         (s390_auxv_parse, s390_read_description): Refactor as methods of
10265         s390_linux_nat_target.
10266         (_initialize_s390_nat): Adjust to C++ification.
10267
10268         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10269         (the_sparc_linux_nat_target): New.
10270         (_initialize_sparc_linux_nat): Adjust to C++ification.
10271         * sparc-nat.c (sparc_fetch_inferior_registers)
10272         (sparc_store_inferior_registers): Remove target_ops parameter.
10273         * sparc-nat.h (sparc_fetch_inferior_registers)
10274         (sparc_store_inferior_registers): Remove target_ops parameter.
10275         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10276         (the_sparc64_linux_nat_target): New.
10277         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10278
10279         * spu-linux-nat.c (spu_linux_nat_target): New class.
10280         (the_spu_linux_nat_target): New.
10281         (spu_child_post_startup_inferior, spu_child_post_attach)
10282         (spu_child_wait, spu_fetch_inferior_registers)
10283         (spu_store_inferior_registers, spu_xfer_partial)
10284         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10285         methods.
10286         (_initialize_spu_nat): Adjust to C++ification.
10287
10288         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10289         (the_tilegx_linux_nat_target): New.
10290         (fetch_inferior_registers, store_inferior_registers):
10291         Refactor as methods.
10292         (_initialize_tile_linux_nat): Adjust to C++ification.
10293
10294         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10295         (the_xtensa_linux_nat_target): New.
10296         (xtensa_linux_fetch_inferior_registers)
10297         (xtensa_linux_store_inferior_registers): Refactor as
10298         xtensa_linux_nat_target methods.
10299         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10300
10301         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10302         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10303         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10304         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10305         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10306         (fbsd_stopped_by_sw_breakpoint)
10307         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10308         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10309         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10310         (fbsd_post_startup_inferior, fbsd_post_attach)
10311         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10312         (fbsd_set_syscall_catchpoint)
10313         (super_xfer_partial, super_resume, super_wait)
10314         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10315         (fbsd_handle_debug_trap): Remove target_ops parameter.
10316         (fbsd_nat_add_target): Delete.
10317         * fbsd-nat.h: Include "inf-ptrace.h".
10318         (fbsd_nat_add_target): Delete.
10319         (USE_SIGTRAP_SIGINFO): Define.
10320         (fbsd_nat_target): New class.
10321
10322         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10323         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10324         (amd64bsd_target): Delete.
10325         * amd64-bsd-nat.h: New file.
10326         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10327         "x86-bsd-nat.h".
10328         (amd64_fbsd_nat_target): New class.
10329         (the_amd64_fbsd_nat_target): New.
10330         (amd64fbsd_read_description): Refactor as method of
10331         amd64_fbsd_nat_target.
10332         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10333         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10334         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10335         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10336         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10337         (i386bsd_target): Delete.
10338         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10339         (i386bsd_fetch_inferior_registers)
10340         (i386bsd_store_inferior_registers): Declare.
10341         (i386_bsd_nat_target): New class.
10342         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10343         (the_i386_fbsd_nat_target): New.
10344         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10345         i386_fbsd_nat_target methods.
10346         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10347         (_initialize_i386fbsd_nat): Adjust to C++ification.
10348         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10349         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10350         (_initialize_x86_bsd_nat): Adjust to C++ification.
10351         * x86-bsd-nat.h: Include "x86-nat.h".
10352         (x86bsd_target): Delete declaration.
10353         (x86bsd_nat_target): New class.
10354
10355         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10356         (the_aarch64_fbsd_nat_target): New.
10357         (aarch64_fbsd_fetch_inferior_registers)
10358         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10359         aarch64_fbsd_nat_target.
10360         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10361         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10362         (the_alpha_bsd_nat_target): New.
10363         (alphabsd_fetch_inferior_registers)
10364         (alphabsd_store_inferior_registers): Refactor as
10365         alpha_bsd_nat_target methods.
10366         (_initialize_alphabsd_nat): Refactor as methods of
10367         alpha_bsd_nat_target.
10368         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10369         (the_amd64_nbsd_nat_target): New.
10370         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10371         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10372         (the_amd64_obsd_nat_target): New.
10373         (_initialize_amd64obsd_nat): Adjust to C++ification.
10374         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10375         (the_arm_fbsd_nat_target): New.
10376         (arm_fbsd_fetch_inferior_registers)
10377         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10378         (_initialize_arm_fbsd_nat): Refactor as methods of
10379         arm_fbsd_nat_target.
10380         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10381         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10382         (the_arm_netbsd_nat_target): New.
10383         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10384         arm_netbsd_nat_target.
10385         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10386         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10387         (the_hppa_nbsd_nat_target): New.
10388         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10389         hppa_nbsd_nat_target methods.
10390         (_initialize_hppanbsd_nat): Adjust to C++ification.
10391         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10392         (the_hppa_obsd_nat_target): New.
10393         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10394         methods of hppa_obsd_nat_target.
10395         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10396         add_target.
10397         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10398         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10399         add_target.
10400         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10401         (_initialize_i386obsd_nat): Use add_target.
10402         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10403         (the_m68k_bsd_nat_target): New.
10404         (m68kbsd_fetch_inferior_registers)
10405         (m68kbsd_store_inferior_registers): Refactor as methods of
10406         m68k_bsd_nat_target.
10407         (_initialize_m68kbsd_nat): Adjust to C++ification.
10408         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10409         (the_mips_fbsd_nat_target): New.
10410         (mips_fbsd_fetch_inferior_registers)
10411         (mips_fbsd_store_inferior_registers): Refactor as methods of
10412         mips_fbsd_nat_target.
10413         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10414         add_target.
10415         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10416         (the_mips_nbsd_nat_target): New.
10417         (mipsnbsd_fetch_inferior_registers)
10418         (mipsnbsd_store_inferior_registers): Refactor as methods of
10419         mips_nbsd_nat_target.
10420         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10421         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10422         (the_mips64_obsd_nat_target): New.
10423         (mips64obsd_fetch_inferior_registers)
10424         (mips64obsd_store_inferior_registers): Refactor as methods of
10425         mips64_obsd_nat_target.
10426         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10427         add_target.
10428         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10429         nbsd_nat_target.
10430         * nbsd-nat.h: Include "inf-ptrace.h".
10431         (nbsd_nat_target): New class.
10432         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10433         (obsd_wait): Refactor as methods of obsd_nat_target.
10434         (obsd_add_target): Delete.
10435         * obsd-nat.h: Include "inf-ptrace.h".
10436         (obsd_nat_target): New class.
10437         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10438         (the_ppc_fbsd_nat_target): New.
10439         (ppcfbsd_fetch_inferior_registers)
10440         (ppcfbsd_store_inferior_registers): Refactor as methods of
10441         ppc_fbsd_nat_target.
10442         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10443         add_target.
10444         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10445         (the_ppc_nbsd_nat_target): New.
10446         (ppcnbsd_fetch_inferior_registers)
10447         (ppcnbsd_store_inferior_registers): Refactor as methods of
10448         ppc_nbsd_nat_target.
10449         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10450         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10451         (the_ppc_obsd_nat_target): New.
10452         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10453         methods of ppc_obsd_nat_target.
10454         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10455         add_target.
10456         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10457         (the_sh_nbsd_nat_target): New.
10458         (shnbsd_fetch_inferior_registers)
10459         (shnbsd_store_inferior_registers): Refactor as methods of
10460         sh_nbsd_nat_target.
10461         (_initialize_shnbsd_nat): Adjust to C++ification.
10462         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10463         (inf_ptrace_xfer_partial): Delete.
10464         (sparc_xfer_partial, sparc_target): Delete.
10465         * sparc-nat.h (sparc_fetch_inferior_registers)
10466         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10467         (sparc_target): Delete function declaration.
10468         (sparc_target): New template class.
10469         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10470         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10471         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10472         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10473         add_target.
10474         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10475         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10476         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10477         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10478         add_target.
10479         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10480         (the_vax_bsd_nat_target): New.
10481         (vaxbsd_fetch_inferior_registers)
10482         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10483         methods.
10484         (_initialize_vaxbsd_nat): Adjust to C++ification.
10485
10486         * bsd-kvm.c (bsd_kvm_target): New class.
10487         (bsd_kvm_ops): Now a bsd_kvm_target.
10488         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10489         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10490         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10491         bsd_kvm_target.
10492         (bsd_kvm_return_one): Delete.
10493         (bsd_kvm_add_target): Adjust to C++ification.
10494
10495         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10496         (nto_procfs_target_procfs): New classes.
10497         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10498         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10499         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10500         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10501         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10502         (procfs_remove_hw_breakpoint, procfs_resume)
10503         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10504         (procfs_kill_inferior, procfs_store_registers)
10505         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10506         as methods of nto_procfs_target.
10507         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10508         (nto_native_ops): Delete.
10509         (procfs_open, procfs_native_open): Delete.
10510         (nto_native_ops): Now an nto_procfs_target_native.
10511         (init_procfs_targets): Adjust to C++ification.
10512         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10513         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10514         Refactor as methods of nto_procfs_target.
10515
10516         * go32-nat.c (go32_nat_target): New class.
10517         (the_go32_nat_target): New.
10518         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10519         (go32_store_registers, go32_xfer_partial, go32_files_info)
10520         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10521         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10522         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10523         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10524         (go32_target): Delete.
10525         (_initialize_go32_nat): Adjust to C++ification.
10526
10527         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10528         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10529         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10530         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10531         gnu_nat_target.
10532         (gnu_target): Delete.
10533         * gnu-nat.h (gnu_target): Delete.
10534         (gnu_nat_target): New class.
10535         * i386-gnu-nat.c (gnu_base_target): New.
10536         (i386_gnu_nat_target): New class.
10537         (the_i386_gnu_nat_target): New.
10538         (_initialize_i386gnu_nat): Adjust to C++ification.
10539
10540 2018-05-02  Pedro Alves  <palves@redhat.com>
10541
10542         * bfd-target.c (target_bfd_xclose): Rename to ...
10543         (target_bfd_close): ... this.
10544         (target_bfd_reopen): Adjust.
10545         * target.c (target_close): Remove references to to_xclose.
10546         * target.h (target_ops::to_xclose): Delete.
10547         (target_ops::to_close): Update comments.
10548
10549 2018-05-02  Pedro Alves  <palves@redhat.com>
10550
10551         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10552         "linux-nat.h".
10553         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10554         * inf-ptrace.c (inf_ptrace_register_u_offset)
10555         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10556         (inf_ptrace_store_register, inf_ptrace_store_registers)
10557         (inf_ptrace_trad_target): Move to ...
10558         * linux-nat-trad.c: ... this new file.
10559         * linux-nat-trad.h: New file.
10560         * linux-nat.c (linux_target_install_ops): Make extern.
10561         (linux_trad_target): Delete.
10562         * linux-nat.h (linux_trad_target): Delete declaration.
10563         (linux_target_install_ops): Declare.
10564         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10565         "linux-nat.h".
10566
10567 2018-05-02  Pedro Alves  <palves@redhat.com>
10568
10569         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10570         procfs_target/add_target here.
10571         * procfs.c (procfs_target): Make static.
10572         (_initialize_procfs): Call add_target here.
10573         * procfs.h (struct target_ops): Remove forward declaration.
10574         (procfs_target): Remove declaration.
10575         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10576
10577 2018-05-02  Pedro Alves  <palves@redhat.com>
10578
10579         * procfs.c (procfs_stopped_by_watchpoint)
10580         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10581         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10582         Forward declare.
10583         (procfs_use_watchpoints): Delete, move contents...
10584         (procfs_target): ... here.
10585         * procfs.h (procfs_use_watchpoints): Delete declaration.
10586         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10587         procfs_use_watchpoints.
10588         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10589         procfs_use_watchpoints.
10590
10591 2018-05-02  Tom Tromey  <tom@tromey.com>
10592
10593         PR python/20084:
10594         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10595         and var_zuinteger_unlimited.
10596         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10597         and PARAM_ZUINTEGER_UNLIMITED.
10598         (set_parameter_value): Handle var_zuinteger and
10599         var_zuinteger_unlimited.
10600         (add_setshow_generic): Likewise.
10601         (parmpy_init): Likewise.
10602
10603 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10604
10605         PR rust/23124
10606         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10607         pointer is not null before dereferencing it.
10608
10609 2018-04-30  Tom Tromey  <tom@tromey.com>
10610
10611         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10612         is_mi_like_p.
10613
10614 2018-04-30  Tom Tromey  <tom@tromey.com>
10615
10616         * breakpoint.c (mention): Remove use of is_mi_like_p.
10617         (print_mention_ranged_breakpoint): Likewise.
10618         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10619         of is_mi_like_p.
10620
10621 2018-04-30  Tom Tromey  <tom@tromey.com>
10622
10623         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10624
10625 2018-04-30  Tom Tromey  <tom@tromey.com>
10626
10627         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10628         (info_spu_event_command): Remove some uses of is_mi_like_p.
10629
10630 2018-04-30  Tom Tromey  <tom@tromey.com>
10631
10632         * python/py-framefilter.c (py_print_single_arg)
10633         (enumerate_locals, py_print_args, py_print_frame): Remove some
10634         uses of is_mi_like_p.
10635
10636 2018-04-30  Tom Tromey  <tom@tromey.com>
10637
10638         * ui-out.c: Update.
10639         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10640         * ui-out.h (ui_out::is_mi_like_p): Now const.
10641         (ui_out::do_is_mi_like_p): Now const.
10642         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10643
10644 2018-04-30  Tom Tromey  <tom@tromey.com>
10645
10646         * varobj.c (varobj_set_visualizer): Use new_reference.
10647         * python/python.c (gdbpy_decode_line): Use new_reference.
10648         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10649         new_reference.
10650
10651 2018-04-30  Tom Tromey  <tom@tromey.com>
10652
10653         * varobj.c (install_new_value): Use new_reference.
10654         * value.h (value_incref): Return void.  Swap intro comment with
10655         value_decref.
10656         * value.c (set_value_parent): Use new_reference.
10657         (value_incref): Return void.  Update intro comment.
10658         (release_value): Use new_reference.
10659         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10660
10661 2018-04-30  Tom Tromey  <tom@tromey.com>
10662
10663         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10664         * gdb_bfd.h (new_bfd_ref): Remove.
10665         (gdb_bfd_open): Update comment.
10666         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10667         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10668         (gdb_bfd_fdopenr): Use new_reference.
10669         * exec.c (exec_file_attach): Use new_reference.
10670
10671 2018-04-30  Tom Tromey  <tom@tromey.com>
10672
10673         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10674         method.
10675
10676 2018-04-30  Tom Tromey  <tom@tromey.com>
10677
10678         * jit.c (jit_read_code_entry): Use type_align.
10679         * i386-tdep.c (i386_gdbarch_init): Don't call
10680         set_gdbarch_long_long_align_bit.
10681         * gdbarch.sh: Remove long_long_align_bit.
10682         * gdbarch.c, gdbarch.h: Rebuild.
10683         * arc-tdep.c (arc_type_align): New function.
10684         (arc_gdbarch_init): Use arc_type_align.  Don't call
10685         set_gdbarch_long_long_align_bit.
10686
10687 2018-04-30  Tom Tromey  <tom@tromey.com>
10688
10689         * rust-lang.c (rust_type_alignment): Remove.
10690         (rust_composite_type): Use type_align.
10691
10692 2018-04-30  Tom Tromey  <tom@tromey.com>
10693
10694         * NEWS: Mention Type.align.
10695         * python/py-type.c (typy_get_alignof): New function.
10696         (type_object_getset): Add "alignof".
10697
10698 2018-04-30  Tom Tromey  <tom@tromey.com>
10699
10700         PR exp/17095:
10701         * NEWS: Update.
10702         * std-operator.def (UNOP_ALIGNOF): New operator.
10703         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10704         New.
10705         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10706         * c-lang.c (c_op_print_tab): Add alignof.
10707         * c-exp.y (ALIGNOF): New token.
10708         (exp): Add "ALIGNOF" production.
10709         (ident_tokens): Add _Alignof and alignof.
10710
10711 2018-04-30  Tom Tromey  <tom@tromey.com>
10712
10713         * i386-tdep.c (i386_type_align): New function.
10714         (i386_gdbarch_init): Update.
10715         * gdbarch.sh (type_align): New method.
10716         * gdbarch.c, gdbarch.h: Rebuild.
10717         * arch-utils.h (default_type_align): Declare.
10718         * arch-utils.c (default_type_align): New function.
10719         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10720         (struct type) <align_log2>: New field.
10721         <instance_flags>: Now a bitfield.
10722         (TYPE_RAW_ALIGN): New macro.
10723         (type_align, type_raw_align, set_type_align): Declare.
10724         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10725         functions.
10726         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10727         (get_alignment, maybe_set_alignment): New functions.
10728         (read_structure_type, read_enumeration_type, read_array_type)
10729         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10730         (read_subrange_type, read_base_type): Set type alignment.
10731
10732 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10733
10734         * dwarf2read.c (read_index_from_section): Use bool.
10735
10736 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10737
10738         PR gdb/22950
10739         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10740         with #ifdef.
10741
10742 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10743
10744         PR build/22873
10745         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10746         last step, and do it atomically.
10747
10748 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10749
10750         * compile/compile-c-types.c (convert_int, convert_float):
10751         Update for C FE v1.
10752
10753 2018-04-27  Tom Tromey  <tom@tromey.com>
10754
10755         PR rust/22545:
10756         * rust-lang.c (rust_inclusive_range_type_p): New function.
10757         (rust_range): Handle inclusive ranges.
10758         (rust_compute_range): Likewise.
10759         * rust-exp.y (struct rust_op) <inclusive>: New field.
10760         (DOTDOTEQ): New constant.
10761         (range_expr): Add "..=" productions.
10762         (operator_tokens): Add "..=" token.
10763         (ast_range): Add "inclusive" parameter.
10764         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10765         ranges.
10766         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10767         bounds values.
10768         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10769         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10770         Update comments.
10771         * expprint.c (print_subexp_standard): Handle new bounds values.
10772         (dump_subexp_body_standard): Likewise.
10773
10774 2018-04-27  Tom Tromey  <tom@tromey.com>
10775
10776         * configure: Rebuild.
10777         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10778         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10779         "OVERRIDE".
10780         (class symbol_needs_eval_context): Likewise.
10781         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10782         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10783         "virtual".
10784         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10785         "override".
10786         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10787         * aarch64-tdep.c (instruction_reader::read): Use "override".
10788         (instruction_reader_test::read): Likewise.
10789         * arm-tdep.c (instruction_reader::read): Use "override".
10790         (instruction_reader_thumb::read): Likewise.
10791
10792 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10793
10794         PR remote/9665
10795         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10796         instead of remote_send.
10797         (remote_send): Remove.
10798
10799 2018-04-26  Pedro Alves  <palves@redhat.com>
10800
10801         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10802         find_function_start_sal instead of find_pc_line.
10803
10804 2018-04-26  Pedro Alves  <palves@redhat.com>
10805
10806         * breakpoint.c (set_breakpoint_location_function): Handle
10807         mst_data_gnu_ifunc.
10808         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10809         * elfread.c (elf_symtab_read): Give data symbols with
10810         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10811         (elf_rel_plt_read): Update comment.
10812         * linespec.c (convert_linespec_to_sals): Handle
10813         mst_data_gnu_ifunc.
10814         (minsym_found): Handle mst_data_gnu_ifunc.
10815         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10816         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10817         * parse.c (find_minsym_type_and_address): Handle
10818         mst_data_gnu_ifunc.
10819         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10820         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10821         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10822         comment.
10823         <mst_data_gnu_ifunc>: New enumerator.
10824
10825 2018-04-26  Pedro Alves  <palves@redhat.com>
10826
10827         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10828         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10829         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10830         Handle it.
10831         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10832         (lookup_minimal_symbol_by_pc): Adjust.
10833         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10834         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10835         * minsyms.h (lookup_msym_prefer): New enum.
10836         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10837         parameter by a lookup_msym_prefer parameter.
10838
10839 2018-04-26  Pedro Alves  <palves@redhat.com>
10840
10841         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10842         ends in "@plt" instead of looking at the symbol's section.
10843
10844 2018-04-26  Pedro Alves  <palves@redhat.com>
10845
10846         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10847         all references.
10848         (find_pc_partial_function_gnu_ifunc): Rename to ...
10849         (find_pc_partial_function): ... this, and remove references to
10850         'is_gnu_ifunc_p'.
10851         (find_pc_partial_function): Delete old implementation.
10852         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10853
10854 2018-04-26  Pedro Alves  <palves@redhat.com>
10855
10856         * linespec.c (struct bound_minimal_symbol_search_key): New.
10857         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10858         skip first line if we found a GNU ifunc minimal symbol by name.
10859         (compare_msymbols): Change parameters to work with a destructured
10860         lhs minsym.
10861         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10862         functions.
10863
10864 2018-04-26  Pedro Alves  <palves@redhat.com>
10865
10866         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10867         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10868         address/name.
10869         (add_location_to_breakpoint): Store the minsym and the objfile in
10870         the breakpoint location.
10871         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10872         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10873         Record the minsym in the sal.
10874         * symtab.h (symtab_and_line) <msymbol>: New field.
10875
10876 2018-04-26  Pedro Alves  <palves@redhat.com>
10877
10878         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10879         unless we actually resolved the ifunc.
10880
10881 2018-04-26  Pedro Alves  <palves@redhat.com>
10882
10883         * c-exp.y (variable production): Prefer ifunc minsyms over
10884         regular function symbols.
10885         * symtab.c (find_gnu_ifunc): New function.
10886         * minsyms.h (lookup_msym_prefer): New enum.
10887         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10888         parameter by a lookup_msym_prefer parameter.
10889         * symtab.h (find_gnu_ifunc): New declaration.
10890
10891 2018-04-26  Pedro Alves  <palves@redhat.com>
10892
10893         * blockframe.c (find_gnu_ifunc_target_type): New function.
10894         (find_function_type): New.
10895         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10896         return a value with a memory address.
10897         (eval_call): For calls to GNU ifunc functions, try to find the
10898         type of the target function from the type that the resolver
10899         returns.
10900         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10901         symbols.
10902         * infcall.c (find_function_return_type): Delete.
10903         (find_function_addr): Add 'function_type' parameter.  For calls to
10904         GNU ifunc functions, try to find the type of the target function
10905         from the type that the resolver returns, and return it via
10906         FUNCTION_TYPE.
10907         (call_function_by_hand_dummy): Adjust to use the function type
10908         returned by find_function_addr.
10909         (find_function_addr): Add 'function_type' parameter and move
10910         description here.
10911         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10912         declarations.
10913
10914 2018-04-26  Pedro Alves  <palves@redhat.com>
10915
10916         * c-exp.y (variable production): Skip finding an alias for ifunc
10917         symbols.
10918
10919 2018-04-26  Pedro Alves  <palves@redhat.com>
10920
10921         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10922
10923 2018-04-25  Pedro Alves  <palves@redhat.com>
10924
10925         * infcmd.c (kill_command): Print the pid as string, not the whole
10926         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10927         message.
10928         * remote.c (remote_detach_1): Print the pid as string, not the
10929         whole thread's ptid.
10930
10931 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10932             Sergio Durigan Junior  <sergiodj@redhat.com>
10933             Pedro Alves  <palves@redhat.com>
10934
10935         * infcmd.c (kill_command): Print message when inferior has
10936         been killed.
10937         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10938         '1'.
10939         (add_inferior): Improve message printed when
10940         'print_inferior_events' is on.
10941         (exit_inferior): Remove message printed when
10942         'print_inferior_events' is on.
10943         (detach_inferior): Improve message printed when
10944         'print_inferior_events' is on.
10945         (initialize_inferiors): Use 'add_inferior_silent' to set
10946         'current_inferior_'.
10947         * inferior.h (print_inferior_events): Declare here as
10948         'extern'.
10949         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10950         '[Detaching...]' messages when 'print_inferior_events' is on.
10951         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10952         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10953         'Detaching after fork from child...', replace it by '... from
10954         parent...'.
10955         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10956         prefix/suffix when printing 'Detaching...' messages.  Print
10957         them when 'print_inferior_events' is on.
10958         * remote.c (remote_detach_1): Print message when detaching
10959         from inferior and '!is_fork_parent'.
10960
10961 2018-04-24  Tom Tromey  <tom@tromey.com>
10962
10963         * cli-out.h: Reindent.
10964
10965 2018-04-24  Tom Tromey  <tom@tromey.com>
10966
10967         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10968         (cli_ui_out::do_field_string): Use fputs_filtered.
10969         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10970
10971 2018-04-23  Tom Tromey  <tom@tromey.com>
10972
10973         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10974         gdb::unique_xmalloc_ptr.
10975
10976 2018-04-23  Tom Tromey  <tom@tromey.com>
10977
10978         * configure: Rebuild.
10979
10980 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10981
10982         PR gdb/23095
10983         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10984         prepare_for_testing.  Set normal_bp to r_debug_state if target
10985         is bsd.
10986
10987 2018-04-21  Pedro Alves  <palves@redhat.com>
10988             Rajendra SY  <rajendra.sy@gmail.com>
10989
10990         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10991         * remote.c (extended_remote_attach): In all-stop mode, mark the
10992         thread as executing.
10993
10994 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10995
10996         * thread.c (thread_apply_all_command): Fix comment.
10997         (thread_command): Fix comment.
10998
10999 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11000
11001         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11002         parameter.
11003         * features/aarch64-core.c (create_feature_aarch64_core):
11004         Regenerate.
11005         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11006         Likewise.
11007         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11008         Likewise.
11009         * features/i386/32bit-avx512.c
11010         (create_feature_i386_32bit_avx512): Likewise.
11011         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11012         Likewise.
11013         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11014         Likewise.
11015         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11016         Likewise.
11017         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11018         Likewise.
11019         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11020         Likewise.
11021         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11022         Likewise.
11023         * features/i386/64bit-avx512.c
11024         (create_feature_i386_64bit_avx512): Likewise.
11025         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11026         Likewise.
11027         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11028         Likewise.
11029         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11030         Likewise.
11031         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11032         Likewise.
11033         * features/i386/64bit-segments.c
11034         (create_feature_i386_64bit_segments): Likewise.
11035         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
11036         Likewise.
11037         * features/i386/x32-core.c
11038         (create_feature_i386_x32_core): Likewise.
11039         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
11040         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
11041         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
11042         * target-descriptions.c: In generated code, don't pass xml
11043         filename.
11044
11045 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11046
11047         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
11048         (print_xml_feature::visit_post): Likewise.
11049         (print_xml_feature::visit): Likewise.
11050         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
11051         (print_xml_feature): Add new class.
11052         * regformats/regdat.sh: Null xmltarget on feature targets.
11053         * target-descriptions.c (struct target_desc): Add xmltarget.
11054         (maintenance_check_tdesc_xml_convert): Add unittest function.
11055         (tdesc_get_features_xml): Add function to get xml.
11056         (maintenance_check_xml_descriptions): Test xml generation.
11057         * xml-tdesc.c (string_read_description_xml): Add function.
11058         * xml-tdesc.h (string_read_description_xml): Add declaration.
11059
11060 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11061
11062         * features/Makefile: Add feature marker to targets with new style
11063         target descriptions.
11064         * regformats/aarch64.dat: Regenerate.
11065         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
11066         * regformats/i386/amd64-avx-linux.dat: Likewise.
11067         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
11068         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
11069         * regformats/i386/amd64-linux.dat: Likewise.
11070         * regformats/i386/amd64-mpx-linux.dat: Likewise.
11071         * regformats/i386/amd64.dat: Likewise.
11072         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
11073         * regformats/i386/i386-avx-linux.dat: Likewise.
11074         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
11075         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
11076         * regformats/i386/i386-linux.dat: Likewise.
11077         * regformats/i386/i386-mmx-linux.dat: Likewise.
11078         * regformats/i386/i386-mpx-linux.dat: Likewise.
11079         * regformats/i386/i386.dat: Likewise.
11080         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
11081         * regformats/i386/x32-avx-linux.dat: Likewise.
11082         * regformats/i386/x32-linux.dat: Likewise.
11083         * regformats/tic6x-c62x-linux.dat: Likewise.
11084         * regformats/tic6x-c64x-linux.dat: Likewise.
11085         * regformats/tic6x-c64xp-linux.dat: Likewise.
11086         * regformats/regdat.sh: Parse feature marker.
11087
11088 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11089
11090         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11091         (tdesc_osabi_name): Likewise.
11092         * target-descriptions.c (tdesc_architecture_name): Add new
11093         function.
11094         (tdesc_osabi_name): Likewise.
11095
11096 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11097
11098         * common/tdesc.c (tdesc_predefined_type): Move to here.
11099         (tdesc_named_type): Likewise.
11100         (tdesc_create_vector): Likewise.
11101         (tdesc_create_struct): Likewise.
11102         (tdesc_set_struct_size): Likewise.
11103         (tdesc_create_union): Likewise.
11104         (tdesc_create_flags): Likewise.
11105         (tdesc_create_enum): Likewise.
11106         (tdesc_add_field): Likewise.
11107         (tdesc_add_typed_bitfield): Likewise.
11108         (tdesc_add_bitfield): Likewise.
11109         (tdesc_add_flag): Likewise.
11110         (tdesc_add_enum_value): Likewise.
11111         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11112         (struct tdesc_type_vector): Likewise.
11113         (struct tdesc_type_field): Likewise.
11114         (struct tdesc_type_with_fields): Likewise.
11115         (tdesc_create_enum): Add declaration.
11116         (tdesc_add_typed_bitfield): Likewise.
11117         (tdesc_add_enum_value): Likewise.
11118         * target-descriptions.c (tdesc_type_field): Move from here.
11119         (tdesc_type_builtin): Likewise.
11120         (tdesc_type_vector): Likewise.
11121         (tdesc_type_with_fields): Likewise.
11122         (tdesc_predefined_types): Likewise.
11123         (tdesc_named_type): Likewise.
11124         (tdesc_create_vector): Likewise.
11125         (tdesc_create_struct): Likewise.
11126         (tdesc_set_struct_size): Likewise.
11127         (tdesc_create_union): Likewise.
11128         (tdesc_create_flags): Likewise.
11129         (tdesc_create_enum): Likewise.
11130         (tdesc_add_field): Likewise.
11131         (tdesc_add_typed_bitfield): Likewise.
11132         (tdesc_add_bitfield): Likewise.
11133         (tdesc_add_flag): Likewise.
11134         (tdesc_add_enum_value): Likewise.
11135         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11136         (tdesc_add_typed_bitfield): Likewise.
11137         (tdesc_add_enum_value): Likewise.
11138
11139 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11140
11141         * common/tdesc.c (tdesc_feature::accept): Move to here.
11142         (tdesc_feature::operator==): Likewise.
11143         (tdesc_create_reg): Likewise.
11144         * common/tdesc.h (tdesc_type_kind): Likewise.
11145         (struct tdesc_type): Likewise.
11146         (struct tdesc_feature): Likewise.
11147         * regformats/regdat.sh: Create a feature.
11148         * target-descriptions.c (tdesc_type_kind): Move from here.
11149         (tdesc_type): Likewise.
11150         (tdesc_type_up): Likewise.
11151         (tdesc_feature): Likewise.
11152         (tdesc_create_reg): Likewise.
11153
11154 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11155
11156         * Makefile.in: Add arch/tdesc.c
11157         * common/tdesc.c: New file.
11158         * common/tdesc.h (tdesc_element_visitor): Move to here.
11159         (tdesc_element): Likewise.
11160         (tdesc_reg): Likewise.
11161         (tdesc_reg_up): Likewise.
11162         * regformats/regdef.h (reg): Add offset to constructors.
11163         * target-descriptions.c (tdesc_element_visitor): Move from here.
11164         (tdesc_element): Likewise.
11165         (tdesc_reg): Likewise.
11166         (tdesc_reg_up): Likewise.
11167
11168 2018-04-17  Tom Tromey  <tom@tromey.com>
11169
11170         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11171         discriminant field.
11172
11173 2018-04-17  Tom Tromey  <tom@tromey.com>
11174
11175         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11176
11177 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11178
11179         * symtab.c (print_symbol_info): Skip printing filename and line
11180         number when `last' is NULL.
11181         (symtab_symbol_info): Use empty string instead of NULL for first
11182         invocation of print_symbol_info.
11183         (rbreak_command): Pass NULL to `last' parameter of
11184         print_symbol_info.
11185
11186 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11187
11188         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11189         instead of nullptr.
11190
11191 2018-04-16  Pedro Alves  <palves@redhat.com>
11192
11193         * MAINTAINERS (sh): Remove.
11194         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11195         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11196         (ALLDEPFILES): Remove sh64-tdep.c.
11197         * NEWS: Mentions that support for SH-5/SH64 is removed.
11198         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11199         (sh*-*-openbsd*): Ditto.
11200         (sh64-*-elf*): Remove.
11201         (sh*): Remove.
11202         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11203         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11204         * sh-tdep.c: No longer include "sh64-tdep.h".
11205         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11206         * sh64-tdep.c, sh64-tdep.h: Remove files.
11207
11208 2018-04-16  Pedro Alves  <palves@redhat.com>
11209
11210         * MAINTAINERS: Remove m88k.
11211         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11212         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11213         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11214         * NEWS: Mention that support for m88k was removed.
11215         * configure.host (m88*-*-*): Remove support.
11216         * configure.nat (m88k-*-*): Remove support.
11217         * configure.tgt (m88*-*-openbsd*): Remove.
11218         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11219
11220 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11221
11222         * configure.tgt (x86_tobjs): New variable.
11223         (amd64_tobjs, i386_tobjs): Use it.
11224
11225 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11226
11227         * symtab.c (print_symbol_info): Precede the symbol definition by
11228         the line number when available.
11229         * NEWS: Advertise this enhancement.
11230
11231 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11232
11233         * NEWS (New options): announce set/show record btrace cpu.
11234         * btrace.c: Include record-btrace.h.
11235         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11236         the vendor is unknown.
11237         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11238         Maybe overwrite the btrace configuration's cpu.
11239         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11240         (btrace_fetch): Add cpu parameter.  Update callers.
11241         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11242         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11243         errata workarounds if the vendor is unknown.
11244         * python/py-record-btrace.c: Include record-btrace.h.
11245         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11246         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11247         * record-btrace.c (record_btrace_cpu_state_kind): New.
11248         (record_btrace_cpu): New.
11249         (set_record_btrace_cpu_cmdlist): New.
11250         (record_btrace_get_cpu): New.
11251         (require_btrace_thread, record_btrace_info)
11252         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11253         (cmd_set_record_btrace_cpu_none): New.
11254         (cmd_set_record_btrace_cpu_auto): New.
11255         (cmd_set_record_btrace_cpu): New.
11256         (cmd_show_record_btrace_cpu): New.
11257         (_initialize_record_btrace): Initialize set/show record btrace cpu
11258         commands.
11259         * record-btrace.h (record_btrace_get_cpu): New.
11260
11261 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11262
11263         * record.c (set_record_command): Fix typo in message.
11264
11265 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11266
11267         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11268
11269 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11270
11271         * infrun.c (process_event_stop_test): Call
11272         gdbarch_in_indirect_branch_thunk.
11273         * gdbarch.sh (in_indirect_branch_thunk): New.
11274         * gdbarch.c: Regenerated.
11275         * gdbarch.h: Regenerated.
11276         * x86-tdep.h: New.
11277         * x86-tdep.c: New.
11278         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11279         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11280         (ALLDEPFILES): Add x86-tdep.c.
11281         * arch-utils.h (default_in_indirect_branch_thunk): New.
11282         * arch-utils.c (default_in_indirect_branch_thunk): New.
11283         * i386-tdep: Include x86-tdep.h.
11284         (i386_in_indirect_branch_thunk): New.
11285         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11286         function.
11287         * amd64-tdep: Include x86-tdep.h.
11288         (amd64_in_indirect_branch_thunk): New.
11289         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11290
11291 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11292
11293         PR gdb/23053
11294         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11295         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11296         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11297         regression.
11298
11299 2018-04-12  Tom Tromey  <tom@tromey.com>
11300
11301         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11302         (rust_evaluate_subexp): Likewise.
11303
11304 2018-04-12  Pedro Alves  <palves@redhat.com>
11305
11306         * procfs.c (procfs_detach): Make forward declaration's prototype
11307         match definition's protototype.
11308         (proc_get_LDT_entry): Remove stale do_cleanups call.
11309
11310 2018-04-12  Pedro Alves  <palves@redhat.com>
11311
11312         * target.h (target_ops::to_has_exited): Delete.
11313         (target_has_exited): Delete.
11314         * target-delegates.c: Regenerate.
11315
11316 2018-04-11  Pedro Alves  <palves@redhat.com>
11317
11318         * target.c (fileio_fh_t::t): Add comment.
11319         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11320         (target_fileio_close): Handle a NULL target.
11321         (invalidate_fileio_fh): New.
11322         (target_close): Call it.
11323         * remote.c (remote_hostio_send_command): No longer check whether
11324         remote_desc is open.
11325
11326 2018-04-11  Pedro Alves  <palves@redhat.com>
11327
11328         * target.c (fileio_fh_t): Make it a named struct instead of a
11329         typedef.
11330         (fileio_fh_t::is_closed): New method.
11331         (DEF_VEC_O (fileio_fh_t)): Remove.
11332         (fileio_fhandles): Now a std::vector.
11333         (is_closed_fileio_fh): Delete.
11334         (acquire_fileio_fd): Adjust.  Rename parameters.
11335         (release_fileio_fd): Adjust.
11336         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11337         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11338         (target_fileio_close): Adjust.
11339
11340 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11341
11342         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11343         index.
11344
11345 2018-04-10  Pedro Alves  <palves@redhat.com>
11346
11347         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11348         (scoped_finish_thread_state): New class.
11349         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11350         cleanup.
11351         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11352         (fetch_inferior_event, normal_stop): Likewise.
11353         * thread.c (finish_thread_state_cleanup): Delete.
11354
11355 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11356             Pedro Alves  <palves@redhat.com>
11357
11358         * value.c: Include "selftest.h" and "common/array-view.h".
11359         (struct range) <operator ==>: New.
11360         (test_ranges_contain): New.
11361         (check_ranges_vector): New.
11362         (test_insert_into_bit_range_vector): New.
11363         (_initialize_values): Register selftests.
11364         * common/array-view.h (operator==, operator!=): New.
11365
11366 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11367
11368         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11369         an iterator.
11370         * inline-frame.c: Include <algorithm>.
11371         (struct inline_state): Add constructor.
11372         (inline_state_s): Remove.
11373         (DEF_VEC_O(inline_state_s)): Remove.
11374         (inline_states): Change type to std::vector.
11375         (find_inline_frame_state): Adjust to std::vector.
11376         (allocate_inline_frame_state): Remove.
11377         (clear_inline_frame_state): Adjust to std::vector.
11378         (skip_inline_frames): Adjust to std::vector.
11379
11380 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11381
11382         * tracepoint.h (struct trace_state_variable): Add constructor.
11383         <name>: Change type to std::string.
11384         * tracepoint.c (tsv_s): Remove.
11385         (DEF_VEC_O(tsv_s)): Remove.
11386         (tvariables): Change to std::vector.
11387         (create_trace_state_variable): Adjust to std::vector.
11388         (find_trace_state_variable): Likewise.
11389         (find_trace_state_variable_by_number): Likewise.
11390         (delete_trace_state_variable): Likewise.
11391         (trace_variable_command): Adjust to std::string.
11392         (delete_trace_variable_command): Likewise.
11393         (tvariables_info_1): Adjust to std::vector.
11394         (save_trace_state_variables): Likewise.
11395         (start_tracing): Likewise.
11396         (merge_uploaded_trace_state_variables): Adjust to std::vector
11397         and std::string.
11398         * target.h (struct target_ops)
11399         <to_download_trace_state_variable>: Pass reference to
11400         trace_state_variable.
11401         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11402         * target-delegates.c: Re-generate.
11403         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11404         (mi_tsv_deleted): Likewise.
11405         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11406         * remote.c (remote_download_trace_state_variable): Change
11407         pointer to reference and adjust.
11408         * make-target-delegates (parse_argtypes): Handle references.
11409         (write_function_header): Likewise.
11410         (munge_type): Likewise.
11411
11412 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11413
11414         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11415         string_view-selftests.c.
11416         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11417         testsuite.
11418         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11419         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11420         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11421         * unittests/basic_string_view/element_access/char/1.cc:
11422         Likewise.
11423         * unittests/basic_string_view/element_access/char/empty.cc:
11424         Likewise.
11425         * unittests/basic_string_view/element_access/char/front_back.cc:
11426         Likewise.
11427         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11428         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11429         Likewise.
11430         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11431         Likewise.
11432         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11433         Likewise.
11434         * unittests/basic_string_view/operations/compare/char/1.cc:
11435         Likewise.
11436         * unittests/basic_string_view/operations/compare/char/13650.cc:
11437         Likewise.
11438         * unittests/basic_string_view/operations/copy/char/1.cc:
11439         Likewise.
11440         * unittests/basic_string_view/operations/data/char/1.cc:
11441         Likewise.
11442         * unittests/basic_string_view/operations/find/char/1.cc:
11443         Likewise.
11444         * unittests/basic_string_view/operations/find/char/2.cc:
11445         Likewise.
11446         * unittests/basic_string_view/operations/find/char/3.cc:
11447         Likewise.
11448         * unittests/basic_string_view/operations/find/char/4.cc:
11449         Likewise.
11450         * unittests/basic_string_view/operations/rfind/char/1.cc:
11451         Likewise.
11452         * unittests/basic_string_view/operations/rfind/char/2.cc:
11453         Likewise.
11454         * unittests/basic_string_view/operations/rfind/char/3.cc:
11455         Likewise.
11456         * unittests/basic_string_view/operations/substr/char/1.cc:
11457         Likewise.
11458         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11459         * unittests/string_view-selftests.c: New file.
11460
11461 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11462
11463         * unittests/basic_string_view/capacity/1.cc: New file.
11464         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11465         * unittests/basic_string_view/cons/char/1.cc: New file.
11466         * unittests/basic_string_view/cons/char/2.cc: New file.
11467         * unittests/basic_string_view/cons/char/3.cc: New file.
11468         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11469         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11470         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11471         * unittests/basic_string_view/element_access/char/1.cc: New file.
11472         * unittests/basic_string_view/element_access/char/2.cc: New file.
11473         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11474         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11475         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11476         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11477         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11478         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11479         * unittests/basic_string_view/include.cc: New file.
11480         * unittests/basic_string_view/inserters/char/1.cc: New file.
11481         * unittests/basic_string_view/inserters/char/2.cc: New file.
11482         * unittests/basic_string_view/inserters/char/3.cc: New file.
11483         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11484         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11485         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11486         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11487         * unittests/basic_string_view/literals/types.cc: New file.
11488         * unittests/basic_string_view/literals/values.cc: New file.
11489         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11490         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11491         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11492         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11493         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11494         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11495         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11496         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11497         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11498         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11499         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11500         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11501         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11502         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11503         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11504         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11505         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11506         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11507         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11508         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11509         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11510         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11511         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11512         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11513         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11514         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11515         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11516         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11517         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11518         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11519         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11520         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11521         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11522         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11523         * unittests/basic_string_view/operators/char/2.cc: New file.
11524         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11525         * unittests/basic_string_view/range_access/char/1.cc: New file.
11526         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11527         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11528         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11529         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11530         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11531         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11532         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11533         * unittests/basic_string_view/typedefs.cc: New file.
11534         * unittests/basic_string_view/types/1.cc: New file.
11535
11536 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11537
11538         * common/gdb_string_view.h: Remove libstdc++ implementation
11539         details, adjust to gdb reality.
11540         * common/gdb_string_view.tcc: Likewise.
11541         * cli/cli-script.c (struct string_view): Remove.
11542         (user_args) <m_args>: Change element type to gdb::string_view.
11543         (user_args::insert_args): Adjust.
11544
11545 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11546
11547         * common/gdb_string_view.h: New file.
11548         * common/gdb_string_view.tcc: New file.
11549
11550 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11551
11552         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11553         * configure: Re-generate.
11554
11555 2018-04-09  Pedro Alves  <palves@redhat.com>
11556
11557         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11558         (set_target_gdbarch): Call
11559         gdb::observers::architecture_changed.notify instead of
11560         observer_notify_architecture_changed.
11561
11562 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11563
11564         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11565         (do_restore_current_traceframe_cleanup): Remove.
11566         (restore_current_traceframe_cleanup_dtor): Remove.
11567         (make_cleanup_restore_current_traceframe): Remove.
11568         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11569         New.
11570         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11571         * infrun.c (fetch_inferior_event): Use
11572         scoped_restore_current_traceframe.
11573
11574 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11575
11576         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11577         Remove.
11578         <n_allocated_type_units>: Remove.
11579         <all_type_units>: Change to std::vector.
11580         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11581         to std::vector change.
11582         (dwarf2_per_objfile::get_cutu): Likewise.
11583         (dwarf2_per_objfile::get_tu): Likewise.
11584         (create_signatured_type_table_from_index): Likewise.
11585         (create_signatured_type_table_from_debug_names): Likewise.
11586         (dw2_symtab_iter_next): Likewise.
11587         (dw2_print_stats): Likewise.
11588         (dw2_expand_all_symtabs): Likewise.
11589         (dw2_expand_marked_cus): Likewise.
11590         (dw2_debug_names_iterator::next): Likewise.
11591         (dwarf2_initialize_objfile): Likewise.
11592         (add_signatured_type_cu_to_table): Likewise.
11593         (create_all_type_units): Likewise.
11594         (add_type_unit): Likewise.
11595         (struct tu_abbrev_offset): Add constructor.
11596         (build_type_psymtabs_1): Adjust to std::vector change.
11597         (print_tu_stats): Likewise.
11598         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11599         (write_debug_names): Likewise.
11600
11601 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11602
11603         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11604         Make an std::vector.
11605         <n_comp_units>: Remove.
11606         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11607         to std::vector change.
11608         (dwarf2_per_objfile::get_cutu): Likewise.
11609         (dwarf2_per_objfile::get_cu): Likewise.
11610         (create_cus_from_index): Likewise.
11611         (create_addrmap_from_index): Likewise.
11612         (create_addrmap_from_aranges): Likewise.
11613         (dwarf2_read_index): Likewise.
11614         (dw2_find_last_source_symtab): Likewise.
11615         (dw2_map_symtabs_matching_filename): Likewise.
11616         (dw2_symtab_iter_next): Likewise.
11617         (dw2_print_stats): Likewise.
11618         (dw2_expand_all_symtabs): Likewise.
11619         (dw2_expand_symtabs_with_fullname): Likewise.
11620         (dw2_expand_marked_cus): Likewise.
11621         (dw2_map_symbol_filenames): Likewise.
11622         (create_cus_from_debug_names): Likewise.
11623         (dwarf2_read_debug_names): Likewise.
11624         (dw2_debug_names_iterator::next): Likewise.
11625         (dwarf2_initialize_objfile): Likewise.
11626         (set_partial_user): Likewise.
11627         (dwarf2_build_psymtabs_hard): Likewise.
11628         (read_comp_units_from_section): Remove arguments, adjust to
11629         std::vector change.
11630         (create_all_comp_units): Adjust to std::vector and
11631         read_comp_units_from_section changes.
11632         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11633         change.
11634         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11635         (psyms_seen_size): Likewise.
11636         (write_gdbindex): Likewise.
11637         (write_debug_names): Likewise.
11638
11639 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11640
11641         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11642         with dwarf2_per_objfile.
11643         (create_cus_from_index): Likewise.
11644         (create_signatured_type_table_from_index): Likewise.
11645         (dwarf2_read_index): Likewise.
11646         (dwarf2_initialize_objfile): Likewise.
11647         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11648         per_cu rather than get_dwarf2_per_objfile.
11649
11650 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11651
11652         * dwarf2read.h (struct signatured_type): Forward declare.
11653         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11654         New methods.
11655         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11656         (dw2_get_cutu): ...this.
11657         (dwarf2_per_objfile::get_cu): Rename from...
11658         (dw2_get_cu): ...this.
11659         (dwarf2_per_objfile::get_tu): New.
11660         (create_addrmap_from_index): Adjust.
11661         (create_addrmap_from_aranges): Adjust.
11662         (dw2_find_last_source_symtab): Adjust.
11663         (dw2_map_symtabs_matching_filename): Adjust.
11664         (dw2_symtab_iter_next): Adjust.
11665         (dw2_print_stats): Adjust.
11666         (dw2_expand_all_symtabs): Adjust.
11667         (dw2_expand_symtabs_with_fullname): Adjust.
11668         (dw2_expand_marked_cus): Adjust.
11669         (dw_expand_symtabs_matching_file_matcher): Adjust.
11670         (dw2_map_symbol_filenames): Adjust.
11671         (dw2_debug_names_iterator::next): Adjust.
11672         (dwarf2_initialize_objfile): Adjust.
11673         (set_partial_user): Adjust.
11674         (dwarf2_build_psymtabs_hard): Adjust.
11675
11676 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11677
11678         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11679         Remove unused variables.
11680         (dw2_map_symtabs_matching_filename): Likewise.
11681         (dwarf2_record_block_ranges): Likewise.
11682         (dwarf2_read_addr_index): Likewise.
11683         (follow_die_offset): Likewise.
11684
11685 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11686
11687         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11688         to symbol_file_add_main.
11689
11690 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11691
11692         PR mi/22299
11693         * mi/mi-console.c (do_fputc_async_safe): New.
11694         (mi_console_file::write_async_safe): New.
11695         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11696         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11697         New.
11698         * ui-file.c (ui_file::putstrn): Adjust call to
11699         fputstrn_unfiltered.
11700         * utils.c (printchar): Replace do_fputs and do_fprintf
11701         parameters by do_fputc.
11702         (fputstr_filtered): Adjust call to printchar.
11703         (fputstr_unfiltered): Likewise.
11704         (fputstrn_filtered): Likewise.
11705         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11706         printchar.
11707         * utils.h (do_fputc_ftype): New typedef.
11708         (fputstrn_unfiltered): Add do_fputc parameter.
11709
11710 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11711
11712         * regformats/i386/i386-avx.dat: Remove.
11713
11714 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11715
11716         PR gdb/22979
11717         * amd64-tdep.c (amd64_none_init_abi): New function.
11718         (amd64_x32_none_init_abi): New function.
11719         (_initialize_amd64_tdep): Register handlers for x86-64 and
11720         x64_32 with GDB_OSABI_NONE.
11721         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11722         GDB_OSABI_NONE osabi.
11723
11724 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11725
11726         PR gdb/22980
11727         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11728         GDB_OSABI_NONE.
11729         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11730         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11731
11732 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11733
11734         * common/byte-vector.h (char_vector): New type.
11735         * target.h (target_read_alloc): Return
11736         gdb::optional<byte_vector>.
11737         (target_read_stralloc): Return gdb::optional<char_vector>.
11738         (target_get_osdata): Return gdb::optional<char_vector>.
11739         * target.c (target_read_alloc_1): Templatize.  Replacement
11740         manual memory management with vector.
11741         (target_read_alloc): Change return type, adjust.
11742         (target_read_stralloc): Change return type, adjust.
11743         (target_get_osdata): Change return type, adjust.
11744         * auxv.c (struct auxv_info) <length>: Remove.
11745         <data>: Change type to gdb::optional<byte_vector>.
11746         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11747         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11748         (target_auxv_search): Adjust.
11749         (fprint_target_auxv): Adjust.
11750         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11751         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11752         (linux_make_corefile_notes): Adjust.
11753         * osdata.c (get_osdata): Adjust.
11754         * remote.c (remote_get_threads_with_qxfer): Adjust.
11755         (remote_memory_map): Adjust.
11756         (remote_traceframe_info): Adjust.
11757         (btrace_read_config): Adjust.
11758         (remote_read_btrace): Adjust.
11759         (remote_pid_to_exec_file): Adjust.
11760         * solib-aix.c (solib_aix_get_library_list): Adjust.
11761         * solib-dsbt.c (decode_loadmap): Don't free buf.
11762         (dsbt_get_initial_loadmaps): Adjust.
11763         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11764         * solib-target.c (solib_target_current_sos): Adjust.
11765         * tracepoint.c (sdata_make_value): Adjust.
11766         * xml-support.c (xinclude_start_include): Adjust.
11767         (xml_fetch_content_from_file): Adjust.
11768         * xml-support.h (xml_fetch_another): Change return type.
11769         (xml_fetch_content_from_file): Change return type.
11770         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11771         * xml-tdesc.c (file_read_description_xml): Adjust.
11772         (fetch_available_features_from_target): Change return type.
11773         (target_fetch_description_xml): Adjust.
11774         (target_read_description_xml): Adjust.
11775
11776 2018-04-06  Tom Tromey  <tom@tromey.com>
11777
11778         * value.c (~value): Update.
11779         (struct value) <contents>: Now unique_xmalloc_ptr.
11780         (value_contents_bits_eq, allocate_value_contents)
11781         (value_contents_raw, value_contents_all_raw)
11782         (value_contents_for_printing, value_contents_for_printing_const)
11783         (set_value_enclosing_type): Update.
11784
11785 2018-04-06  Tom Tromey  <tom@tromey.com>
11786
11787         * value.c (range_s): Remove typedef, VEC.
11788         (struct range): Add operator<.
11789         (range_lessthan): Remove.
11790         (ranges_contain): Change type.
11791         (~value): Update.
11792         (struct value) <unavailable, optimized_out>: Now std::vector.
11793         (value_entirely_available)
11794         (value_entirely_covered_by_range_vector)
11795         (value_entirely_unavailable, value_entirely_optimized_out):
11796         Update.
11797         (insert_into_bit_range_vector): Change argument type.
11798         (find_first_range_overlap): Likewise.
11799         (struct ranges_and_idx, value_contents_bits_eq)
11800         (require_not_optimized_out, require_available): Update.
11801         (ranges_copy_adjusted): Change argument types.
11802         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11803
11804 2018-04-06  Tom Tromey  <tom@tromey.com>
11805
11806         * value.c (~value): Update.
11807         (struct value) <parent>: Now a value_ref_ptr.
11808         (value_parent, set_value_parent, value_address, value_copy):
11809         Update.
11810
11811 2018-04-06  Tom Tromey  <tom@tromey.com>
11812
11813         * value.c (struct value): Add constructor, destructor, and member
11814         initializers.
11815         (allocate_value_lazy, value_decref): Update.
11816
11817 2018-04-06  Tom Tromey  <tom@tromey.com>
11818
11819         * value.c (struct value) <released, next>: Remove.
11820         (all_values): Now a std::vector.
11821         (allocate_value_lazy): Update.
11822         (value_next): Remove.
11823         (value_mark, value_free_to_mark, release_value)
11824         (value_release_to_mark): Update.
11825
11826 2018-04-06  Tom Tromey  <tom@tromey.com>
11827
11828         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11829         (free_value_chain): Remove.
11830         * value.c (free_value_chain): Remove.
11831         (value_release_to_mark): Return a std::vector.
11832         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11833         std::vector.
11834         (check_condition): Update.
11835         * eval.c (fetch_subexp_value): Change "val_chain" to a
11836         std::vector.
11837         * breakpoint.c (update_watchpoint): Update.
11838         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11839
11840 2018-04-06  Tom Tromey  <tom@tromey.com>
11841
11842         * value.h (free_all_values): Remove.
11843         * value.c (free_all_values): Remove.
11844
11845 2018-04-06  Tom Tromey  <tom@tromey.com>
11846
11847         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11848         (value_history_chain, value_history_count): Remove.
11849         (value_history): New global.
11850         (record_latest_value, access_value_history, show_values)
11851         (preserve_values): Update.
11852
11853 2018-04-06  Tom Tromey  <tom@tromey.com>
11854
11855         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11856         * varobj.c (varobj_set_display_format, varobj_set_value)
11857         (install_default_visualizer, construct_visualizer)
11858         (install_new_value, ~varobj, varobj_get_value_type)
11859         (my_value_of_variable, varobj_editable_p): Update.
11860         * c-varobj.c (c_describe_child, c_value_of_variable)
11861         (cplus_number_of_children, cplus_describe_child): Update.
11862         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11863         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11864         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11865
11866 2018-04-06  Tom Tromey  <tom@tromey.com>
11867
11868         * printcmd.c (last_examine_address): Change type to
11869         value_ref_ptr.
11870         (do_examine, x_command): Update.
11871
11872 2018-04-06  Tom Tromey  <tom@tromey.com>
11873
11874         * value.c (release_value): Update.
11875         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11876         (struct bpstats) <val>: Now a value_ref_ptr.
11877         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11878         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11879         (~watchpoint, print_it_watchpoint, watch_command_1)
11880         (invalidate_bp_value_on_memory_change): Update.
11881
11882 2018-04-06  Tom Tromey  <tom@tromey.com>
11883
11884         * varobj.c (varobj_clear_saved_item)
11885         (update_dynamic_varobj_children, install_new_value, ~varobj):
11886         Update.
11887         * value.h (value_incref): Move declaration earlier.
11888         (value_decref): Rename from value_free.
11889         (struct value_ref_policy): New.
11890         (value_ref_ptr): New typedef.
11891         (struct value_deleter): Remove.
11892         (gdb_value_up): Remove typedef.
11893         (release_value): Change return type.
11894         (release_value_or_incref): Remove.
11895         * value.c (set_value_parent): Update.
11896         (value_incref): Change return type.
11897         (value_decref): Rename from value_free.
11898         (value_free_to_mark, free_all_values, free_value_chain): Update.
11899         (release_value): Return value_ref_ptr.
11900         (release_value_or_incref): Remove.
11901         (record_latest_value, set_internalvar, clear_internalvar):
11902         Update.
11903         * stack.c (info_frame_command): Don't call value_free.
11904         * python/py-value.c (valpy_dealloc, valpy_new)
11905         (value_to_value_object): Update.
11906         * printcmd.c (do_examine): Update.
11907         * opencl-lang.c (lval_func_free_closure): Update.
11908         * mi/mi-main.c (register_changed_p): Don't call value_free.
11909         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11910         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11911         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11912         value_free.
11913         * guile/scm-value.c (vlscm_free_value_smob)
11914         (vlscm_scm_from_value): Update.
11915         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11916         (frame_unwind_register_unsigned, get_frame_register_bytes)
11917         (put_frame_register_bytes): Don't call value_free.
11918         * findvar.c (address_from_register): Don't call value_free.
11919         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11920         * dwarf2loc.c (entry_data_value_free_closure)
11921         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11922         (dwarf2_evaluate_loc_desc_full): Update.
11923         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11924         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11925         (~watchpoint, watch_command_1)
11926         (invalidate_bp_value_on_memory_change): Update.
11927         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11928
11929 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11930
11931         PR gdb/23022
11932         * warning.m4: Add -Wno-error=deprecated-register.
11933         * configure: Re-generate.
11934
11935 2018-04-05  Tom Tromey  <tom@tromey.com>
11936
11937         * linespec.h: Remove include of "vec.h".
11938
11939 2018-04-05  Tom Tromey  <tom@tromey.com>
11940
11941         * linespec.c (typep): Remove typedef.
11942         (find_methods, find_superclass_methods): Take a std::vector.
11943         (find_method): Use std::vector.
11944
11945 2018-04-05  Tom Tromey  <tom@tromey.com>
11946
11947         * utils.c (compare_strings): Remove.
11948         * utils.h (compare_strings): Remove.
11949         * objc-lang.h (find_imps): Update.
11950         * objc-lang.c (find_methods): Take a std::vector.
11951         (uniquify_strings, find_imps): Likewise.
11952         * linespec.c (find_methods): Take a std::vector.
11953         (decode_objc): Use std::vector.
11954         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11955         a std::vector.
11956         (find_method, find_function_symbols): Use std::vector.
11957
11958 2018-04-05  Tom Tromey  <tom@tromey.com>
11959
11960         * completer.c (completion_tracker::completion_tracker): Remove
11961         cast.
11962         (completion_tracker::discard_completions): Likewise.
11963         * breakpoint.c (ambiguous_names_p): Remove cast.
11964         * ada-lang.c (_initialize_ada_language): Remove cast.
11965         * utils.h (streq): Update.
11966         (streq_hash): Add new declaration.
11967         * utils.c (streq): Return bool.
11968         (streq_hash): New function.
11969
11970 2018-04-05  Tom Tromey  <tom@tromey.com>
11971
11972         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11973         Remove a string copy.
11974
11975 2018-04-05  Tom Tromey  <tom@tromey.com>
11976
11977         * linespec.c (filter_results): Use std::vector.
11978         (decode_line_2, decode_line_full): Update.
11979
11980 2018-04-05  Tom Tromey  <tom@tromey.com>
11981
11982         * linespec.c (canonical_to_fullform): Return std::string.
11983         (filter_results): Update.
11984         (struct decode_line_2_item): Add constructor.
11985         <fullform, displayform>: Now std::string.
11986         (decode_line_2_compare_items): Now a std::sort comparator.
11987         (decode_line_2): Update.
11988
11989 2018-04-05  Tom Tromey  <tom@tromey.com>
11990
11991         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11992         (unexpected_linespec_error): Update.
11993         (linespec_parse_basic, parse_linespec): Update.
11994
11995 2018-04-05  Tom Tromey  <tom@tromey.com>
11996
11997         * linespec.c (linespec_parse_basic): Reindent.
11998
11999 2018-04-05  Tom Tromey  <tom@tromey.com>
12000
12001         * minsyms.h (iterate_over_minimal_symbols): Update.
12002         * minsyms.c (iterate_over_minimal_symbols): Take a
12003         gdb::function_view.
12004         * linespec.c (struct collect_minsyms): Remove.
12005         (compare_msyms): Now a std::sort comparator.
12006         (add_minsym): Add parameters.
12007         (search_minsyms_for_name): Update.  Use std::vector.
12008
12009 2018-04-03  Tom Tromey  <tom@tromey.com>
12010
12011         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12012         gdb::byte_vector.
12013
12014 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12015
12016         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12017
12018 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12019
12020         PR gdb/16959
12021         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12022         printing static type.
12023
12024 2018-04-01  Tom Tromey  <tom@tromey.com>
12025
12026         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12027         (rs6000_xfer_shared_libraries): Update.
12028
12029 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12030
12031         * common/gdb_vecs.h (char_ptr): Remove.
12032         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12033
12034 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12035
12036         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
12037         with std::vector.
12038         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
12039
12040 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12041
12042         * tracepoint.h (struct uploaded_tp): Initialize fields.
12043         <actions, step_actions, cmd_strings>: Change type to
12044         std::vector<char *>.
12045         * tracepoint.c (get_uploaded_tp): Allocate with new.
12046         (free_uploaded_tps): Free with delete.
12047         (parse_tracepoint_definition): Adjust to std::vector change.
12048         * breakpoint.c (read_uploaded_action): Likewise.
12049         (create_tracepoint_from_upload): Likewise.
12050         * ctf.c (ctf_write_uploaded_tp): Likewise.
12051         (SET_ARRAY_FIELD): Likewise.
12052         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
12053
12054 2018-03-30  Tom Tromey  <tom@tromey.com>
12055
12056         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
12057         std::unique_ptr.
12058         (svr4_keep_data_in_core): Update.
12059         (svr4_read_so_list): Update.
12060
12061 2018-03-30  Tom Tromey  <tom@tromey.com>
12062
12063         * windows-nat.c (handle_output_debug_string, handle_exception):
12064         Update.
12065         * target.h (target_read_string): Update.
12066         * target.c (target_read_string): Change "string" to
12067         unique_xmalloc_ptr.
12068         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
12069         Update.
12070         * solib-frv.c (frv_current_sos): Update.
12071         * solib-dsbt.c (dsbt_current_sos): Update.
12072         * solib-darwin.c (darwin_current_sos): Update.
12073         * linux-thread-db.c (inferior_has_bug): Update.
12074         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
12075         Update.  Remove alloca.
12076         * ada-lang.c (ada_main_name): Update.
12077
12078 2018-03-30  Tom Tromey  <tom@tromey.com>
12079
12080         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
12081         (struct dwo_file_deleter): New.
12082         (dwo_file_up): New typedef.
12083         (open_and_init_dwo_file): Use dwo_file_up.
12084         (free_dwo_file_cleanup): Remove.
12085
12086 2018-03-30  Tom Tromey  <tom@tromey.com>
12087
12088         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12089         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12090
12091 2018-03-30  Tom Tromey  <tom@tromey.com>
12092
12093         * dwarf2read.c (class free_cached_comp_units): New class.
12094         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12095         (free_cached_comp_units): Remove function.
12096
12097 2018-03-30  Tom Tromey  <tom@tromey.com>
12098
12099         * utils.h (make_cleanup_unpush_target): Remove.
12100         * inf-ptrace.c (struct target_unpusher): New.
12101         (target_unpush_up) New typedef.
12102         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12103         target_unpush_up.
12104         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12105
12106 2018-03-27  Tom Tromey  <tom@tromey.com>
12107
12108         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12109
12110 2018-03-27  Pedro Alves  <palves@redhat.com>
12111             Tom Tromey  <tom@tromey.com>
12112
12113         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12114         destructor.  Now a class.
12115         (gdb_readline_wrapper_cleanup): Remove function.
12116         (gdb_readline_wrapper): Remove cleanups.
12117
12118 2018-03-27  Tom Tromey  <tom@tromey.com>
12119
12120         * typeprint.h (struct type_print_options) <local_typedefs,
12121         global_typedefs>: Remove "struct" keyword.
12122         (class typedef_hash_table): New class.
12123         (recursively_update_typedef_hash, add_template_parameters)
12124         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12125         (find_typedef_in_hash): Don't declare.
12126         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12127         (typedef_hash_table::recursively_update): Rename from
12128         recursively_update_typedef_hash.  Now a member.
12129         (typedef_hash_table::add_template_parameters): Rename from
12130         add_template_parameters.  Now a member.
12131         (typedef_hash_table::typedef_hash_table): Now a constructor;
12132         rename from create_typedef_hash.
12133         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12134         rename from free_typedef_hash.
12135         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12136         (do_free_global_table): Remove.
12137         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12138         from copy_type_recursive.
12139         (create_global_typedef_table): Remove.
12140         (typedef_hash_table::find_global_typedef): Now a member of
12141         typedef_hash_table.
12142         (typedef_hash_table::find_typedef): Rename from
12143         find_typedef_in_hash; now a member.
12144         (whatis_exp): Update.
12145         * extension.h (struct ext_lang_type_printers): Add constructor and
12146         destructor.
12147         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12148         declare.
12149         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12150         Now a constructor; rename from start_ext_lang_type_printers.
12151         (ext_lang_type_printers): Now a destructor; rename from
12152         free_ext_lang_type_printers.
12153         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12154         Update.
12155         (c_type_print_base_struct_union): Update.  Remove cleanups.
12156
12157 2018-03-27  Tom Tromey  <tom@tromey.com>
12158
12159         * dwarf-index-write.c: Include <cmath>.
12160
12161 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12162
12163         * NEWS: Add entry describing new "set|show varsize-limit" command.
12164         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12165         command.
12166         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12167         "set variable".
12168
12169 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12170
12171         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12172         dwarf-index-write.c
12173         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12174         * dwarf-index-common.c: New file.
12175         * dwarf-index-common.h: New file.
12176         * dwarf-index-write.c: New file.
12177         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12178         (struct dwarf2_section_info): Move from here.
12179         (dwarf2_section_info_def): Likewise.
12180         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12181         (offset_type): Likewise.
12182         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12183         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12184         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12185         (byte_swap): Likewise.
12186         (MAYBE_SWAP): Likewise.
12187         (dwarf2_per_cu_ptr): Likewise.
12188         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12189         (struct tu_stats): Likewise.
12190         (struct dwarf2_per_objfile): Likewise.
12191         (struct dwarf2_per_cu_data): Likewise.
12192         (struct signatured_type): Likewise.
12193         (sig_type_ptr): Likewise.
12194         (DEF_VEC_P (sig_type_ptr)): Likewise.
12195         (INDEX4_SUFFIX): Likewise.
12196         (INDEX5_SUFFIX): Likewise.
12197         (DEBUG_STR_SUFFIX): Likewise.
12198         (dwarf2_read_section): Make non-static.
12199         (mapped_index_string_hash): Move from here.
12200         (dwarf5_djb_hash): Likewise.
12201         (file_write): Likewise.
12202         (class data_buf): Likewise.
12203         (struct symtab_index_entry): Likewise.
12204         (struct mapped_symtab): Likewise.
12205         (find_slot): Likewise.
12206         (hash_expand): Likewise.
12207         (add_index_entry): Likewise.
12208         (uniquify_cu_indices): Likewise.
12209         (class c_str_view): Likewise.
12210         (class c_str_view_hasher): Likewise.
12211         (class vector_hasher): Likewise.
12212         (write_hash_table): Likewise.
12213         (psym_index_map): Likewise.
12214         (struct addrmap_index_data): Likewise.
12215         (add_address_entry): Likewise.
12216         (add_address_entry_worker): Likewise.
12217         (write_address_map): Likewise.
12218         (symbol_kind): Likewise.
12219         (write_psymbols): Likewise.
12220         (struct signatured_type_index_data): Likewise.
12221         (write_one_signatured_type): Likewise.
12222         (recursively_count_psymbols): Likewise.
12223         (recursively_write_psymbols): Likewise.
12224         (class debug_names): Likewise.
12225         (check_dwarf64_offsets): Likewise.
12226         (psyms_seen_size): Likewise.
12227         (write_gdbindex): Likewise.
12228         (write_debug_names): Likewise.
12229         (assert_file_size): Likewise.
12230         (write_psymtabs_to_index): Likewise.
12231         (save_gdb_index_command): Likewise.
12232         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12233         command.
12234         * dwarf2read.h: New file.
12235
12236 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12237
12238         PR gdb/22670
12239         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12240         symbol name if the CU's language stores symbol names in linkage
12241         format.
12242         * language.h (struct language_defn)
12243         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12244         all instances of this struct.
12245
12246 2018-03-26  Tom Tromey  <tom@tromey.com>
12247
12248         * stack.c (backtrace_command_1): Remove verbose code.
12249
12250 2018-03-26  Tom Tromey  <tom@tromey.com>
12251
12252         * python/py-framefilter.c (py_print_type): Don't catch
12253         exceptions.  Return void.
12254         (py_print_value): Likewise.
12255         (py_print_single_arg): Likewise.
12256         (enumerate_args): Don't catch exceptions.
12257         (py_print_args): Likewise.
12258         (py_print_frame): Likewise.
12259         (gdbpy_apply_frame_filter): Catch exceptions here.
12260
12261 2018-03-26  Tom Tromey  <tom@tromey.com>
12262
12263         * stack.c (_initialize_stack): Remove trailing newlines from help
12264         text.  Add "Usage" line to "backtrace" help.
12265
12266 2018-03-26  Tom Tromey  <tom@tromey.com>
12267
12268         PR python/16486:
12269         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12270
12271 2018-03-26  Tom Tromey  <tom@tromey.com>
12272
12273         * python/py-framefilter.c (py_print_single_arg): Return
12274         EXT_LANG_BT_ERROR from catch.
12275
12276 2018-03-26  Tom Tromey  <tom@tromey.com>
12277
12278         PR backtrace/15584:
12279         * stack.c (backtrace_command_1): Move some code into no-filters
12280         "if".
12281
12282 2018-03-26  Tom Tromey  <tom@tromey.com>
12283
12284         * python/py-framefilter.c (throw_quit_or_print_exception): New
12285         function.
12286         (gdbpy_apply_frame_filter): Use it.
12287
12288 2018-03-26  Tom Tromey  <tom@tromey.com>
12289
12290         PR cli/17716:
12291         * python/py-framefilter.c (py_print_type, py_print_value)
12292         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12293         RETURN_MASK_ERROR.
12294
12295 2018-03-26  Tom Tromey  <tom@tromey.com>
12296
12297         * python/py-framefilter.c (enumerate_args): Use
12298         gdb::unique_xmalloc_ptr.
12299
12300 2018-03-26  Tom Tromey  <tom@tromey.com>
12301
12302         * python/py-framefilter.c (py_print_frame): Return
12303         EXT_LANG_BT_OK.
12304         (gdbpy_apply_frame_filter): Update comment.
12305         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12306         Remove.
12307         <EXT_LANG_BT_NO_FILTERS>: Change value.
12308
12309 2018-03-26  Tom Tromey  <tom@tromey.com>
12310
12311         PR backtrace/15582:
12312         * stack.c (backtrace_command): Parse "hide" argument.
12313         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12314         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12315         constant.
12316
12317 2018-03-26  Tom Tromey  <tom@tromey.com>
12318
12319         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12320         add "flags".
12321         (backtrace_command): Remove "fulltrace", add "flags".
12322
12323 2018-03-26  Tom Tromey  <tom@tromey.com>
12324
12325         * stack.c (backtrace_command): Rewrite command line parsing.
12326
12327 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12328
12329         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12330
12331 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12332
12333         * filename-seen-cache.h: Add include guard.
12334
12335 2018-03-26  Keith Seitz  <keiths@redhat.com>
12336
12337         * symfile.c (place_section): Remove "struct" from section_addr_info
12338         in comment.
12339         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12340         "struct" keyword from section_addr_info.
12341
12342 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12343
12344         * regformats/regdef.h (reg): Add constructors.
12345
12346 2018-03-25  Pedro Alves  <palves@redhat.com>
12347
12348         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12349         if then/else bodies in var_func_name extraction.
12350
12351 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12352
12353         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12354         lookup_minimal_symbol() to find symbol entry.
12355         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12356
12357 2018-03-23  Keith Seitz  <keiths@redhat.com>
12358
12359         PR c++/22968
12360         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12361         nested type definitions for C++, too.
12362
12363 2018-03-23  Tom Tromey  <tom@tromey.com>
12364
12365         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12366         a typedef.
12367         (macho_register_oso): Remove.
12368         (macho_symtab_read): Take a std::vector.
12369         (oso_el_compare_name): Now a std::sort comparator.
12370         (macho_symfile_read_all_oso): Take a std::vector.
12371         (macho_symfile_read): Use std::vector.  Remove cleanups.
12372
12373 2018-03-22  Tom Tromey  <tom@tromey.com>
12374
12375         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12376         (record_full_goto_bookmark): Use std::string.
12377
12378 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12379
12380         PR tdep/18295
12381         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12382         a single mask.
12383
12384 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12385
12386         * rs6000-tdep.c (store_insn_p): New function.
12387         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12388         and cr_reg to their unshifted values. Use store_insn_p to
12389         match LR saves using either R1 or fdata->alloca_reg. Use
12390         store_insn_p to match CR saves. Set alloca_reg_offset
12391         when alloca_reg and framep are set. Remove lr_reg shift
12392         when assigning to fdata->lr_register.
12393
12394 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12395
12396         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12397         command line args instead of emitting a warning.
12398
12399 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12400
12401         * tracepoint.h (struct static_tracepoint_marker): Initialize
12402         fields, define default constructor, move constructor and move
12403         assignment, disable the rest.
12404         <str_id, extra>: Make std::string.
12405         (release_static_tracepoint_marker): Remove.
12406         (free_current_marker): Remove.
12407         * tracepoint.c (free_current_marker): Remove.
12408         (parse_static_tracepoint_marker_definition): Adjust to
12409         std::string, use new hex2str overload.
12410         (release_static_tracepoint_marker): Remove.
12411         (print_one_static_tracepoint_marker): Get marker by reference
12412         and adjust to std::string.
12413         (info_static_tracepoint_markers_command): Adjust to std::vector
12414         changes
12415         * target.h (static_tracepoint_marker_p): Remove typedef.
12416         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12417         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12418         bool.
12419         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12420         * target-debug.h
12421         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12422         (target_debug_print_std_vector_static_tracepoint_marker): New.
12423         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12424         to...
12425         (target_debug_print_static_tracepoint_marker_p): ... this.
12426         * target-delegates.c: Re-generate.
12427         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12428         Make std::string.
12429         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12430         (decode_static_tracepoint_spec): Adjust to std::vector.
12431         (tracepoint_print_one_detail): Adjust to std::string.
12432         (strace_marker_decode_location): Adjust to std::string.
12433         (update_static_tracepoint): Adjust to std::string, remove call
12434         to release_static_tracepoint_marker.
12435         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12436         Adjust to std::vector.
12437         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12438         (remote_static_tracepoint_markers_by_strid): Adjust to
12439         std::vector.
12440         * common/rsp-low.h (hex2str): New overload with explicit count
12441         of bytes.
12442         * common/rsp-low.c (hex2str): New overload with explicit count
12443         of bytes.
12444         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12445         (_initialize_rsp_low_selftests): Add test_hex2str test.
12446         * unittests/tracepoint-selftests.c
12447         (test_parse_static_tracepoint_marker_definition): Adjust to
12448         std::string.
12449
12450 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12451
12452         * tracepoint.c (parse_static_tracepoint_marker_definition):
12453         Consider case where the definition is followed by more
12454         definitions.
12455         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12456         tracepoint-selftests.c.
12457         * unittests/tracepoint-selftests.c: New.
12458
12459 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12460
12461         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12462         Carvalho.
12463
12464 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12465
12466         * symtab.c (find_pc_sect_line): fixed indentation.
12467
12468 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12469
12470         * symtab.c (find_pc_sect_line): now uses binary search.
12471
12472 2018-03-19  Tom Tromey  <tom@tromey.com>
12473
12474         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12475         "IDENT" production.
12476
12477 2018-03-19  Pedro Alves  <palves@redhat.com>
12478             Tom Tromey  <tom@tromey.com>
12479
12480         * unittests/observable-selftests.c: New file.
12481         * common/observable.h: New file.
12482         * observable.h: New file.
12483         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12484         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12485         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12486         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12487         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12488         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12489         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12490         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12491         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12492         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12493         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12494         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12495         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12496         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12497         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12498         tui/tui-interp.c, valops.c: Update all users.
12499         * tui/tui-hooks.c (tui_bp_created_observer)
12500         (tui_bp_deleted_observer, tui_bp_modified_observer)
12501         (tui_inferior_exit_observer, tui_before_prompt_observer)
12502         (tui_normal_stop_observer, tui_register_changed_observer):
12503         Remove.
12504         (tui_observers_token): New global.
12505         (attach_or_detach, tui_attach_detach_observers): New functions.
12506         (tui_install_hooks, tui_remove_hooks): Use
12507         tui_attach_detach_observers.
12508         * record-btrace.c (record_btrace_thread_observer): Remove.
12509         (record_btrace_thread_observer_token): New global.
12510         * observer.sh: Remove.
12511         * observer.c: Rename to observable.c.
12512         * observable.c (namespace gdb_observers): Define new objects.
12513         (observer_debug): Move into gdb_observers namespace.
12514         (struct observer, struct observer_list, xalloc_observer_list_node)
12515         (xfree_observer_list_node, generic_observer_attach)
12516         (generic_observer_detach, generic_observer_notify): Remove.
12517         (_initialize_observer): Update.
12518         Don't include observer.inc.
12519         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12520         (clean mostlyclean): Likewise.
12521         (observer.h, observer.inc): Remove targets.
12522         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12523         (COMMON_SFILES): Use observable.c, not observer.c.
12524         * .gitignore: Remove observer.h.
12525
12526 2018-03-18  Tom Tromey  <tom@tromey.com>
12527
12528         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12529         gdb::def_vector.
12530         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12531
12532 2018-03-17  Tom Tromey  <tom@tromey.com>
12533
12534         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12535
12536 2018-03-17  Tom Tromey  <tom@tromey.com>
12537
12538         * target.c (class scoped_target_fd): New.
12539         (target_fileio_close_cleanup): Remove.
12540         (target_fileio_read_alloc_1): Use scoped_target_fd.
12541
12542 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12543
12544         * silent-rules.mk: New.
12545         * Makefile.in: Include silent-rules.mk
12546         (srcdir, VPATH, top_srcdir): Move up.
12547         (COMPILE): Add ECHO_CXX.
12548         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12549         (init.c): Add ECHO_INIT_C.
12550         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12551         (version.c): Add ECHO_GEN.
12552         (printcmd.o): Add ECHO_CXX.
12553         (target-float.o): Add ECHO_CXX.
12554         (ada-exp.o): Add ECHO_CXX.
12555         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12556         (insight$(EXEEXT)): Add ECHO_CXXLD.
12557         * gnulib/configure.ac: Add AM_SILENT_RULES.
12558         * gnulib/aclocal.m4: Re-generate.
12559         * gnulib/configure: Re-generate.
12560         * gnulib/import/Makefile.in: Re-generate.
12561
12562 2018-03-16  Tom Tromey  <tom@tromey.com>
12563
12564         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12565         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12566         * utils.c (do_free_section_addr_info)
12567         (make_cleanup_free_section_addr_info): Remove.
12568         * symfile.h (struct other_sections): Add constructor.
12569         (struct section_addr_info): Remove.
12570         (section_addr_info): New typedef.
12571         (struct sym_fns) <sym_offsets>: Change type of parameter.
12572         (build_section_addr_info_from_objfile)
12573         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12574         (default_symfile_offsets, symbol_file_add)
12575         (symbol_file_add_from_bfd)
12576         (build_section_addr_info_from_section_table): Update.
12577         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12578         * symfile.c (alloc_section_addr_info): Remove.
12579         (build_section_addr_info_from_section_table): Change return type.
12580         Update.
12581         (build_section_addr_info_from_bfd)
12582         (build_section_addr_info_from_objfile): Likewise.
12583         (free_section_addr_info): Remove.
12584         (relative_addr_info_to_section_offsets): Change type of "addrs".
12585         (addrs_section_compar): Now a std::sort comparator.
12586         (addrs_section_sort): Change return type.
12587         (addr_info_make_relative): Change type of "addrs".  Update.
12588         (default_symfile_offsets, syms_from_objfile_1)
12589         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12590         (symbol_file_add_separate): Update.
12591         (symbol_file_add): Change type of "addrs".  Update.
12592         (add_symbol_file_command): Update.  Remove cleanups.
12593         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12594         cleanups.
12595         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12596         * solib.c (solib_read_symbols): Update.
12597         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12598         * machoread.c (macho_symfile_offsets): Update.
12599         * jit.c (jit_bfd_try_read_symtab): Update.
12600
12601 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12602
12603         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12604         unittests/utils-selftests.c.
12605         * unittests/utils-selftests.c: New file.
12606
12607 2018-03-14  Tom Tromey  <tom@tromey.com>
12608
12609         PR cli/14977:
12610         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12611         for NULL.
12612
12613 2018-03-14  Tom Tromey  <tom@tromey.com>
12614
12615         PR cli/19918:
12616         * printcmd.c (printf_pointer): Allow "-" in format.
12617
12618 2018-03-14  Tom Tromey  <tom@tromey.com>
12619
12620         * printcmd.c (_initialize_printcmd): Add usage to printf.
12621
12622 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12623
12624         * MAINTAINERS: Update my email address.
12625
12626 2018-03-13  Tom Tromey  <tom@tromey.com>
12627
12628         * machoread.c (macho_check_dsym): Change filenamep to a
12629         std::string*.
12630         (macho_symfile_read): Update.
12631         * symfile.c (load_command): Use std::string.
12632
12633 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12634
12635         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12636         to error message string.
12637         (riscv_register_name): Use xsnprintf instead of sprintf.
12638         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12639         internal_error.
12640         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12641         error.
12642         (riscv_push_dummy_call): Likewise.
12643
12644 2018-03-12  Tom Tromey  <tom@tromey.com>
12645
12646         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12647         Use gdb::byte_vector.
12648         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12649
12650 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12651
12652         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12653         parameter type to readable_regcache.
12654         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12655         the declaration.
12656
12657 2018-03-11  Tom Tromey  <tom@tromey.com>
12658
12659         * dwarf2read.c (struct nextfield): Add initializers.
12660         (struct nextfnfield): Remove.
12661         (struct fnfieldlist): Add initializers.  Remove "length" and
12662         "head", use std::vector.
12663         (struct decl_field_list): Remove.
12664         (struct field_info): Add initializers.
12665         <fields, baseclasses>: Now std::vector.
12666         <nbaseclasses, nfnfields, typedef_field_list_count,
12667         nested_types_list_count>: Remove.
12668         (dwarf2_add_field, dwarf2_add_type_defn)
12669         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12670         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12671         (process_structure_scope): Update.
12672
12673 2018-03-11  Tom Tromey  <tom@tromey.com>
12674
12675         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12676         for use by std::sort.
12677         (build_type_psymtabs_1): Use std::vector.
12678
12679 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12680
12681         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12682         and LIBMPFR in the printed configuration.
12683
12684 2018-03-08  Tom Tromey  <tom@tromey.com>
12685
12686         * source.c (get_filename_and_charpos): Use scoped_fd.
12687         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12688         (procfs_pidlist): Likewise.
12689         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12690         (iterate_over_mappings): Likewise.
12691
12692 2018-03-08  Tom Tromey  <tom@tromey.com>
12693
12694         * infcall.c (struct call_return_meta_info)
12695         <stack_temporaries_enabled>: Remove.
12696         (get_call_return_value, call_function_by_hand_dummy): Update.
12697         * thread.c (disable_thread_stack_temporaries): Remove.
12698         (enable_thread_stack_temporaries): Remove.
12699         (thread_stack_temporaries_enabled_p): Return bool.
12700         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12701         (get_last_thread_stack_temporary): Update.
12702         * eval.c (evaluate_subexp): Update.
12703         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12704         class, not a function.
12705         (value_ptr, value_vec): Remove typedefs.
12706         (class thread_info) <stack_temporaries_enabled>: Now bool.
12707         <stack_temporaries>: Now a std::vector.
12708         (thread_stack_temporaries_enabled_p)
12709         (value_in_thread_stack_temporaries): Return bool.
12710
12711 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12712
12713         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12714         (getpkt_or_notif_sane_1): Likewise.
12715
12716 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12717
12718         * build-id.c (build_id_to_debug_bfd): Use std::string.
12719
12720 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12721
12722         * build-id.c (find_separate_debug_file_by_buildid): Return
12723         std::string.
12724         * build-id.h (find_separate_debug_file_by_buildid): Return
12725         std::string.
12726         * coffread.c (coff_symfile_read): Adjust to std::string.
12727         * elfread.c (elf_symfile_read): Adjust to std::string.
12728         * symfile.c (separate_debug_file_exists): Change parameter to
12729         std::string.
12730         (find_separate_debug_file): Return std::string.
12731         (find_separate_debug_file_by_debuglink): Return std::string.
12732         * symfile.h (find_separate_debug_file_by_debuglink): Return
12733         std::string.
12734
12735 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12736
12737         * common/xml-utils.c (xml_escape_text): Move code to...
12738         (xml_escape_text_append): ... this new function.
12739         * common/xml-utils.h (xml_escape_text_append): New declaration.
12740         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12741         New function.
12742         (_initialize_xml_utils): register test_xml_escape_text_append as
12743         a selftest.
12744
12745 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12746
12747         * defs.h: Remove MAX_REGISTER_SIZE.
12748         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12749         asserts.
12750         * python/py-unwind.c (pyuw_sniffer): Likewise.
12751
12752 2018-03-07  Tom Tromey  <tom@tromey.com>
12753
12754         * linux-tdep.c (linux_info_proc): Update.
12755         * target.h (struct target_ops) <to_fileio_readlink>: Return
12756         optional<string>.
12757         (target_fileio_readlink): Return optional<string>.
12758         * remote.c (remote_hostio_readlink): Return optional<string>.
12759         * inf-child.c (inf_child_fileio_readlink): Return
12760         optional<string>.
12761         * target.c (target_fileio_readlink): Return optional<string>.
12762
12763 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12764
12765         * regcache.c (cooked_read_test): Add riscv to the list of
12766         architectures that have a save_reggroup.
12767
12768 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12769
12770         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12771         value is not a dynamic class object.
12772
12773 2018-03-06  Tom Tromey  <tom@tromey.com>
12774
12775         * rust-exp.y: Formatting fixes.
12776
12777 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12778
12779         * riscv-tdep.c (riscv_register_name): Remove target description
12780         support.
12781         (riscv_gdbarch_init): Remove target description check.
12782
12783 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12784
12785         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12786         comment.
12787         * riscv-tdep.h: Likewise.
12788
12789 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12790
12791         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12792         (riscv_pseudo_register_write): Delete.
12793         (riscv_gdbarch_init): Remove all use of pseudo registers.
12794
12795 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12796
12797         * record-btrace.c (btrace_print_lines): Replace cleanup
12798         parameter with RAII equivalents.
12799         (btrace_insn_history): Replace cleanup with RAII equivalents.
12800         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12801         make_cleanup_ui_out_tuple_begin_end): Remove.
12802         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12803         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12804         make_cleanup_ui_out_list_begin_end): Remove.
12805
12806 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12807
12808         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12809         parameter types to std::vector.  Use bool.
12810         (record_btrace_wait): Replace VEC(tp_t) with
12811         std::vector<thread_info *>.
12812         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12813
12814 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12815
12816         * record-btrace.c (record_btrace_disable_callback): Remove.
12817         (struct scoped_btrace_disable): New.
12818         (record_btrace_open): Use scoped_btrace_disable.
12819
12820 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12821
12822         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12823         reading values from registers.
12824
12825 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12826
12827         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12828         where appropriate.
12829
12830 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12831
12832         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12833         change parameter type.  Use GDB's print functions, and use
12834         core_addr_to_string where appropriate.
12835         (riscv_push_dummy_call): Use core_addr_to_string where
12836         appropriate, update call to riscv_print_arg_location, and reindent
12837         a few lines.
12838         (riscv_return_value): Update call to riscv_print_arg_location.
12839
12840 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12841             Tim Newsome <tim@sifive.com>
12842             Albert Ou <a0u@eecs.berkeley.edu>
12843             Darius Rad <darius@bluespec.com>
12844
12845         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12846         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12847         (ALLDEPFILES): Add riscv-tdep.c
12848         * configure.tgt: Add riscv support.
12849         * riscv-tdep.c: New file.
12850         * riscv-tdep.h: New file.
12851         * NEWS: Mention new target.
12852         * MAINTAINERS: Add entry for riscv.
12853
12854 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12855
12856         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12857         fields within aggregates.
12858
12859 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12860
12861         * record-btrace.c (btrace_print_lines): Change type of flags to
12862         gdb_disassembly_flags.
12863
12864 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12865
12866         * fbsd-nat.c: Include "inf-ptrace.h".
12867         (USE_SIGTRAP_SIGINFO): Conditionally define.
12868         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12869         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12870         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12871         function.
12872         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12873         Likewise.
12874         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12875         Likewise.
12876         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12877         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12878         "supports_stopped_by_hw_breakpoint" target methods.
12879
12880 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12881
12882         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12883         * fbsd-nat.c (debug_fbsd_nat): New variable.
12884         (show_fbsd_nat_debug): New function.
12885         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12886         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12887
12888 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12889
12890         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12891         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12892         prototype.
12893         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12894         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12895         method.
12896
12897 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12898
12899         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12900         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12901
12902 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12903
12904         * charset.c (struct charset_vector): New.
12905         (charsets): Change type to charset_vector.
12906         (find_charset_names): Adjust.
12907         (add_one): Adjust.
12908         (_initialize_charset): Adjust.
12909
12910 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12911
12912         * progspace.h (struct program_space) <deleted_solibs>: Change
12913         type to std::vector<std::string>.
12914         * progspace.c (clear_program_space_solib_cache): Adjust.
12915         * breakpoint.c (print_solib_event): Adjust.
12916         (check_status_catch_solib): Adjust.
12917         * solib.c (update_solib_list): Adjust.
12918         * ui-out.h (class ui_out) <field_string>: New overload.
12919         * ui-out.c (ui_out::field_string): New overload.
12920
12921 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12922
12923         * progspace.h (struct program_space): Add constructor and
12924         destructor, initialize fields.
12925         (add_program_space): Remove.
12926         * progspace.c (add_program_space): Rename to...
12927         (program_space::program_space): ... this.
12928         (release_program_space): Rename to...
12929         (program_space::~program_space): ... this.
12930         (delete_program_space): Use delete to delete program_space.
12931         (initialize_progspace): Use new to allocate program_space.
12932         * inferior.c (add_inferior_with_spaces): Likewise.
12933         (clone_inferior_command): Likewise.
12934         * infrun.c (follow_fork_inferior): Likewise.
12935         (handle_vfork_child_exec_or_exit): Likewise.
12936
12937 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12938
12939         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12940         (delim_string_to_char_ptr_vec): Return std::vector of
12941         gdb::unique_xmalloc_ptr.
12942         (dirnames_to_char_ptr_vec_append): Take std::vector of
12943         gdb::unique_xmalloc_ptr.
12944         (dirnames_to_char_ptr_vec): Return std::vector of
12945         gdb::unique_xmalloc_ptr.
12946         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12947         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12948         (delim_string_to_char_ptr_vec): Return an std::vector of
12949         gdb::unique_xmalloc_ptr, adjust the code.
12950         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12951         gdb::unique_xmalloc_ptr, adjust the code.
12952         (dirnames_to_char_ptr_vec): Return an std::vector of
12953         gdb::unique_xmalloc_ptr, adjust the code.
12954         * auto-load.c (auto_load_safe_path_vec): Change type to
12955         std::vector of gdb::unique_xmalloc_ptr.
12956         (auto_load_expand_dir_vars): Return an std::vector of
12957         gdb::unique_xmalloc_ptr, adjust the code.
12958         (auto_load_safe_path_vec_update): Adjust.
12959         (filename_is_in_auto_load_safe_path_vec): Adjust.
12960         (auto_load_objfile_script_1): Adjust.
12961         * build-id.c (build_id_to_debug_bfd): Adjust.
12962         * linux-thread-db.c (thread_db_load_search): Adjust.
12963         * source.c (add_path): Adjust.
12964         (openp): Adjust.
12965         * symfile.c (find_separate_debug_file): Adjust.
12966         * utils.c (do_free_char_ptr_vec): Remove.
12967         (make_cleanup_free_char_ptr_vec): Remove.
12968
12969 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12970
12971         PR gdb/22907
12972         * common/pathstuff.c: Conditionally include "<windows.h>".
12973
12974 2018-03-01  Georg Sauthoff  <mail@georg.so>
12975
12976         PR gdb/22888
12977         * gcore.in: Quote variables and switch interpreter to bash.
12978
12979 2018-03-01  Tom Tromey  <tom@tromey.com>
12980
12981         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12982         assertion.  Add assertion for discriminant_index.
12983         (quirk_rust_enum): Use correct base type name in univariant case.
12984
12985 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12986
12987         * record.c (get_call_history_modifiers): Return a
12988         record_print_flags.
12989         (cmd_record_call_history): Adjust.
12990         * record-btrace.c (record_btrace_call_history): Adjust.
12991         (record_btrace_call_history_range): Adjust.
12992         (record_btrace_call_history_from): Adjust.
12993         * target-debug.h (target_debug_print_record_print_flags): New.
12994         * target-delegates.c: Re-generate.
12995         * target.c (target_call_history): Change flags type.
12996         (target_call_history_from): Likewise.
12997         (target_call_history_range): Likewise.
12998         * target.h (struct target_ops) <target_call_history>: Likewise.
12999         (target_call_history_from): Likewise.
13000         (target_call_history_range): Likewise.
13001
13002 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13003             Simon Marchi  <simon.marchi@polymtl.ca>
13004
13005         * common/common-utils.c: Include "sys/stat.h".
13006         (is_regular_file): Move here from "source.c"; change return
13007         type to "bool".
13008         * common/common-utils.h (is_regular_file): New prototype.
13009         * common/pathstuff.c (contains_dir_separator): New function.
13010         * common/pathstuff.h (contains_dir_separator): New prototype.
13011         * source.c: Don't include "sys/stat.h".
13012         (is_regular_file): Move to "common/common-utils.c".
13013
13014 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13015
13016         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13017         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13018         * auto-load.c: Include "common/pathstuff.h".
13019         * common/common-def.h (current_directory): Move here.
13020         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13021         function.
13022         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13023         prototype.
13024         * common/pathstuff.c: New file.
13025         * common/pathstuff.h: New file.
13026         * compile/compile.c: Include "common/pathstuff.h".
13027         * defs.h (current_directory): Move to "common/common-defs.h".
13028         * dwarf2read.c: Include "common/pathstuff.h".
13029         * exec.c: Likewise.
13030         * guile/scm-safe-call.c: Likewise.
13031         * linux-thread-db.c: Likewise.
13032         * main.c: Likewise.
13033         * nto-tdep.c: Likewise.
13034         * objfiles.c: Likewise.
13035         * source.c: Likewise.
13036         * symtab.c: Likewise.
13037         * utils.c: Include "common/pathstuff.h".
13038         (gdb_realpath): Move to "common/pathstuff.c".
13039         (gdb_realpath_keepfile): Likewise.
13040         (gdb_abspath): Likewise.
13041         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
13042         (gdb_realpath_keepfile): Likewise.
13043         (gdb_abspath): Likewise.
13044
13045 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
13046
13047         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
13048         wildcard process pid for super_resume for kernels with a
13049         specific bug.
13050
13051 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
13052
13053         * compile/compile.c (get_args): Add additional comments
13054         explaining function.
13055
13056 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
13057             Tom Tromey  <tom@tromey.com>
13058
13059         * target.h (memory_write_request_s): Remove typedef.  Don't define
13060         VEC.
13061         (target_write_memory_blocks): Change argument to std::vector.
13062         (struct memory_write_request): Add constructor.
13063         * target-memory.c (compare_block_starting_address): Return bool.
13064         Change argument types.
13065         (claim_memory): Change arguments to use std::vector.
13066         (split_regular_and_flash_blocks, blocks_to_erase)
13067         (compute_garbled_blocks): Likewise.
13068         (cleanup_request_data, cleanup_write_requests_vector): Remove.
13069         (target_write_memory_blocks): Change argument to std::vector.
13070         * symfile.c (struct load_section_data): Add constructor and
13071         destructor.  Use std::vector for "requests".
13072         (struct load_progress_data): Add initializers.
13073         (load_section_callback): Update.  Use "new".
13074         (clear_memory_write_data): Remove.
13075         (generic_load): Update.
13076
13077 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
13078
13079         * arch/aarch64.h: Use common/tdesc.h.
13080
13081 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13082
13083         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13084         architecture with a 64-bit ABI.
13085
13086 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13087
13088         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13089         ahead of target description loading.
13090
13091 2018-02-26  Tom Tromey  <tom@tromey.com>
13092
13093         * stack.c (backtrace_command_1): Update.
13094         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13095         of "flags".
13096         * python/py-framefilter.c (py_print_frame)
13097         (gdbpy_apply_frame_filter): Change type of "flags".
13098         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13099         of "flags".
13100         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13101         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13102         * extension.h (enum frame_filter_flag): Rename from
13103         frame_filter_flags.
13104         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13105         (apply_ext_lang_frame_filter): Change type of "flags".
13106         * extension.c (apply_ext_lang_frame_filter): Change type of
13107         "flags".
13108         * extension-priv.h (struct extension_language_ops)
13109         <apply_frame_filter>: Change type of "flags".
13110
13111 2018-02-26  Tom Tromey  <tom@tromey.com>
13112
13113         PR python/16497:
13114         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13115         off-by-one in py_end computation.
13116         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13117         PRINT_MORE_FRAMES.
13118         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13119         constant.
13120
13121 2018-02-26  Tom Tromey  <tom@tromey.com>
13122
13123         * dwarf2read.c (struct variant_field): New.
13124         (struct nextfield) <variant>: New field.
13125         (dwarf2_add_field): Handle DW_TAG_variant_part.
13126         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13127         discriminated union.
13128         (read_structure_type): Handle DW_TAG_variant_part.
13129         (handle_struct_member_die): New function, extracted from
13130         process_structure_scope.  Handle DW_TAG_variant.
13131         (process_structure_scope): Handle discriminated unions.  Call
13132         handle_struct_member_die.
13133
13134 2018-02-26  Tom Tromey  <tom@tromey.com>
13135
13136         * rust-lang.h (rust_last_path_segment): Declare.
13137         * rust-lang.c (rust_last_path_segment): Now public.  Change
13138         contract.
13139         (struct disr_info): Remove.
13140         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13141         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13142         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13143         (rust_enum_p, rust_enum_variant): New function.
13144         (rust_underscore_fields): Remove "offset" parameter.
13145         (rust_print_enum): New function.
13146         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13147         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13148         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13149         enums.
13150         (rust_internal_print_type): New function, from rust_print_type.
13151         Remove enum code.
13152         (rust_print_type): Call rust_internal_print_type.
13153         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13154         Update enum handling.
13155         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13156         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13157         (rust_union_quirks): New functions.
13158         (process_full_comp_unit, process_full_type_unit): Call
13159         rust_union_quirks.
13160         (process_structure_scope): Update rust_unions if necessary.
13161
13162 2018-02-26  Tom Tromey  <tom@tromey.com>
13163
13164         * value.h (value_union_variant): Declare.
13165         * valops.c (value_union_variant): New function.
13166         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13167         (struct discriminant_info): New.
13168         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13169         enumerator.
13170         (struct main_type) <flag_discriminated_union>: New field.
13171
13172 2018-02-26  Tom Tromey  <tom@tromey.com>
13173
13174         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13175         unittests/unpack-selftests.c.
13176         * unittests/unpack-selftests.c: New file.
13177         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13178
13179 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13180
13181         * dwarf2read.c (struct partial_die_info) <read>: New method.
13182         (read_partial_die): Remove the declaration.
13183         (load_partial_dies): Update.
13184         (partial_die_info::partial_die_info):
13185         (read_partial_die): Change it to partial_die_info::read.
13186
13187 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13188
13189         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13190         (fixup_partial_die): Remove declaration.
13191         (scan_partial_symbols): Update.
13192         (partial_die_parent_scope): Likewise.
13193         (partial_die_full_name): Likewise.
13194         (fixup_partial_die): Change it to partial_die_info::fixup.
13195
13196 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13197
13198         * dwarf2read.c (read_partial_die): Update the declaration.
13199         (load_partial_dies): Caller update.
13200         (read_partial_die): Remove one argument abbrev_len.
13201
13202 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13203
13204         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13205         assignment operator.
13206         (load_partial_dies): Use ctor and copy ctor.
13207         (read_partial_die): Update.
13208         (dwarf2_cu::find_partial_die): Use ctor.
13209
13210 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13211
13212         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13213         (find_partial_die_in_comp_unit): Change it to
13214         dwarf2_cu::find_partial_die.
13215         (find_partial_die): Update.
13216
13217 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13218
13219         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13220         is NULL.
13221
13222 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13223
13224         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13225
13226 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13227
13228         * arch/amd64.h: Use common/tdesc.h.
13229         * arch/i386.c: Likewise.
13230         * arch/i386.h: Likewise.
13231         * arch/tic6x.c: Likewise.
13232         * arch/tdesc.h: Move file from here...
13233         * common/tdesc.h: ...to here.
13234         * features/aarch64-core.c: Regenerate.
13235         * features/aarch64-fpu.c: Regenerate.
13236         * features/i386/32bit-avx.c: Regenerate.
13237         * features/i386/32bit-avx512.c: Regenerate.
13238         * features/i386/32bit-core.c: Regenerate.
13239         * features/i386/32bit-linux.c: Regenerate.
13240         * features/i386/32bit-mpx.c: Regenerate.
13241         * features/i386/32bit-pkeys.c: Regenerate.
13242         * features/i386/32bit-sse.c: Regenerate.
13243         * features/i386/64bit-avx.c: Regenerate.
13244         * features/i386/64bit-avx512.c: Regenerate.
13245         * features/i386/64bit-core.c: Regenerate.
13246         * features/i386/64bit-linux.c: Regenerate.
13247         * features/i386/64bit-mpx.c: Regenerate.
13248         * features/i386/64bit-pkeys.c: Regenerate.
13249         * features/i386/64bit-segments.c: Regenerate.
13250         * features/i386/64bit-sse.c: Regenerate.
13251         * features/i386/x32-core.c: Regenerate.
13252         * features/tic6x-c6xp.c: Regenerate.
13253         * features/tic6x-core.c: Regenerate.
13254         * features/tic6x-gp.c: Regenerate.
13255         * target-descriptions.c: Use common/tdesc.h.
13256         * target-descriptions.h: Likewise.
13257
13258 2018-02-24  Tom Tromey  <tom@tromey.com>
13259
13260         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13261         (try_thread_db_load_from_dir, thread_db_load_search): Use
13262         std::string.
13263         (info_auto_load_libthread_db_compare): Return bool.  Change
13264         argument types.
13265         (info_auto_load_libthread_db): Use std::vector, std::string.
13266         Remove cleanups.
13267
13268 2018-02-24  Tom Tromey  <tom@tromey.com>
13269
13270         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13271         std::string.
13272         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13273         std::string*.
13274         * gdbarch.c: Rebuild.
13275         * gdbarch.h: Rebuild.
13276         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13277         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13278         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13279         std::string*.
13280
13281 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13282
13283         * gdbtypes.h (sect_offset): Change type to uint64_t.
13284         (sect_offset_str): New function.
13285         * dwarf2read.c (create_addrmap_from_aranges): Use
13286         sect_offset_str.
13287         (error_check_comp_unit_head): Likewise.
13288         (create_debug_type_hash_table): Likewise.
13289         (read_cutu_die_from_dwo): Likewise.
13290         (init_cutu_and_read_dies): Likewise.
13291         (init_cutu_and_read_dies_no_follow): Likewise.
13292         (process_psymtab_comp_unit_reader): Likewise.
13293         (partial_die_parent_scope): Likewise.
13294         (peek_die_abbrev): Likewise.
13295         (process_queue): Likewise.
13296         (dwarf2_physname): Likewise.
13297         (read_namespace_alias): Likewise.
13298         (read_import_statement): Likewise.
13299         (create_dwo_cu_reader): Likewise.
13300         (create_cus_hash_table): Likewise.
13301         (lookup_dwo_cutu): Likewise.
13302         (inherit_abstract_dies): Likewise.
13303         (read_func_scope): Likewise.
13304         (read_call_site_scope): Likewise.
13305         (dwarf2_add_member_fn): Likewise.
13306         (read_common_block): Likewise.
13307         (read_module_type): Likewise.
13308         (read_typedef): Likewise.
13309         (read_subrange_type): Likewise.
13310         (load_partial_dies): Likewise.
13311         (read_partial_die): Likewise.
13312         (find_partial_die): Likewise.
13313         (read_str_index): Likewise.
13314         (dwarf2_string_attr): Likewise.
13315         (build_error_marker_type): Likewise.
13316         (lookup_die_type): Likewise.
13317         (dump_die_shallow): Likewise.
13318         (follow_die_ref): Likewise.
13319         (dwarf2_fetch_die_loc_sect_off): Likewise.
13320         (dwarf2_fetch_constant_bytes): Likewise.
13321         (follow_die_sig): Likewise.
13322         (get_signatured_type): Likewise.
13323         (get_DW_AT_signature_type): Likewise.
13324         (dwarf2_find_containing_comp_unit): Likewise.
13325         (set_die_type): Likewise.
13326
13327 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13328
13329         * arch/aarch64.c: Include "common-defs.h".
13330         * arch/amd64.c: Likewise.
13331         * arch/i386.c: Likewise.
13332
13333 2018-02-21  Tom Tromey  <tom@tromey.com>
13334
13335         * value.h: (extract_field_op): Update.
13336         * eval.c (extract_field_op): Return a const char *.
13337         * expression.h (parse_expression_for_completion): Update.
13338         * completer.c (complete_expression): Update.
13339         (add_struct_fields): Make fieldname const.
13340         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13341         (mark_completion_tag, parse_exp_in_context_1): Update.
13342         (parse_expression_for_completion): Change "name" to
13343         unique_xmalloc_ptr*.
13344
13345 2018-02-21  Tom Tromey  <tom@tromey.com>
13346
13347         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13348
13349 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13350
13351         * avr-tdep.c (avr_read_pc): Change parameter type to
13352         readable_regcache.
13353         * gdbarch.sh (read_pc): Likewise.
13354         * gdbarch.c: Re-generated.
13355         * gdbarch.h: Re-generated.
13356         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13357         readable_regcache.
13358         * ia64-tdep.c (ia64_read_pc): Likewise.
13359         * mips-tdep.c (mips_read_pc): Likewise.
13360         * spu-tdep.c (spu_read_pc): Likewise.
13361
13362 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13363
13364         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13365         * regcache-dump.c: New file.
13366         * regcache.c: Move register_dump to regcache-dump.c.
13367         (maintenance_print_registers): Likewise.
13368         (maintenance_print_raw_registers): Likewise.
13369         (maintenance_print_cooked_registers): Likewise.
13370         (maintenance_print_register_groups): Likewise.
13371         (maintenance_print_remote_registers): Likewise.
13372         (_initialize_regcache): Likewise.
13373         * regcache.h (register_dump): Moved from regcache.c.
13374
13375 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13376
13377         * regcache.c (regcache::regcache): Update.
13378         (regcache::invalidate): Move it to detached_regcache::invalidate.
13379         (get_thread_arch_aspace_regcache): Update.
13380         (regcache::raw_update): Update.
13381         (regcache::cooked_read): Remove some code.
13382         (regcache::cooked_read_value): Likewise.
13383         (regcache::raw_write): Remove assert on m_readonly_p.
13384         (regcache::raw_supply_integer): Move it to
13385         detached_regcache::raw_supply_integer.
13386         (regcache::raw_supply_zeroed): Likewise.
13387         * regcache.h (detached_regcache) <raw_supply_integer>: New
13388         declaration.
13389         <raw_supply_zeroed, invalidate>: Likewise.
13390         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13391         <invalidate>: Likewise.
13392         <m_readonly_p>: Removed.
13393
13394 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13395
13396         * infcmd.c (get_return_value): Let stop_regs point to
13397         get_current_regcache.
13398         * regcache.c (regcache::regcache): Remove.
13399         (register_dump_reg_buffer): New class.
13400         (regcache_print): Adjust.
13401         * regcache.h (regcache): Remove constructors.
13402
13403 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13404
13405         * regcache.c (class register_dump): New class.
13406         (register_dump_regcache, register_dump_none): New class.
13407         (register_dump_remote, register_dump_groups): New class.
13408         (regcache_print): Update.
13409         * regcache.h (regcache_dump_what): Move it to regcache.c.
13410         (regcache) <dump>: Remove.
13411
13412 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13413
13414         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13415          reg_buffer_rw *.
13416         (jit_unwind_reg_set_impl): Call raw_supply.
13417         (jit_frame_sniffer): Use reg_buffer_rw.
13418         * record-full.c (record_full_core_regbuf): Change its type.
13419         (record_full_core_open_1): Use reg_buffer_rw.
13420         (record_full_close): Likewise.
13421         (record_full_core_fetch_registers): Use regcache->raw_supply.
13422         (record_full_core_store_registers): Likewise.
13423         * regcache.c (regcache::get_register_status): Move it to
13424         reg_buffer.
13425         (regcache_raw_set_cached_value): Remove.
13426         (regcache::raw_set_cached_value): Remove.
13427         (regcache::raw_write): Call raw_supply.
13428         (regcache::raw_supply): Move it to reg_buffer_rw.
13429         * regcache.h (regcache_raw_set_cached_value): Remove.
13430         (reg_buffer_rw): New class.
13431
13432 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13433
13434         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13435         readonly_detached_regcache.
13436         (dummy_frame_prev_register): Use regcache->cooked_read.
13437         * frame.c (frame_save_as_regcache): Change return type.
13438         (frame_pop): Update.
13439         * frame.h (frame_save_as_regcache): Update declaration.
13440         * inferior.h (get_infcall_suspend_state_regcache): Update
13441         declaration.
13442         * infrun.c (infcall_suspend_state) <registers>: use
13443         readonly_detached_regcache.
13444         (save_infcall_suspend_state): Don't use regcache_dup.
13445         (get_infcall_suspend_state_regcache): Change return type.
13446         * linux-fork.c (struct fork_info) <savedregs>: Change to
13447         readonly_detached_regcache.
13448         <pc>: New field.
13449         (fork_save_infrun_state): Don't use regcache_dup.
13450         (info_checkpoints_command): Adjust.
13451         * mi/mi-main.c (register_changed_p): Update declaration.
13452         (mi_cmd_data_list_changed_registers): Use
13453         readonly_detached_regcache.
13454         (register_changed_p): Change parameter type to
13455         readonly_detached_regcache.
13456         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13457         readonly_detached_regcache.
13458         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13459         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13460         New.
13461         (regcache::save): Move it to reg_buffer.
13462         (regcache::restore): Change parameter type.
13463         (regcache_dup): Remove.
13464         * regcache.h (reg_buffer) <save>: New method.
13465         (readonly_detached_regcache): New class.
13466         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13467         readonly_detached_regcache.
13468         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13469
13470 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13471
13472         * frame.c (frame_save_as_regcache): Use regcache method save.
13473         (frame_pop): Use regcache method restore.
13474         * infrun.c (restore_infcall_suspend_state): Likewise.
13475         * linux-fork.c (fork_load_infrun_state): Likewise.
13476         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13477         save.
13478         * regcache.c (regcache_save): Remove.
13479         (regcache::restore): More asserts.
13480         (regcache_cpy): Remove.
13481         * regcache.h (regcache_save): Remove the declaration.
13482         (regcache::restore): Move from private to public.
13483         Remove the friend declaration of regcache_cpy.
13484         (regcache_cpy): Remove declaration.
13485
13486 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13487
13488         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13489         parameter type to 'readable_regcache *'.
13490         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13491         * arm-tdep.c (arm_neon_quad_read): Likewise.
13492         (arm_pseudo_read): Likewise.
13493         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13494         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13495         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13496         * gdbarch.c: Re-generated.
13497         * gdbarch.h: Re-generated.
13498         * gdbarch.sh (pseudo_register_read): Change parameter type to
13499         'readable_regcache *'.
13500         (pseudo_register_read_value): Likewise.
13501         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13502         (h8300_pseudo_register_read): Likewise.
13503         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13504         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13505         (i386_pseudo_register_read_into_value): Likewise.
13506         (i386_pseudo_register_read_value): Likewise.
13507         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13508         declaration.
13509         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13510         * m32c-tdep.c (m32c_raw_read): Likewise.
13511         (m32c_read_flg): Likewise.
13512         (m32c_banked_register): Likewise.
13513         (m32c_banked_read): Likewise.
13514         (m32c_sb_read): Likewise.
13515         (m32c_part_read): Likewise.
13516         (m32c_cat_read): Likewise.
13517         (m32c_r3r2r1r0_read): Likewise.
13518         (m32c_pseudo_register_read): Likewise.
13519         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13520         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13521         (mep_pseudo_cr64_read): Likewise.
13522         (mep_pseudo_register_read): Likewise.
13523         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13524         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13525         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13526         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13527         (regcache::cooked_read): Likewise.
13528         (regcache::cooked_read_value): Likewise.
13529         (regcache_cooked_read_signed):
13530         (regcache::cooked_read): Likewise.
13531         * regcache.h (readable_regcache): New class.
13532         (regcache): Inherit readable_regcache.  Move some methods to
13533         readable_regcache.
13534         * rl78-tdep.c (rl78_pseudo_register_read): Change
13535         parameter type to 'readable_regcache *'.
13536         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13537         (e500_pseudo_register_read): Change parameter type to
13538         'readable_regcache *'.
13539         (dfp_pseudo_register_read): Likewise.
13540         (vsx_pseudo_register_read): Likewise.
13541         (efpr_pseudo_register_read): Likewise.
13542         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13543         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13544         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13545         (sh64_pseudo_register_read): Likewise.
13546         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13547         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13548         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13549         (spu_pseudo_register_read): Likewise.
13550         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13551         (xtensa_pseudo_register_read): Likewise.
13552
13553 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13554
13555         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13556         (regcache::arch): Move it to reg_buffer::arch.
13557         (regcache::register_buffer): Likewise.
13558         (regcache::assert_regnum): Likewise.
13559         (regcache::num_raw_registers): Likewise.
13560         * regcache.h (reg_buffer): New class.
13561         (regcache): Inherit reg_buffer.
13562
13563 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13564
13565         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13566         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13567
13568 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13569
13570         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13571
13572 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13573
13574         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13575         (SFILES): Remove common/*.c files.
13576         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13577         * common/common.host: Add common reference.
13578         * configure.ac: Likewise.
13579         * configure: Regenerate.
13580
13581 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13582
13583         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13584         (block_initialize_namespace): Use new.
13585         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13586         (dwarf2_free_objfile): Use delete.
13587         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13588         (copy_type_recursive): Use new.
13589         * gdb_obstack.h (allocate_on_obstack): New.
13590
13591 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13592
13593         PR gdb/22849
13594         * inferior.c (exit_inferior_1): Reset inf->control.
13595
13596 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13597
13598         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13599         declaration.
13600
13601 2018-02-14  Pedro Alves  <palves@redhat.com>
13602
13603         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13604         frame_cleanup_after_sniffer on exception.
13605
13606 2018-02-14  Tom Tromey  <tom@tromey.com>
13607
13608         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13609         const.
13610         (solib_bfd_open): Make pathname const.
13611         * solib.c (solib_bfd_open): Make pathname const.
13612         * solib-spu.c (spu_bfd_fopen): Make name const.
13613         (spu_bfd_open): Make pathname const.
13614         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13615         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13616
13617 2018-02-14  Tom Tromey  <tom@tromey.com>
13618
13619         * symfile.c (symfile_bfd_open): Update.
13620         * source.h (openp, source_full_path_of, find_and_open_source):
13621         Change argument type to unique_xmalloc_ptr.
13622         * source.c (openp): Take a unique_xmalloc_ptr.
13623         (source_full_path_of, find_and_open_source): Likewise.
13624         (open_source_file, symtab_to_fullname): Update.
13625         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13626         unique_xmalloc_ptr.
13627         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13628         (exec_file_find): Update.
13629         * psymtab.c (psymtab_to_fullname): Update.
13630         * nto-tdep.h (nto_find_and_open_solib): Update.
13631         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13632         unique_xmalloc_ptr.
13633         * exec.c (exec_file_attach): Update.
13634         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13635         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13636
13637 2018-02-14  Tom Tromey  <tom@tromey.com>
13638
13639         * solib.c: Include source.h.
13640         * nto-tdep.c: Include source.h.
13641         * mi/mi-cmd-env.c: Include source.h.
13642         * infcmd.c: Include source.h.
13643         * exec.c: Include source.h.
13644         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13645         (add_path, directory_switch, source_path, init_source_path): Move
13646         declarations...
13647         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13648         (add_path, directory_switch, source_path, init_source_path):
13649         ...here.
13650
13651 2018-02-14  Tom Tromey  <tom@tromey.com>
13652
13653         * solist.h (exec_file_find, solib_find): Return
13654         unique_xmalloc_ptr.
13655         (solib_bfd_fopen): Take a const char *.
13656         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13657         (exec_file_find, solib_find): Likewise.
13658         (solib_bfd_fopen): Do not take ownership of "pathname".
13659         (solib_bfd_open): Use unique_xmalloc_ptr.
13660         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13661         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13662         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13663         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13664
13665 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13666
13667         * ada-lang.c (name_match_type_from_name): Remove reference to
13668         ada_name_for_lookup in function's documentation.
13669         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13670
13671 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13672
13673         * defs.h (enum openp_flags): New enum.
13674         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13675         Move to enum openp_flags.
13676         (openp_flags): New enum flags.
13677         (openp): Change parameter type to openp_flags.
13678         * source.c (openp): Change parameter type to openp_flags.
13679         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13680         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13681
13682 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13683
13684         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13685         per-command.
13686
13687 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13688
13689         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13690         into...
13691         (class dwarf2_queue_guard): ...the destructor of this new class.
13692         (dw2_do_instantiate_symtab): Create instance of the new class
13693         dwarf2_queue_guard, remove cleanup.
13694
13695 2018-02-09  Tom Tromey  <tom@tromey.com>
13696
13697         * source.c (find_source_lines): Don't reference past the end of
13698         the vector.
13699
13700 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13701
13702         * remote.c (remote_btrace_maybe_reopen): Change error message.
13703         * btrace.c (btrace_enable): Likewise.
13704         (parse_xml_btrace): Likewise.
13705         (parse_xml_btrace_conf): Likewise.
13706
13707 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13708
13709         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13710         (linux_enable_pt, linux_enable_bts): Call
13711         diagnose_perf_event_open_fail.
13712
13713 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13714
13715         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13716         Remove parameter and change return type.  Update callers.  Move it.
13717         (linux_enable_bts, linux_enable_pt): Improve error message.
13718         (linux_enable_pt): Remove zero buffer size check.
13719         (linux_enable_btrace): Improve error messages.  Remove NULL return
13720         check.
13721
13722 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13723
13724         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13725         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13726         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13727         (linux_supports_pt, linux_supports_btrace): Remove.
13728         (linux_enable_bts): Call cpu_supports_bts.
13729         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13730         * remote.c (remote_supports_btrace): Remove.
13731         (init_remote_ops): Remove remote_supports_btrace.
13732         * target-delegates.c: Regenerated.
13733         * target.c (target_supports_btrace): Remove.
13734         * target.h (target_ops) <to_supports_btrace>: Remove
13735         (target_supports_btrace): Remove.
13736         * x86-linux-nat.c (x86_linux_create_target): Remove
13737         linux_supports_btrace.
13738
13739 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13740
13741         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13742         btrace failed.
13743         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13744         exception and use message in own exception.
13745
13746 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13747
13748         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13749         (perf_event_pt_event_type): Use gdb_file_up.
13750         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13751         scoped_fd, and scoped_mmap.
13752
13753 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13754
13755         * common/scoped_mmap.h: New.
13756         * unittests/scoped_mmap-selftest.c: New.
13757         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13758         unittests/scoped_mmap-selftest.c.
13759
13760 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13761
13762         * common/scoped_fd.h: New.
13763         * unittests/scoped_fd-selftest.c: New.
13764         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13765         unittests/scoped_fd-selftest.c.
13766
13767 2018-02-09  Tom Tromey  <tom@tromey.com>
13768
13769         * auto-load.c (auto_load_section_scripts): Use
13770         gdb::unique_xmalloc_ptr.
13771
13772 2018-02-09  Tom Tromey  <tom@tromey.com>
13773
13774         * auto-load.c (execute_script_contents): Use std::string.
13775
13776 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13777
13778         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13779         Python function, rather than a new command.
13780
13781 2018-02-08  Tom Tromey  <tom@tromey.com>
13782
13783         * solib.c (solib_find_1): Use std::string.
13784         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13785
13786 2018-02-08  Tom Tromey  <tom@tromey.com>
13787
13788         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13789
13790 2018-02-08  Tom Tromey  <tom@tromey.com>
13791
13792         * source.c (find_source_lines): Use gdb::def_vector.
13793
13794 2018-02-08  Tom Tromey  <tom@tromey.com>
13795
13796         * macrocmd.c (struct temporary_macro_definition): New.
13797         (macro_define_command): Use temporary_macro_definition.  Remove
13798         cleanups.
13799         (free_macro_definition_ptr): Remove.
13800
13801 2018-02-08  Tom Tromey  <tom@tromey.com>
13802
13803         * macroexp.c (maybe_expand): Use std::string.
13804
13805 2018-02-08  Tom Tromey  <tom@tromey.com>
13806
13807         * macroexp.c (struct macro_buffer): Add initializers for some
13808         members.
13809         (init_buffer, init_shared_buffer, free_buffer)
13810         (free_buffer_return_text): Remove.
13811         (macro_buffer): New constructors.
13812         (~macro_buffer): New destructor.
13813         (macro_buffer::set_shared): New method.
13814         (macro_buffer::resize_buffer, macro_buffer::appendc)
13815         (macro_buffer::appendmem): Now methods, not free functions.
13816         (set_token, append_tokens_without_splicing, stringify)
13817         (macro_stringify): Update.
13818         (gather_arguments): Change return type.  Remove argc_p argument,
13819         add args_ptr argument.  Use std::vector.
13820         (substitute_args): Remove argc argument.  Accept std::vector.
13821         (expand): Update.  Use std::vector.
13822         (scan, macro_expand, macro_expand_next): Update.
13823
13824 2018-02-08  Tom Tromey  <tom@tromey.com>
13825
13826         * symtab.c (default_collect_symbol_completion_matches_break_on):
13827         Use unique_xmalloc_ptr.
13828         * macroscope.h: (sal_macro_scope, user_macro_scope)
13829         (default_macro_scope): Return unique_xmalloc_ptr.
13830         * macroscope.c (sal_macro_scope, user_macro_scope)
13831         (default_macro_scope): Return unique_xmalloc_ptr.
13832         * macroexp.h (macro_expand, macro_expand_once): Return
13833         unique_xmalloc_ptr.
13834         * macroexp.c (macro_expand, macro_expand_once): Return
13835         unique_xmalloc_ptr.
13836         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13837         (info_macro_command, info_macros_command): Use
13838         unique_xmalloc_ptr.
13839         * compile/compile-c-support.c (write_macro_definitions): Use
13840         unique_xmalloc_ptr.
13841         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13842
13843 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13844
13845         * value.c (value_static_field): Assign field type instead of
13846         containing type when returning an optimized out value.
13847
13848 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13849
13850         * ft32-tdep.c (ft32_read_pc): Remove.
13851         (ft32_write_pc): Remove.
13852         (ft32_gdbarch_init): Update.
13853         * m32r-tdep.c (m32r_read_pc): Remove.
13854         (m32r_gdbarch_init): Update.
13855         * mep-tdep.c (mep_read_pc): Remove.
13856         (mep_gdbarch_init): Update.
13857         * microblaze-tdep.c (microblaze_write_pc): Remove.
13858         (microblaze_gdbarch_init): Update.
13859         * mn10300-tdep.c (mn10300_read_pc): Remove.
13860         (mn10300_write_pc): Remove.
13861         (mn10300_gdbarch_init): Update.
13862         * moxie-tdep.c (moxie_read_pc): Remove.
13863         (moxie_write_pc): Remove.
13864         (moxie_gdbarch_init): Update.
13865
13866 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13867
13868         * expprint.c (print_subexp_standard): Handle
13869         OP_F77_UNDETERMINED_ARGLIST.
13870         (dump_subexp_body_standard): Likewise.
13871
13872 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13873
13874         * target-descriptions.c (tdesc_element_visitor) Add empty
13875         implementations.
13876         (tdesc_type): Move make_gdb_type from here.
13877         (tdesc_type_builtin): Likewise.
13878         (tdesc_type_vector): Likewise.
13879         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13880         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13881         (make_gdb_type_union): Likewise.
13882         (make_gdb_type_flags): Likewise.
13883         (make_gdb_type_enum): Likewise.
13884         (make_gdb_type): New function.
13885         (tdesc_register_type): Use static make_gdb_type.
13886
13887 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13888
13889         * infcmd.c (default_print_one_register_info): Align natural-format
13890         column values consistently one under another.
13891         (pad_to_column): New function.
13892
13893 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13894
13895         * dwarf2read.c (dwarf2_physname): Move commment.
13896
13897 2018-02-01  Leszek Swirski  <leszeks@google.com>
13898
13899         * varobj.c (varobj_formatted_print_options): Allow recursive
13900         pretty printing if pretty printing is enabled.
13901
13902 2018-02-01  Leszek Swirski  <leszeks@google.com>
13903
13904         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13905         names after a structop as a filename.
13906
13907 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13908
13909         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13910         (arm_record_coproc_data_proc): Likewise.
13911
13912 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13913
13914         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13915
13916 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13917
13918         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13919         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13920
13921 2018-01-31  Pedro Alves  <palves@redhat.com>
13922
13923         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13924         * inflow.c (child_terminal_save_inferior): Wrap reference to
13925         tcgetpgrp in HAVE_TERMIOS_H.
13926         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13927         _WIN32.
13928         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13929         always iterate over all inferiors.
13930         (gdbsim_cntrl_c): Adjust.
13931         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13932
13933 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13934
13935         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13936         index type is objfile-owned if the element type is as well.
13937
13938 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13939
13940         GDB 8.1 released.
13941
13942 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13943
13944         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13945         "features/s390x-linux64.c".
13946         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13947         s390_linux32 and s390x_linux64.
13948         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13949         default tdesc.
13950         * s390-tdep.c: Include "features/s390-linux32.c" and
13951         "features/s390x-linux64.c".
13952         (s390_tdesc_valid): Add check for tdesc_has_registers.
13953         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13954         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13955         tdesc_s390x_linux64.
13956         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13957         tdesc_s390x_linux64 to...
13958         * s390-tdep.h: ...here.
13959
13960 2018-01-30  Pedro Alves  <palves@redhat.com>
13961
13962         PR gdb/13211
13963         * config.in, configure: Regenerate.
13964         * configure.ac: Check for getpgid.
13965         * go32-nat.c (go32_pass_ctrlc): New.
13966         (go32_target): Install it.
13967         * inf-child.c (inf_child_target): Install
13968         child_terminal_save_inferior, child_pass_ctrlc and
13969         child_interrupt.
13970         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13971         (inf_ptrace_target): No longer install it.
13972         * infcmd.c (interrupt_target_1): Adjust.
13973         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13974         (child_interrupt): Declare.
13975         (inferior::terminal_state): New.
13976         * inflow.c (struct terminal_info): Update comments.
13977         (inferior_process_group): Delete.
13978         (terminal_is_ours): Delete.
13979         (gdb_tty_state): New.
13980         (child_terminal_init): Adjust.
13981         (is_gdb_terminal, sharing_input_terminal_1)
13982         (sharing_input_terminal): New functions.
13983         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13984         Set the process's actual process group in the foreground if
13985         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13986         mark terminal as the inferior's if not sharing GDB's terminal.
13987         Don't check attach_flag.
13988         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13989         pass down a target_terminal_state.
13990         (child_terminal_save_inferior): New, factored out from ...
13991         (child_terminal_ours_1): ... this.  Handle
13992         target_terminal_state::is_ours_for_output.
13993         (child_interrupt, child_pass_ctrlc): New.
13994         (inflow_inferior_exit): Clear the inferior's terminal_state.
13995         (copy_terminal_info): Copy the inferior's terminal state.
13996         (_initialize_inflow): Remove reference to terminal_is_ours.
13997         * inflow.h (inferior_process_group): Delete.
13998         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13999         * procfs.c (procfs_target): Don't install procfs_interrupt.
14000         (procfs_interrupt): Delete.
14001         * remote.c (remote_serial_quit_handler): Adjust.
14002         (remote_interrupt): Remove ptid parameter.  Adjust.
14003         * target-delegates.c: Regenerate.
14004         * target.c: Include "terminal.h".
14005         (target_terminal::terminal_state): Rename to ...
14006         (target_terminal::m_terminal_state): ... this.
14007         (target_terminal::init): Adjust.
14008         (target_terminal::inferior): Adjust to per-inferior
14009         terminal_state.
14010         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14011         (target_terminal::ours, target_terminal::ours_for_output): Use
14012         target_terminal_is_ours_kind.
14013         (target_interrupt): Remove ptid parameter.  Adjust.
14014         (default_target_pass_ctrlc): Adjust.
14015         * target.h (target_ops::to_terminal_save_inferior): New field.
14016         (target_ops::to_interrupt): Remove ptid_t parameter.
14017         (target_interrupt): Remove ptid_t parameter.  Update comment.
14018         (target_pass_ctrlc): Update comment.
14019         * target/target.h (target_terminal_state): New scoped enum,
14020         factored out of ...
14021         (target_terminal::terminal_state): ... here.
14022         (target_terminal::inferior): Update comments.
14023         (target_terminal::restore_inferior): New.
14024         (target_terminal::is_inferior, target_terminal::is_ours)
14025         (target_terminal::is_ours_for_output): Adjust.
14026         (target_terminal::scoped_restore_terminal_state): Adjust to
14027         rename, and call restore_inferior() instead of inferior().
14028         (target_terminal::scoped_restore_terminal_state::m_state): Change
14029         type.
14030         (target_terminal::terminal_state): Rename to ...
14031         (target_terminal::m_terminal_state): ... this and change type.
14032
14033 2018-01-30  Pedro Alves  <palves@redhat.com>
14034
14035         * linux-nat.c (wait_for_signal): New function.
14036         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
14037         directly.
14038         (async_terminal_is_ours)
14039         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
14040         (linux_nat_add_target): Don't override
14041         to_terminal_inferior/to_terminal_ours.
14042
14043 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
14044
14045         * remote.c (remote_follow_fork): Don't call "detach_inferior".
14046
14047 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
14048
14049         * dwarf2read.c (free_dwo_files): Add forward-declaration.
14050         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
14051         dwarf2_per_objfile_free here.
14052         (dwarf2_per_objfile_free): Remove.
14053         (_initialize_dwarf2_read): Don't register
14054         dwarf2_per_objfile_free as a registry cleanup.
14055
14056 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
14057
14058         Avoid compilation errors in MinGW native builds
14059
14060         The error is triggered by including python-internal.h, and the
14061         error message is:
14062
14063              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
14064                       from build-gnulib/import/math.h:27,
14065                       from d:/usr/Python26/include/pyport.h:235,
14066                       from d:/usr/Python26/include/Python.h:58,
14067                       from python/python-internal.h:94,
14068                       from python/py-arch.c:24:
14069              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
14070         using ::hypot;
14071                 ^~~~~
14072
14073         This happens because Python headers define 'hypot' to expand t
14074         '_hypot' in the Windows builds.
14075         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
14076         'hypoth'.  This avoids a compilation error.
14077
14078 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14079
14080         * MAINTAINERS (Write After Approval): Fix ordering.
14081
14082 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14083
14084         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14085
14086 2018-01-26  Alan Modra  <amodra@gmail.com>
14087
14088         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14089         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14090         Remove nop.  Make const.  Comment.
14091         (powerpc32_plt_stub_so_2): New.
14092         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14093         Correct count.  Update uses.
14094         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14095         Move common code reading PLT entry word.  Correct
14096         powerpc32_plt_stub PLT address calculation.
14097         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14098         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14099         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14100         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14101         (ppc64_standard_linkage8): Likewise.
14102         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14103         Correct insns description.
14104         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14105
14106 2018-01-24  Pedro Alves  <palves@redhat.com>
14107
14108         GCC PR libstdc++/83906
14109         * gdbtypes.c (operator==(const dynamic_prop &,
14110         const dynamic_prop &)): New.
14111         (operator==(const range_bounds &, const range_bounds &)): New.
14112         (check_types_equal): Use them instead of memcmp.
14113         * gdbtypes.h (operator==(const dynamic_prop &,
14114         const dynamic_prop &)): Declare.
14115         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14116         (operator==(const range_bounds &, const range_bounds &)): Declare.
14117         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14118
14119 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14120
14121         * s390-linux-tdep.c (s390_record_address_mask)
14122         (s390_record_calc_disp_common, s390_record_calc_disp)
14123         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14124         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14125         (s390_process_record): Move to s390-tdep.c.
14126         (s390_linux_init_abi_any): Adjust.
14127         * s390-tdep.c (s390_record_address_mask)
14128         (s390_record_calc_disp_common, s390_record_calc_disp)
14129         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14130         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14131         (s390_process_record): Moved from s390-linux-tdep.c
14132         (s390_gdbarch_init): Adjust.
14133
14134 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14135
14136         * s390-linux-nat.c (s390-tdep.h): New include.
14137         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14138         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14139         (ALLDEPFILES): Add s390-tdep.c.
14140         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14141         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14142         * s390-tdep.h: ...this.  New file.
14143         * s390-linux-tdep.c (s390-tdep.h): New include.
14144         (_initialize_s390_tdep): Rename to...
14145         (_initialize_s390_linux_tdep): ...this and adjust.
14146         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14147         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14148         s390-tdep.h.
14149         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14150         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14151         (s390_is_partial_instruction, s390_software_single_step)
14152         (is_non_branch_ril, s390_displaced_step_copy_insn)
14153         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14154         (s390_prologue_data, s390_addr, s390_store, s390_load)
14155         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14156         (s390_register_call_saved, s390_guess_tracepoint_registers)
14157         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14158         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14159         (s390_pseudo_register_name, s390_pseudo_register_type)
14160         (s390_pseudo_register_read, s390_pseudo_register_write)
14161         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14162         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14163         (s390_addr_bits_remove, s390_address_class_type_flags)
14164         (s390_address_class_type_flags_to_name)
14165         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14166         (s390_function_arg_float, s390_function_arg_vector)
14167         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14168         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14169         (s390_frame_align, s390_register_return_value, s390_return_value)
14170         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14171         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14172         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14173         (s390_trad_frame_prev_register, s390_unwind_cache)
14174         (s390_prologue_frame_unwind_cache)
14175         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14176         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14177         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14178         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14179         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14180         (s390_frame_base_address, s390_local_base_address)
14181         (s390_frame_base, s390_gcc_target_options)
14182         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14183         (s390_validate_reg_range, s390_tdesc_valid)
14184         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14185         * s390-tdep.c: ...this.  New file.
14186
14187 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14188
14189         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14190         (s390_process_record, s390_gdbarch_tdep_alloc)
14191         (s390_linux_init_abi_any): Use/set new hook.
14192
14193 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14194
14195         * s390-linux-tdep.c (osabi.h): New include.
14196         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14197         (s390_linux_init_abi_any): New functions.
14198         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14199
14200 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14201
14202         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14203         tdesc_has_registers check
14204
14205 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14206
14207         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14208         (s390_validate_reg_range): New macro.
14209         (s390_gdbarch_init): Adjust.
14210
14211 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14212
14213         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14214         (s390_gdbarch_tdep_alloc): Adjust.
14215         (s390_gdbarch_init): Adjust.
14216
14217 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14218
14219         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14220         <have_tdb>: Change type to bool.
14221         (s390_gdbarch_tdep_alloc): Adjust.
14222         (s390_gdbarch_init): Adjust.
14223
14224 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14225
14226         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14227         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14228         (s390_gdbarch_tdep_alloc): New function.
14229         (s390_gdbarch_init): Allocate tdep at start and use its fields
14230         instead of separate variables.
14231
14232 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14233
14234         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14235         when looking for cached gdbarch and add comment for remaining.
14236
14237 2018-01-22  Pedro Alves  <palves@redhat.com>
14238             Sergio Durigan Junior  <sergiodj@redhat.com>
14239
14240         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14241         case.
14242
14243 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14244
14245         * MAINTAINERS: Update my company e-mail address.
14246
14247 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14248
14249         * regcache.c (cooked_write_test): New function.
14250         (_initialize_regcache): Register the test.
14251
14252 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14253
14254         * ia64-tdep.c (ia64_pseudo_register_read): Call
14255         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14256         * m32c-tdep.c (m32c_cat_read): Likewise.
14257         (m32c_r3r2r1r0_read): Likewise.
14258         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14259         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14260
14261 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14262
14263         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14264         method raw_read instead of regcache_raw_read.
14265         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14266         * arm-tdep.c (arm_neon_quad_read): Likewise.
14267         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14268         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14269         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14270         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14271         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14272         (i386_pseudo_register_read_into_value): Likewise.
14273         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14274         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14275         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14276         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14277         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14278         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14279         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14280         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14281         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14282
14283 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14284
14285         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14286         * configure.tgt: Remove target mt.
14287         * mt-tdep.c: Remove.
14288         * regcache.c (cooked_read_test): Remove the check for mt.
14289
14290 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14291
14292         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14293         instead of gdbarch_pseudo_register_read_value.
14294
14295 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14296
14297         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14298         language is Ada.
14299
14300 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14301
14302         * linespec.c (create_sals_line_offset): Remove code that preserved
14303         the symtab_and_line's line number.
14304
14305 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14306
14307         * varobj.c (varobj_create): Don't set valid_block when creating a
14308         floating varobj.
14309
14310 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14311
14312         * varobj.c (varobj_create): Remove out of date comment.
14313
14314 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14315
14316         PR mi/20395
14317         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14318         updating innermost block.
14319         * parse.c (innermost_block_tracker::update): Take extra type
14320         parameter, and check types match before updating innermost block.
14321         (write_dollar_variable): Update innermost block for registers.
14322         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14323         (innermost_block_tracker::innermost_block_tracker): Initialise
14324         m_types member.
14325         (innermost_block_tracker::reset): Take type parameter.
14326         (innermost_block_tracker::update): Take type parameter, and pass
14327         type through as needed.
14328         (innermost_block_tracker::m_types): New member.
14329         * varobj.c (varobj_create): Pass type when reseting innermost
14330         block.
14331
14332 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14333
14334         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14335         * ada-lang.c (resolve_subexp): Likewise.
14336         * breakpoint.c (set_breakpoint_condition) Likewise.
14337         (watch_command_1) Likewise.
14338         * c-exp.y (variable): Likewise.
14339         * d-exp.y (PrimaryExpression): Likewise.
14340         * f-exp.y (variable): Likewise.
14341         * go-exp.y (variable): Likewise.
14342         * m2-exp.y (variable): Likewise.
14343         * objfiles.c (objfile::~objfile): Likewise.
14344         * p-exp.y (variable): Likewise.
14345         * parse.c (innermost_block): Change type.
14346         * parser-defs.h (class innermost_block_tracker): New.
14347         (innermost_block): Change to innermost_block_tracker.
14348         * printcmd.c (display_command): Switch to innermost_block API.
14349         (do_one_display): Likewise.
14350         * rust-exp.y (do_one_display): Likewise.
14351         * symfile.c (clear_symtab_users): Likewise.
14352         * varobj.c (varobj_create): Switch to innermost_block API, replace
14353         use of innermost_block with block stored on varobj object.
14354
14355 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14356
14357         * expression.h (innermost_block): Remove declaration.
14358         * varobj.c: Add 'parser-defs.h' include.
14359
14360 2018-01-19  Tom Tromey  <tom@tromey.com>
14361
14362         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14363         symbols in the static and global blocks.
14364
14365 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14366
14367         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14368         gdb_ptrace.h, and move including gdb_wait.h ...
14369         * nat/linux-ptrace.h: ... to here.
14370
14371 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14372
14373         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14374         inf_ptrace_detach_success.
14375         (inf_ptrace_detach_success): Add inferior parameter, use it
14376         instead of inferior_ptid, pass it to detach_inferior.
14377         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14378         parameter.
14379         * inferior.c (detach_inferior): Add overload that takes an
14380         inferior object.
14381         * inferior.h (detach_inferior): Likewise.
14382         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14383         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14384         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14385
14386 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14387
14388         * target.h (struct target_ops) <to_detach>: Add inferior
14389         parameter.
14390         (target_detach): Likewise.
14391         * target.c (dispose_inferior): Pass inferior down.
14392         (target_detach): Pass inferior down.  Assert that it is equal to
14393         the current inferior.
14394         * aix-thread.c (aix_thread_detach): Pass inferior down.
14395         * corefile.c (core_file_command): Pass current_inferior() down.
14396         * corelow.c (core_detach): Add inferior parameter.
14397         * darwin-nat.c (darwin_detach): Likewise.
14398         * gnu-nat.c (gnu_detach): Likewise.
14399         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14400         * infcmd.c (detach_command): Pass current_inferior() down to
14401         target_detach.
14402         * infrun.c (follow_fork_inferior): Pass parent_inf to
14403         target_detach.
14404         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14405         target_detach.
14406         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14407         * linux-thread-db.c (thread_db_detach): Likewise.
14408         * nto-procfs.c (procfs_detach): Likewise.
14409         * procfs.c (procfs_detach): Likewise.
14410         * record.c (record_detach): Likewise.
14411         * record.h (struct inferior): Forward-declare.
14412         (record_detach): Add inferior parameter.
14413         * remote-sim.c (gdbsim_detach): Likewise.
14414         * remote.c (remote_detach_1): Likewise.
14415         (remote_detach): Likewise.
14416         (extended_remote_detach): Likewise.
14417         * sol-thread.c (sol_thread_detach): Likewise.
14418         * target-debug.h (target_debug_print_inferior_p): New macro.
14419         * target-delegates.c: Re-generate.
14420         * top.c (kill_or_detach): Pass inferior down to target_detach.
14421         * windows-nat.c (windows_detach): Add inferior parameter.
14422
14423 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14424
14425         * target.h (struct target_ops) <to_detach>: Remove args
14426         parameter.
14427         (target_detach): Likewise.
14428         * target.c (dispose_inferior): Adjust.
14429         (target_detach): Remove args parameter, adjust.
14430         * aix-thread.c (aix_thread_detach): Adjust.
14431         * corefile.c (core_file_command): Adjust.
14432         * corelow.c (core_detach): Adjust.
14433         * darwin-nat.c (darwin_detach): Adjust.
14434         * gnu-nat.c (gnu_detach): Adjust.
14435         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14436         * infcmd.c (detach_command): Adjust
14437         * infrun.c (follow_fork_inferior): Adjust.
14438         (handle_vfork_child_exec_or_exit): Adjust.
14439         * linux-fork.c (linux_fork_detach): Remove args parameter.
14440         * linux-fork.h (linux_fork_detach): Likewise.
14441         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14442         * linux-thread-db.c (thread_db_detach): Likewise.
14443         * nto-procfs.c (procfs_detach): Likewise.
14444         * procfs.c (procfs_detach): Likewise.
14445         (do_detach): Remove signo parameter.
14446         * record.c (record_detach): Remove args parameter.
14447         * record.h (record_detach): Likewise.
14448         * remote-sim.c (gdbsim_detach): Likewise.
14449         * remote.c (remote_detach_1): Likewise.
14450         (remote_detach): Likewise.
14451         (extended_remote_detach): Likewise.
14452         * sol-thread.c (sol_thread_detach): Likewise.
14453         * target-delegates.c: Re-generate.
14454         * top.c (struct qt_args) <args>: Remove field.
14455         (kill_or_detach): Don't pass args.
14456         (quit_force): Don't set args.
14457         * windows-nat.c (windows_detach): Remove args parameter.
14458
14459 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14460
14461         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14462         (arm_linux_init_abi): Install it.
14463
14464 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14465
14466         * osabi.c (gdb_osabi_names): Extend the regexp for
14467         arm-linux-gnueabihf.
14468
14469 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14470
14471         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14472         m_abbrevs.
14473         (abbrev_table::add_abbrev): Update.
14474         (abbrev_table::lookup_abbrev): Update.
14475
14476 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14477
14478         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14479
14480 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14481
14482         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14483         to "std::string".
14484
14485 2018-01-17  Tom Tromey  <tom@tromey.com>
14486
14487         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14488
14489 2018-01-17  Tom Tromey  <tom@tromey.com>
14490
14491         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14492         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14493         (create_array_type_with_stride): Update.
14494         * dwarf2read.c (set_die_type): Update.
14495
14496 2018-01-17  Tom Tromey  <tom@tromey.com>
14497
14498         * dwarf2read.c (delayed_method_info): Remove typedef.
14499         (dwarf2_cu::method_info): Now a std::vector.
14500         (add_to_method_list): Update.
14501         (free_delayed_list): Remove.
14502         (compute_delayed_physnames): Update.
14503         (process_full_comp_unit, process_full_type_unit): Clear the method
14504         list.  Remove cleanups.
14505         (psymtab_include_file_name): Add name_holder parameter.  Use
14506         unique_xmalloc_ptr.
14507         (dwarf_decode_lines): Update.
14508
14509 2018-01-17  Tom Tromey  <tom@tromey.com>
14510             Simon Marchi  <simon.marchi@ericsson.com>
14511
14512         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14513         (dwarf2_per_objfile::free_cached_comp_units)
14514         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14515         (init_cutu_and_read_dies_no_follow): Update.
14516         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14517         (dwarf2_cu::~dwarf2_cu): New.
14518         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14519         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14520
14521 2018-01-17  Tom Tromey  <tom@tromey.com>
14522             Simon Marchi  <simon.marchi@ericsson.com>
14523
14524         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14525         (struct die_reader_specs) <abbrev_table>: New member.
14526         (struct abbrev_table): Add constructor.
14527         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14528         <abbrev_obstack>: Now an auto_obstack.
14529         (abbrev_table_up): New typedef.
14530         (init_cu_die_reader): Add abbrev_table parameter.
14531         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14532         Add result_dwo_abbrev_table.
14533         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14534         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14535         Update.
14536         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14537         parameter.
14538         (skip_children): Update.
14539         (abbrev_table::alloc_abbrev): Rename from
14540         abbrev_table_alloc_abbrev.
14541         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14542         (abbrev_table::lookup_abbrev): Rename from
14543         abbrev_table_lookup_abbrev.
14544         (abbrev_table_read_table): Return abbrev_table_up.
14545         (abbrev_table_free, abbrev_table_free_cleanup)
14546         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14547         (load_partial_dies): Update.
14548
14549 2018-01-17  Tom Tromey  <tom@tromey.com>
14550
14551         * dwarf2read.c (dwarf2_compute_name): Update comment.
14552         (read_func_scope, read_variable): Update.
14553         (new_symbol): Remove.
14554         (new_symbol_full): Rename to new_symbol.
14555
14556 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14557
14558         PR gdb/16577
14559         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14560         a warning instead of throwing an error, set section size to 0 and return
14561         NULL.
14562         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14563
14564 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14565
14566         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14567         std::string.
14568         (linux_ptrace_attach_fail_reason_string): Likewise.
14569         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14570         Likewise.
14571         (linux_ptrace_attach_fail_reason_string): Likewise.
14572         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14573
14574 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14575
14576         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14577
14578 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14579
14580         PR gdb/21559
14581         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14582         checking for fs_base/gs_base fields in struct user_regs_struct.
14583         * configure: Regenerate.
14584
14585 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14586
14587         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14588         function.
14589         (aarch64_linux_init_abi): Install it to gdbarch hook
14590         gcc_target_options.
14591
14592 2018-01-15  Pedro Alves  <palves@redhat.com>
14593
14594         * common/signals-state-save-restore.c
14595         (save_original_signals_state): Fix typos.
14596
14597 2017-01-12  Tom Tromey  <tom@tromey.com>
14598             Sergio Durigan Junior  <sergiodj@redhat.com>
14599
14600         * Makefile.in (install-only): Install gdb-add-index.
14601
14602 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14603
14604         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14605
14606 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14607
14608         * infrun.c (keep_going_pass_signal): Clear step-over info when
14609         insert_breakpoints fails.
14610
14611 2018-01-11  Pedro Alves  <palves@redhat.com>
14612
14613         PR gdb/22583
14614         * infrun.c (resume): Rename to ...
14615         (resume_1): ... this.
14616         (resume): Reimplement as wrapper around resume_1.
14617
14618 2018-01-11  Pedro Alves  <palves@redhat.com>
14619
14620         PR remote/22597
14621         * remote.c (remote_parse_stop_reply): Default to the last-set
14622         general thread instead of to 'magic_null_ptid'.
14623
14624 2018-01-10  Pedro Alves  <palves@redhat.com>
14625
14626         * language.h (language_get_symbol_name_matcher): Rename ...
14627         (get_symbol_name_matcher): ... this.
14628         * language.c (language_get_symbol_name_matcher): Ditto.
14629         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14630         callers adjusted.
14631
14632 2018-01-10  Pedro Alves  <palves@redhat.com>
14633
14634         PR gdb/22670
14635         * dwarf2read.c
14636         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14637         Adjust to use language_get_symbol_name_matcher instead of
14638         language_defn::la_get_symbol_name_matcher.
14639         * language.c (language_get_symbol_name_matcher): If in Ada mode
14640         and the lookup name is a verbatim match, return Ada's matcher.
14641         * language.h (language_get_symbol_name_matcher): Adjust comment.
14642         (ada_lookup_name_info::verbatim_p):: New method.
14643
14644 2018-01-10  Pedro Alves  <palves@redhat.com>
14645
14646         PR gdb/22670
14647         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14648         minsym's language is language_auto or language_cplus, pass down
14649         language_ada instead.
14650         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14651
14652 2018-01-10  Pedro Alves  <palves@redhat.com>
14653
14654         PR gdb/22670
14655         * minsyms.c (linkage_name_str): New function.
14656         (iterate_over_minimal_symbols): Use it.
14657
14658 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14659
14660         * NEWS: Document that 'info proc' now works on FreeBSD.
14661
14662 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14663
14664         * configure.ac: Check for kinfo_getfile in libutil.
14665         * configure: Regenerate.
14666         * config.in: Regenerate.
14667         * fbsd-nat.c: Include "fbsd-tdep.h".
14668         (fbsd_fetch_cmdline): New.
14669         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14670         rather than calling error.
14671         (fbsd_info_proc): New.
14672         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14673         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14674         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14675
14676 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14677
14678         * fbsd-nat.c (struct free_deleter): Remove.
14679         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14680
14681 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14682
14683         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14684         NULL for an empty pathname.
14685
14686 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14687
14688         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14689         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14690         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14691         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14692         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14693         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14694         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14695         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14696         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14697         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14698         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14699         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14700         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14701         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14702         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14703
14704 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14705
14706         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14707         (gnu_xfer_auxv): New function.
14708         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14709         TARGET_OBJECT_AUXV.
14710
14711 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14712             Simon Marchi  <simon.marchi@ericsson.com>
14713
14714         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14715         common/selftest.c.
14716         (COMMON_OBS): Remove selftest.o.
14717         * configure.ac: Append selftest-arch.c and common/selftest.c to
14718         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14719         * configure: Re-generated.
14720         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14721         GDB_SELF_TEST.
14722         (maintenance_info_selftests): Likewise.
14723
14724 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14725
14726         * ada-valprint.c (val_print_packed_array_elements): Use
14727         proper number of elements when printing an array indexed
14728         by an enumeration type.
14729
14730 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14731
14732         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14733         (dw2_get_file_names_reader): Adjust.
14734         (lookup_dwo_signatured_type): Adjust.
14735         (lookup_dwp_signatured_type): Adjust.
14736         (lookup_signatured_type): Adjust.
14737         (create_type_unit_group): Adjust.
14738         (get_type_unit_group): Adjust.
14739         (process_psymtab_comp_unit_reader): Adjust.
14740         (build_type_psymtabs_reader): Adjust.
14741         (scan_partial_symbols): Adjust.
14742         (add_partial_symbol): Adjust.
14743         (add_partial_subprogram): Adjust.
14744         (peek_die_abbrev): Adjust.
14745         (fixup_go_packaging): Adjust.
14746         (process_imported_unit_die): Adjust.
14747         (dwarf2_compute_name): Adjust.
14748         (dwarf2_physname): Adjust.
14749         (read_import_statement): Adjust.
14750         (handle_DW_AT_stmt_list): Adjust.
14751         (read_file_scope): Adjust.
14752         (read_func_scope): Adjust.
14753         (read_lexical_block_scope): Adjust.
14754         (read_call_site_scope): Adjust.
14755         (read_variable): Adjust.
14756         (dwarf2_rnglists_process): Adjust.
14757         (dwarf2_ranges_process): Adjust.
14758         (dwarf2_ranges_read): Adjust.
14759         (dwarf2_get_pc_bounds): Adjust.
14760         (dwarf2_record_block_ranges): Adjust.
14761         (dwarf2_add_field): Adjust.
14762         (dwarf2_add_member_fn): Adjust.
14763         (read_structure_type): Adjust.
14764         (process_structure_scope): Adjust.
14765         (read_enumeration_type): Adjust.
14766         (read_array_type): Adjust.
14767         (mark_common_block_symbol_computed): Adjust.
14768         (read_common_block): Adjust.
14769         (read_namespace_type): Adjust.
14770         (read_namespace): Adjust.
14771         (read_module_type): Adjust.
14772         (read_tag_pointer_type): Adjust.
14773         (read_tag_ptr_to_member_type): Adjust.
14774         (read_tag_string_type): Adjust.
14775         (read_subroutine_type): Adjust.
14776         (read_typedef): Adjust.
14777         (read_base_type): Adjust.
14778         (attr_to_dynamic_prop): Adjust.
14779         (read_subrange_type): Adjust.
14780         (read_unspecified_type): Adjust.
14781         (dwarf2_read_abbrevs): Adjust.
14782         (load_partial_dies): Adjust.
14783         (read_partial_die): Adjust.
14784         (find_partial_die): Adjust.
14785         (guess_partial_die_structure_name): Adjust.
14786         (fixup_partial_die): Adjust.
14787         (read_attribute_value): Adjust.
14788         (read_addr_index): Adjust.
14789         (read_addr_index_from_leb128): Adjust.
14790         (read_str_index): Adjust.
14791         (dwarf2_string_attr): Adjust.
14792         (get_debug_line_section): Adjust.
14793         (dwarf_decode_line_header): Adjust.
14794         (lnp_state_machine::check_line_address): Adjust.
14795         (dwarf_decode_lines_1): Adjust.
14796         (dwarf_decode_lines): Adjust.
14797         (dwarf2_start_symtab): Adjust.
14798         (var_decode_location): Adjust.
14799         (new_symbol_full): Adjust.
14800         (dwarf2_const_value_data): Adjust.
14801         (dwarf2_const_value_attr): Adjust.
14802         (dwarf2_const_value): Adjust.
14803         (die_type): Adjust.
14804         (die_containing_type): Adjust.
14805         (build_error_marker_type): Adjust.
14806         (lookup_die_type): Adjust.
14807         (guess_full_die_structure_name): Adjust.
14808         (anonymous_struct_prefix): Adjust.
14809         (determine_prefix): Adjust.
14810         (dwarf2_name): Adjust.
14811         (follow_die_ref_or_sig): Adjust.
14812         (follow_die_offset): Adjust.
14813         (follow_die_ref): Adjust.
14814         (follow_die_sig_1): Adjust.
14815         (follow_die_sig): Adjust.
14816         (get_signatured_type): Adjust.
14817         (get_DW_AT_signature_type): Adjust.
14818         (decode_locdesc): Adjust.
14819         (dwarf_decode_macros): Adjust.
14820         (cu_debug_loc_section): Adjust.
14821         (fill_in_loclist_baton): Adjust.
14822         (dwarf2_symbol_mark_computed): Adjust.
14823         (init_one_comp_unit): Don't assign
14824         dwarf2_cu::dwarf2_per_objfile.
14825         (set_die_type): Adjust.
14826
14827 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14828
14829         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14830         <dwarf2_per_objfile>: New field.
14831         (dwarf2_per_objfile): Remove global.
14832         (get_dwarf2_per_objfile): New function.
14833         (set_dwarf2_per_objfile): New function.
14834         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14835         dwarf2_per_objfile.
14836         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14837         (read_abbrev_offset): Likewise.
14838         (read_indirect_string): Likewise.
14839         (read_indirect_line_string): Likewise.
14840         (read_indirect_string_at_offset): Likewise.
14841         (read_indirect_string_from_dwz): Likewise.
14842         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14843         dwarf2_per_objfile.
14844         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14845         (create_all_comp_units): Change objfile parameter to
14846         dwarf2_per_objfile.
14847         (create_all_type_units): Likewise.
14848         (process_queue): Add dwarf2_per_objfile parameter.
14849         (read_and_check_comp_unit_head): Likewise.
14850         (lookup_dwo_unit_in_dwp): Likewise.
14851         (get_dwp_file): Likewise.
14852         (process_cu_includes): Likewise.
14853         (struct free_dwo_file_cleanup_data): New struct.
14854         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14855         set_dwarf2_per_objfile.
14856         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14857         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14858         context, adjust calls.
14859         (dw2_instantiate_symtab): Likewise.
14860         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14861         (dw2_get_cu): Likewise.
14862         (create_cu_from_index_list): Change objfile parameter to
14863         dwarf2_per_objfile.
14864         (create_cus_from_index_list): Get dwarf2_per_objfile from
14865         context, adjust calls.
14866         (create_cus_from_index): Likewise.
14867         (create_signatured_type_table_from_index): Change objfile
14868         parameter to dwarf2_per_objfile.
14869         (create_signatured_type_table_from_debug_names): Change objfile
14870         parameter to dwarf2_per_objfile.
14871         (create_addrmap_from_index): Likewise.
14872         (create_addrmap_from_aranges): Likewise.
14873         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14874         (dw2_setup): Remove.
14875         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14876         context.
14877         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14878         get_dwarf2_per_objfile.
14879         (dw2_forget_cached_source_info): Likewise.
14880         (dw2_map_symtabs_matching_filename): Likewise.
14881         (struct dw2_symtab_iterator) <index>: Remove.
14882         <dwarf2_per_objfile>: New field.
14883         (dw2_symtab_iter_init): Replace index parameter with
14884         dwarf2_per_objfile.
14885         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14886         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14887         (dw2_print_stats): Likewise.
14888         (dw2_dump): Likewise.
14889         (dw2_expand_symtabs_for_function): Likewise.
14890         (dw2_expand_all_symtabs): Likewise.
14891         (dw2_expand_symtabs_with_fullname): Likewise.
14892         (dw2_expand_marked_cus): Replace index and objfile parameters
14893         with dwarf2_per_objfile.
14894         (dw_expand_symtabs_matching_file_matcher): Add
14895         dwarf2_per_objfile parameter and adjust calls.
14896         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14897         adjust calls.
14898         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14899         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14900         adjust calls.
14901         (create_cus_from_debug_names_list): Replace objfile parameter
14902         with dwarf2_per_objfile and adjust calls.
14903         (create_cus_from_debug_names): Likewise.
14904         (dwarf2_read_debug_names): Likewise.
14905         (mapped_debug_names::namei_to_name): Adjust call.
14906         (dw2_debug_names_iterator::next): Likewise.
14907         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14908         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14909         (dw2_debug_names_dump): Likewise.
14910         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14911         (dw2_debug_names_expand_symtabs_matching): Likewise.
14912         (dwarf2_initialize_objfile): Likewise.
14913         (dwarf2_build_psymtabs): Likewise.
14914         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14915         this_cu.
14916         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14917         (read_and_check_comp_unit_head): Likewise.
14918         (read_abbrev_offset): Likewise.
14919         (create_debug_type_hash_table): Likewise.
14920         (create_debug_types_hash_table): Likewise.
14921         (create_all_type_units): Replace objfile parameter with
14922         dwarf2_per_objfile.
14923         (add_type_unit): Add dwarf2_per_objfile parameter.
14924         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14925         with dwarf2_per_objfile.
14926         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14927         (lookup_dwp_signatured_type): Likewise.
14928         (lookup_signatured_type): Likewise.
14929         (read_cutu_die_from_dwo): Likewise.
14930         (init_tu_and_read_dwo_dies): Likewise.
14931         (init_cutu_and_read_dies): Likewise.
14932         (init_cutu_and_read_dies_no_follow): Likewise.
14933         (allocate_type_unit_groups_table): Add objfile parameter.
14934         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14935         (get_type_unit_group): Likewise.
14936         (process_psymtab_comp_unit): Update call.
14937         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14938         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14939         (print_tu_stats): Likewise.
14940         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14941         in void* parameter.
14942         (build_type_psymtabs): Change objfile parameter to
14943         dwarf2_per_objfile.
14944         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14945         passed in void* parameter.
14946         (process_skeletonless_type_units): Change objfile parameter to
14947         dwarf2_per_objfile.
14948         (set_partial_user): Likewise.
14949         (dwarf2_build_psymtabs_hard): Likewise.
14950         (read_comp_units_from_section): Likewise.
14951         (create_all_comp_units): Likewise.
14952         (scan_partial_symbols): Update calls.
14953         (add_partial_symbol): Likewise.
14954         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14955         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14956         (process_queue): Add dwarf2_per_objfile parameter.
14957         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14958         (compute_compunit_symtab_includes): Likewise.
14959         (process_cu_includes): Add dwarf2_per_objfile parameter.
14960         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14961         (process_full_type_unit): Likewise.
14962         (process_imported_unit_die): Update call.
14963         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14964         (read_file_scope): Likewise.
14965         (allocate_dwo_file_hash_table): Add objfile parameter.
14966         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14967         (create_cus_hash_table): Likewise.
14968         (create_dwp_hash_table): Likewise.
14969         (create_dwo_unit_in_dwp_v1): Likewise.
14970         (create_dwp_v2_section): Likewise.
14971         (create_dwo_unit_in_dwp_v2): Likewise.
14972         (lookup_dwo_unit_in_dwp): Likewise.
14973         (try_open_dwop_file): Likewise.
14974         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14975         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14976         cleanup to include a reference to dwarf2_per_objfile.
14977         (open_dwp_file): Add dwarf2_per_objfile parameter.
14978         (open_and_init_dwp_file): Likewise.
14979         (get_dwp_file): Likewise.
14980         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14981         (queue_and_load_all_dwo_tus): Update call.
14982         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14983         data.
14984         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14985         (dwarf2_ranges_process): Likewise.
14986         (dwarf2_get_pc_bounds): Likewise.
14987         (mark_common_block_symbol_computed): Likewise.
14988         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14989         (dwarf2_read_abbrevs): Update call.
14990         (read_partial_die): Use dwarf2_per_objfile from cu.
14991         (find_partial_die): Likewise.
14992         (fixup_partial_die): Likewise.
14993         (read_attribute_value): Likewise.
14994         (read_indirect_string_at_offset_from): Add objfile parameter.
14995         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14996         parameter.
14997         (read_indirect_string_from_dwz): Add objfile parameter.
14998         (read_indirect_string): Add objfile parameter.
14999         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15000         (read_addr_index): Use dwarf2_per_objfile from cu.
15001         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15002         call dw2_setup.
15003         (read_str_index): Use dwarf2_per_objfile from cu.
15004         (get_debug_line_section): Likewise.
15005         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15006         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15007         (new_symbol_full): Use dwarf2_per_objfile from cu.
15008         (build_error_marker_type): Likewise.
15009         (lookup_die_type): Likewise.
15010         (determine_prefix): Likewise.
15011         (follow_die_offset): Likewise.
15012         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15013         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15014         (dwarf2_fetch_die_type_sect_off): Likewise.
15015         (dwarf2_get_die_type): Likewise.
15016         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15017         (get_signatured_type): Likewise.
15018         (get_DW_AT_signature_type): Likewise.
15019         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15020         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15021         (cu_debug_loc_section): Likewise.
15022         (fill_in_loclist_baton): Likewise.
15023         (dwarf2_symbol_mark_computed): Likewise.
15024         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15025         dwarf2_per_objfile.
15026         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15027         parameter.
15028         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15029         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15030         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15031         (set_die_type): Use dwarf2_free_objfile from cu.
15032         (get_die_type_at_offset): Likewise.
15033         (dwarf2_per_objfile_free): Don't assign global variable.
15034         (debug_names) <constructor>: Add dwarf2_per_objfile
15035         parameter, update m_debugstrlookup construction.
15036         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
15037         parameter.
15038         <m_dwarf2_per_objfile>: New field.
15039         <lookup>: Use m_dwarf2_per_objfile.
15040         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
15041         (psyms_seen_size): Likewise.
15042         (write_gdbindex): Replace objfile parameter with
15043         dwarf2_per_objfile.
15044         (write_debug_names): Likewise.
15045         (write_psymtabs_to_index): Likewise.
15046         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
15047         calls.
15048
15049 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15050
15051         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
15052         <dwarf2_per_objfile>: New field.
15053         (struct dwarf2_per_cu_data) <objfile>: Remove.
15054         <dwarf2_per_objfile>: New field.
15055         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
15056         of objfile.
15057         (create_signatured_type_table_from_index): Likewise.
15058         (create_debug_type_hash_table): Likewise.
15059         (fill_in_sig_entry_from_dwo_entry): Likewise.
15060         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
15061         (create_type_unit_group): Assign dwarf2_per_objfile instead of
15062         objfile.
15063         (create_partial_symtab): Access objfile through
15064         dwarf2_per_objfile.
15065         (process_psymtab_comp_unit_reader): Likewise.
15066         (read_comp_units_from_section): Likewise.
15067         (scan_partial_symbols): Likewise.
15068         (add_partial_symbol): Likewise.
15069         (add_partial_subprogram): Likewise.
15070         (peek_die_abbrev): Likewise.
15071         (fixup_go_packaging): Likewise.
15072         (process_full_comp_unit): Likewise.
15073         (process_full_type_unit): Likewise.
15074         (process_imported_unit_die): Likewise.
15075         (dwarf2_compute_name): Likewise.
15076         (dwarf2_physname): Likewise.
15077         (read_import_statement): Likewise.
15078         (create_cus_hash_table): Assign dwarf2_physname instead of
15079         objfile.
15080         (read_func_scope): Access objfile through dwarf2_per_objfile.
15081         (read_lexical_block_scope): Likewise.
15082         (read_call_site_scope): Likewise.
15083         (read_variable): Likewise.
15084         (dwarf2_rnglists_process): Likewise.
15085         (dwarf2_ranges_process): Likewise.
15086         (dwarf2_ranges_read): Likewise.
15087         (dwarf2_record_block_ranges): Likewise.
15088         (dwarf2_add_field): Likewise.
15089         (dwarf2_add_member_fn): Likewise.
15090         (read_structure_type): Likewise.
15091         (process_structure_scope): Likewise.
15092         (read_enumeration_type): Likewise.
15093         (read_array_type): Likewise.
15094         (read_common_block): Likewise.
15095         (read_namespace_type): Likewise.
15096         (read_namespace): Likewise.
15097         (read_module_type): Likewise.
15098         (read_tag_pointer_type): Likewise.
15099         (read_tag_ptr_to_member_type): Likewise.
15100         (read_tag_string_type): Likewise.
15101         (read_subroutine_type): Likewise.
15102         (read_typedef): Likewise.
15103         (read_base_type): Likewise.
15104         (attr_to_dynamic_prop): Likewise.
15105         (read_subrange_type): Likewise.
15106         (read_unspecified_type): Likewise.
15107         (load_partial_dies): Likewise.
15108         (read_partial_die): Likewise.
15109         (find_partial_die): Likewise.
15110         (guess_partial_die_structure_name): Likewise.
15111         (fixup_partial_die): Likewise.
15112         (read_attribute_value): Likewise.
15113         (read_addr_index_from_leb128): Likewise.
15114         (dwarf2_read_addr_index): Likewise.
15115         (dwarf2_string_attr): Likewise.
15116         (lnp_state_machine::check_line_address): Likewise.
15117         (dwarf_decode_lines_1): Likewise.
15118         (dwarf_decode_lines): Likewise.
15119         (dwarf2_start_symtab): Likewise.
15120         (var_decode_location): Likewise.
15121         (new_symbol_full): Likewise.
15122         (dwarf2_const_value_data): Likewise.
15123         (dwarf2_const_value_attr): Likewise.
15124         (dwarf2_const_value): Likewise.
15125         (die_type): Likewise.
15126         (die_containing_type): Likewise.
15127         (lookup_die_type): Likewise.
15128         (guess_full_die_structure_name): Likewise.
15129         (anonymous_struct_prefix): Likewise.
15130         (dwarf2_name): Likewise.
15131         (follow_die_ref_or_sig): Likewise.
15132         (follow_die_offset): Likewise.
15133         (follow_die_ref): Likewise.
15134         (dwarf2_fetch_die_loc_sect_off): Likewise.
15135         (dwarf2_fetch_constant_bytes): Likewise.
15136         (dwarf2_fetch_die_type_sect_off): Likewise.
15137         (dwarf2_get_die_type): Likewise.
15138         (follow_die_sig): Likewise.
15139         (decode_locdesc): Likewise.
15140         (dwarf2_per_cu_objfile): Likewise.
15141         (dwarf2_per_cu_text_offset): Likewise.
15142         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15143         objfile.
15144         (set_die_type): Access objfile through
15145         dwarf2_per_objfile.
15146
15147 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15148
15149         * valprint.c (converted_character_d): Remove typedef.
15150         (DEF_VEC_O (converted_character_d)): Remove.
15151         (count_next_character): Use std::vector.
15152         (print_converted_chars_to_obstack): Likewise.
15153         (generic_printstr): Likewise.
15154
15155 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15156
15157         * xml-support.h (struct gdb_xml_value): Add constructor.
15158         <value>: Change type to unique_xmalloc_ptr.
15159         (gdb_xml_value_s): Remove typedef.
15160         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15161         (gdb_xml_element_start_handler): Change parameter type to
15162         std::vector.
15163         (xml_find_attribute): Likewise.
15164         * xml-support.c (xml_find_attribute): Change parameter type to
15165         std::vector and adjust.
15166         (gdb_xml_values_cleanup): Remove.
15167         (gdb_xml_parser::start_element): Adjust to std::vector.
15168         (xinclude_start_include): Change paraeter type to std::vector
15169         and adjust.
15170         * btrace.c (check_xml_btrace_version): Likewise.
15171         (parse_xml_btrace_block): Likewise.
15172         (parse_xml_btrace_pt_config_cpu): Likewise.
15173         (parse_xml_btrace_pt): Likewise.
15174         (parse_xml_btrace_conf_bts): Likewise.
15175         (parse_xml_btrace_conf_pt): Likewise.
15176         * memory-map.c (memory_map_start_memory): Likewise.
15177         (memory_map_start_property): Likewise.
15178         * osdata.c (osdata_start_osdata): Likewise.
15179         (osdata_start_item): Likewise.
15180         (osdata_start_column): Likewise.
15181         * remote.c (start_thread): Likewise.
15182         * solib-aix.c (library_list_start_library): Likewise.
15183         (library_list_start_list): Likewise.
15184         * solib-svr4.c (library_list_start_library): Likewise.
15185         (svr4_library_list_start_list): Likewise.
15186         * solib-target.c (library_list_start_segment): Likewise.
15187         (library_list_start_section): Likewise.
15188         (library_list_start_library): Likewise.
15189         (library_list_start_list): Likewise.
15190         * tracepoint.c (traceframe_info_start_memory): Likewise.
15191         (traceframe_info_start_tvar): Likewise.
15192         * xml-syscall.c (syscall_start_syscall): Likewise.
15193         * xml-tdesc.c (tdesc_start_target): Likewise.
15194         (tdesc_start_feature): Likewise.
15195         (tdesc_start_reg): Likewise.
15196         (tdesc_start_union): Likewise.
15197         (tdesc_start_struct): Likewise.
15198         (tdesc_start_flags): Likewise.
15199         (tdesc_start_enum): Likewise.
15200         (tdesc_start_field): Likewise.
15201         (tdesc_start_enum_value): Likewise.
15202         (tdesc_start_vector): Likewise.
15203
15204 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15205
15206         * extension.h (struct xmethod_worker) <clone>: Remove.
15207         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15208         Remove.
15209         (python_xmethod_worker::clone): Remove.
15210         * valops.c (find_overload_match): Use std::move instead of
15211         clone.
15212
15213 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15214
15215         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15216         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15217         <free_xmethod_worker_data>: Remove.
15218         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15219         <get_xmethod_arg_types>: Remove.
15220         <get_xmethod_result_type>: Remove.
15221         <invoke_xmethod>: Remove.
15222         * extension.c (new_xmethod_worker): Remove.
15223         (clone_xmethod_worker): Remove.
15224         (get_matching_xmethod_workers): Return void, pass std::vector by
15225         pointer.
15226         (get_xmethod_arg_types): Rename to...
15227         (xmethod_worker::get_arg_types): ... this, and adjust.
15228         (get_xmethod_result_type): Rename to...
15229         (xmethod_worker::get_result_type): ... this, and adjust.
15230         (invoke_xmethod): Remove.
15231         (free_xmethod_worker): Remove.
15232         (free_xmethod_worker_vec): Remove.
15233         * extension.h (enum ext_lang_rc): Move here from
15234         extension-priv.h.
15235         (struct xmethod_worker): Add constructor and destructor.
15236         <data>: Remove.
15237         <value>: Remove.
15238         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15239         virtual pure methods.
15240         <get_arg_types, get_result_type>: New methods.
15241         (xmethod_worker_ptr): Remove typedef.
15242         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15243         (xmethod_worker_vec): Remove typedef.
15244         (xmethod_worker_up): New typedef.
15245         (invoke_xmethod): Remove.
15246         (clone_xmethod_worker): Remove.
15247         (free_xmethod_worker): Remove.
15248         (free_xmethod_worker_vec): Remove.
15249         (get_xmethod_arg_types): Remove.
15250         (get_xmethod_result_type): Remove.
15251         * valops.c (find_method_list): Use std::vector, don't use
15252         intermediate vector.
15253         (value_find_oload_method_list): Use std::vector.
15254         (find_overload_match): Use std::vector.
15255         (find_oload_champ): Use std::vector.
15256         * value.c (value_free): Use operator delete.
15257         (value_of_xmethod): Rename to...
15258         (value_from_xmethod): ... this.  Don't assign
15259         xmethod_worker::value, take rvalue-reference.
15260         (result_type_of_xmethod): Adjust.
15261         (call_xmethod): Adjust.
15262         * value.h: Include extension.h.
15263         (struct xmethod_worker): Don't forward-declare.
15264         (value_of_xmethod): Rename to...
15265         (value_from_xmethod): ... this, take rvalue-reference.
15266         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15267         (struct python_xmethod_worker): ... this, add constructor and
15268         destructor.
15269         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15270         (gdbpy_free_xmethod_worker_data): Rename to...
15271         (python_xmethod_worker::~python_xmethod_worker): ... this and
15272         adjust.
15273         (gdbpy_clone_xmethod_worker_data): Rename to...
15274         (python_xmethod_worker::clone): ... this and adjust.
15275         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15276         temporary vector.
15277         (gdbpy_get_xmethod_arg_types): Rename to...
15278         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15279         (gdbpy_get_xmethod_result_type): Rename to...
15280         (python_xmethod_worker::do_get_result_type): ... this and
15281         adjust.
15282         (gdbpy_invoke_xmethod): Rename to...
15283         (python_xmethod_worker::invoke): ... this and adjust.
15284         (new_python_xmethod_worker): Rename to...
15285         (python_xmethod_worker::python_xmethod_worker): ... this and
15286         adjust.
15287         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15288         Remove.
15289         (gdbpy_free_xmethod_worker_data): Remove.
15290         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15291         (gdbpy_get_xmethod_arg_types): Remove.
15292         (gdbpy_get_xmethod_result_type): Remove.
15293         (gdbpy_invoke_xmethod): Remove.
15294         * python/python.c (python_extension_ops): Remove obsolete
15295         callbacks.
15296
15297 2018-01-05  Pedro Alves  <palves@redhat.com>
15298
15299         PR gdb/18653
15300         * common/signals-state-save-restore.c
15301         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15302         find a custom handler preinstalled, instead of internal erroring.
15303         But only warn if !quiet.
15304         * common/signals-state-save-restore.h
15305         (save_original_signals_state): New parameter 'quiet'.
15306         * main.c (captured_main_1): Move save_original_signals_state call
15307         after option handling, and pass QUIET.
15308
15309 2018-01-05  Pedro Alves  <palves@redhat.com>
15310
15311         * spu-tdep.c (spu_catch_start): Pass
15312         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15313
15314 2018-01-05  Pedro Alves  <palves@redhat.com>
15315
15316         PR gdb/22670
15317         * ada-lang.c (literal_symbol_name_matcher): New function.
15318         (ada_get_symbol_name_matcher): Use it for
15319         symbol_name_match_type::SEARCH_NAME.
15320         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15321         it down instead of assuming symbol_name_match_type::FULL.
15322         * block.h (block_lookup_symbol): New parameter 'match_type'.
15323         * c-valprint.c (print_unpacked_pointer): Use
15324         lookup_symbol_search_name instead of lookup_symbol.
15325         * compile/compile-object-load.c (get_out_value_type): Pass down
15326         symbol_name_match_type::SEARCH_NAME.
15327         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15328         symbol_name_match_type::FULL.
15329         * cp-support.c (cp_get_symbol_name_matcher): Handle
15330         symbol_name_match_type::SEARCH_NAME.
15331         * infrun.c (insert_exception_resume_breakpoint): Use
15332         lookup_symbol_search_name.
15333         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15334         * psymtab.c (maintenance_check_psymtabs): Use
15335         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15336         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15337         SYMBOL_SEARCH_NAME.
15338         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15339         if symbol_name_match_type::SEARCH_NAME.
15340         (lookup_symbol_in_language): Pass down
15341         symbol_name_match_type::FULL.
15342         (lookup_symbol_search_name): New.
15343         (lookup_language_this): Pass down
15344         symbol_name_match_type::SEARCH_NAME.
15345         (lookup_symbol_aux, lookup_local_symbol): New parameter
15346         'match_type'.  Pass it down.
15347         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15348         (lookup_symbol_search_name): New declaration.
15349         (lookup_symbol_in_block): New 'match_type' parameter.
15350
15351 2018-01-05  Pedro Alves  <palves@redhat.com>
15352
15353         PR gdb/22670
15354         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15355         ada_lookup_symbol.
15356         (ada_lookup_symbol): Reimplement in terms of
15357         ada_lookup_symbol_list, bits factored out from
15358         ada_lookup_encoded_symbol.
15359
15360 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15361
15362         * ada-exp.y (write_object_renaming): When subscripting an array
15363         using a symbol as the index, pass the block in call to
15364         ada_lookup_encoded_symbol when looking that symbol up.
15365
15366 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15367
15368         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15369         TYPE_INDEX_TYPE.
15370
15371 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15372
15373         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15374         the case where VALUE_LVAL (val0) is not lval_memory.
15375
15376 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15377
15378         * ada-valprint.c (print_optional_low_bound): Handle
15379         character-indexed array printing like boolean-indexed array
15380         printing.
15381
15382 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15383
15384         * NEWS: Create a new section for the next release branch.
15385         Rename the section of the current branch, now that it has
15386         been cut.
15387
15388 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15389
15390         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15391         * version.in: Bump version to 8.1.50.DATE-git.
15392
15393 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15394
15395         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15396         Add field.
15397         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15398         Add field.
15399         (default_exception_support_info) <catch_handlers_sym>: Add field.
15400         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15401         (ada_exception_name_addr_1): Add "catch handlers" handling.
15402         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15403         Update all callers.
15404         (create_excep_cond_exprs) <ex>: Add parameter.
15405         (re_set_exception): Update create_excep_cond_exprs call.
15406         (print_it_exception, print_one_exception, print_mention_exception)
15407         (print_recreate_exception): Add "catch handler" handling.
15408         (allocate_location_catch_handlers, re_set_catch_handlers)
15409         (check_status_catch_handlers, print_it_catch_handlers)
15410         (print_one_catch_handlers, print_mention_catch_handlers)
15411         (print_recreate_catch_handlers): New function.
15412         (catch_handlers_breakpoint_ops): New variable.
15413         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15414         Add parameter.  Add "catch handler" handling.
15415         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15416         Add "catch handler" handling.
15417         (ada_exception_catchpoint_cond_string): Add "catch handler"
15418         handling.
15419         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15420         call.
15421         (catch_ada_handlers_command): New function.
15422         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15423         operations structure.
15424         (_initialize_ada_language): Add "catch handlers" command entry.
15425         * NEWS: Document "catch handlers" feature.
15426
15427 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15428
15429         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15430         account when creating the array type of the slice.
15431         (ada_value_slice): Likewise.
15432
15433 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15434
15435         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15436         New enum value.
15437         (create_array_type_with_stride): Add byte_stride_prop parameter.
15438         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15439         New parameter.  Update all callers in this file.
15440         (array_type_has_dynamic_stride): New function.
15441         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15442         of arrays with dynamic byte strides.
15443         * dwarf2read.c (read_array_type): Add support for dynamic
15444         DW_AT_byte_stride attributes.
15445
15446 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15447
15448         * dwarf2read.c (read_unspecified_type): Treat
15449         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15450
15451 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15452
15453         Update copyright year range in all GDB files.
15454
15455 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15456
15457         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15458         and gdb/testsuite/gdb.base/step-line.c.
15459
15460 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15461
15462         * copyright.py (main): Dump the contents of
15463         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15464         even if BY_HAND is empty.
15465
15466 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15467
15468         * top.c (print_gdb_version): Update Copyright year in version
15469         message.
15470
15471 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15472
15473         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15474
15475 For older changes see ChangeLog-2017.
15476 \f
15477 Local Variables:
15478 mode: change-log
15479 left-margin: 8
15480 fill-column: 74
15481 version-control: never
15482 coding: utf-8
15483 End: