Remove relational operators from common/offset-type.h
[external/binutils.git] / gdb / ChangeLog
1 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2
3         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
4         Adjust comments.
5
6 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7
8         * procfs.c: Include common/pathstuff.h.
9
10 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
11
12         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
13         Add missing braces.  No functional change.
14
15 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
16
17         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
18         to report a bad option and fix indentation.
19         * demangle.c (demangle_command): Use report_unrecognized_option_error
20         to report a bad option and correctly report the bad option.
21
22 2018-10-27  Tom Tromey  <tom@tromey.com>
23
24         PR cli/23364:
25         * darwin-nat.c (copied_shell): New global.
26         (may_have_sip): Rename from should_disable_startup_with_shell.
27         (copy_shell_to_cache, maybe_cache_shell): New functions.
28         (darwin_nat_target::create_inferior): Update.  Use
29         copied_shell.
30
31 2018-10-27  Tom Tromey  <tom@tromey.com>
32
33         * unittests/scoped_fd-selftests.c (test_to_file): New function.
34         (run_tests): Call test_to_file.
35         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
36         temporary files.
37         * common/scoped_fd.h (scoped_fd::to_file): New method.
38
39 2018-10-27  Tom Tromey  <tom@tromey.com>
40
41         * unittests/scoped_mmap-selftests.c (test_normal): Use
42         gdb_mkostemp_cloexec.
43         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
44         Use gdb_mkostemp_cloexec.
45         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
46         gnulib/config.in, gnulib/configure,
47         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
48         gnulib/import/m4/gnulib-cache.m4,
49         gnulib/import/m4/gnulib-comp.m4: Update.
50         * gnulib/import/m4/mkostemp.m4: New file.
51         * gnulib/import/m4/mkstemp.m4: Remove.
52         * gnulib/import/mkostemp.c: New file.
53         * gnulib/import/mkstemp.m4: Remove.
54         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
55         mkstemp, add mkostemp.  Apply new patch.
56         * gnulib/import/stdlib.in.h: Apply patch.
57         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
58         New file.
59         * dwarf-index-write.c (write_psymtabs_to_index): Use
60         gdb_mkostemp_cloexec.
61         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
62
63 2018-10-27  Tom Tromey  <tom@tromey.com>
64
65         * unittests/mkdir-recursive-selftests.c: New file.
66         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
67         unittests/mkdir-recursive-selftests.c.
68         * dwarf-index-cache.c (mkdir_recursive): Move to
69         common/filestuff.c.
70         (index_cache::store): Check return value of mkdir_recursive.
71         (create_dir_and_check, test_mkdir_recursive): Move to new file.
72         (_initialize_index_cache): Don't register test.
73         * common/filestuff.h (mkdir_recursive): Declare.
74         * common/filestuff.c (mkdir_recursive): Move from
75         dwarf-index-cache.c.  Return bool.
76
77 2018-10-27  Tom Tromey  <tom@tromey.com>
78
79         * dwarf-index-write.c (write_psymtabs_to_index): Move
80         make_temp_filename to common/pathstuff.c.
81         * common/pathstuff.h (make_temp_filename): Declare.
82         * common/pathstuff.c (make_temp_filename): New function, moved
83         from dwarf-index-write.c.
84
85 2018-10-27  Tom Tromey  <tom@tromey.com>
86
87         * procfs.c (procfs_target::create_inferior): Use get_shell.
88         * cli/cli-cmds.c (shell_escape): Use get_shell.
89         * windows-nat.c (windows_nat_target::create_inferior): Use
90         get_shell.
91         * common/pathstuff.c (get_shell): New function.
92         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
93         (fork_inferior): Use get_shell.
94         * common/pathstuff.h (get_shell): Declare.
95
96 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
97
98         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
99
100 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
101
102         * stack.c (print_variable_and_value_data): Add preg and treg.
103         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
104         and update callers.
105         (print_frame_arg_vars): Likewise.
106         (prepare_reg): New function.
107         (info_locals_command): Extract info print args and use them.
108         (info_args_command): Likewise.
109         (_initialize_stack): Modify on-line help.
110         * symtab.c (treg_matches_sym_type_name): New function.
111         (search_symbols): New arg t_regexp.
112         (symtab_symbol_info): New args quiet, regexp, t_regexp.
113         (info_variables_command): Extract info print args and use them.
114         (info_functions_command): Likewise.
115         (info_types_command): Update call to symtab_symbol_info.
116         (_initialize_symtab): Modify on-line help.
117         * symtab.h (treg_matches_sym_type_name): New function.
118         (search_symbols): New t_regexp arg.
119
120 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
121
122         * cli-utils.c (extract_arg_maybe_quoted): New function.
123         (extract_info_print_args): New function.
124         (info_print_args_help): New function.
125         (report_unrecognized_option_error): New function.
126         * cli-utils.h (extract_arg_maybe_quoted): New function.
127         (extract_info_print_args): New function.
128         (info_print_args_help): New function.
129         (report_unrecognized_option_error): New function.
130
131 2018-10-26  Tom Tromey  <tom@tromey.com>
132
133         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
134         (compute_compunit_symtab_includes): Update.
135         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
136         (compunit_symtab_ptr): Likewise.
137
138 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
139
140         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
141         default_print_auxv_entry for specific tag values.
142
143 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
144
145         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
146
147 2018-10-26  Jim Wilson  <jimw@sifive.com>
148
149         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
150         (riscv_linux_sigframe_init): Declare.
151         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
152         (riscv_linux_sigframe): New.
153         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
154         (riscv_linux_sigframe_init): Define.
155         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
156
157         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
158         (riscv_isa_flen): Likewise.  Drop static.
159         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
160         (riscv_isa_flen): Likewise.  Declare.
161
162 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
163             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
164
165         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
166         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
167         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
168         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
169         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
170         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
171         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
172         Define.
173         (struct ppc_linux_features) <htm>: New field.
174         (ppc_linux_no_features): Add initializer for htm field.
175         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
176         new tdescs.
177         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
178         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
179         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
180         Define if not already defined.
181         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
182         and rs6000/powerpc-isa207-htm-vsx64l.
183         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
184         rs6000/powerpc-isa207-htm-vsx64l.xml.
185         * features/rs6000/power-htm-spr.xml: New file.
186         * features/rs6000/power-htm-core.xml: New file.
187         * features/rs6000/power64-htm-core.xml: New file.
188         * features/rs6000/power-htm-fpu.xml: New file.
189         * features/rs6000/power-htm-altivec.xml: New file.
190         * features/rs6000/power-htm-vsx.xml: New file.
191         * features/rs6000/power-htm-ppr.xml: New file.
192         * features/rs6000/power-htm-dscr.xml: New file.
193         * features/rs6000/power-htm-tar.xml: New file.
194         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
195         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
196         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
197         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
198         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
199         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
200         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
201         fetch_regset with HTM regsets.
202         (store_register, store_ppc_registers): Call store_regset with HTM
203         regsets.
204         (ppc_linux_nat_target::read_description): Set htm field in the
205         features struct if needed.
206         * ppc-linux-tdep.c: Include
207         features/rs6000/powerpc-isa207-htm-vsx32l.c and
208         features/rs6000/powerpc-isa207-htm-vsx64l.c.
209         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
210         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
211         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
212         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
213         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
214         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
215         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
216         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
217         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
218         (ppc32_linux_ctarregset): New globals.
219         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
220         (ppc_linux_collect_core_cpgrregset): New function.
221         (ppc_linux_iterate_over_regset_sections): Call back with the htm
222         regsets.
223         (ppc_linux_core_read_description): Check if the tm spr section is
224         present and set htm in the features struct.
225         (_initialize_ppc_linux_tdep): Call
226         initialize_tdesc_powerpc_isa207_htm_vsx32l and
227         initialize_tdesc_powerpc_isa207_htm_vsx64l.
228         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
229         Declare.
230         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
231         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
232         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
233         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
234         New fields.
235         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
236         Likewise.
237         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
238         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
239         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
240         New enum fields.
241         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
242         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
243         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
244         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
245         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
246         <PPC_CTAR_REGNUM>: Likewise.
247         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
248         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
249         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
250         (IS_CEFP_PSEUDOREG): Define.
251         (rs6000_register_name): Hide the upper halves of checkpointed VSX
252         registers.  Return names for the checkpointed DFP, VSX, and EFP
253         pseudo registers.
254         (rs6000_pseudo_register_type): Remove initial assert and raise an
255         internal error in the else clause instead.  Return types for the
256         checkpointed DFP, VSX, and EFP pseudo registers.
257         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
258         checkpointed DFP pseudo registers.
259         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
260         checkpointed VSX pseudo registers.
261         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
262         from efpr_pseudo_register_read and
263         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
264         registers.
265         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
266         Handle checkpointed DFP, VSX, and EFP registers.
267         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
268         (efp_ax_pseudo_register_collect): New functions.
269         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
270         register logic to new functions.  Handle checkpointed DFP, VSX,
271         and EFP pseudo registers.
272         (rs6000_gdbarch_init): Look for and validate the htm features.
273         Include checkpointed DFP, VSX and EFP pseudo-registers.
274         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
275         HTM registers.
276
277 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
278
279         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
280         without altivec or fpu.
281
282 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
283             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
284
285         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
286         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
287         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
288         Define if not already defined.
289         * features/rs6000/power-ebb.xml: New file.
290         * features/rs6000/power-linux-pmu.xml: New file.
291         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
292         features.
293         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
294         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
295         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
296         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
297         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
298         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
299         fetch_regset with ebb and pmu regsets.
300         (store_register, store_ppc_registers): Call store_regset with ebb
301         and pmu regsets.
302         (ppc_linux_nat_target::read_description): Set isa207 field in the
303         features struct if ebb and pmu are avaiable.
304         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
305         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
306         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
307         and pmu regsets.
308         (ppc_linux_core_read_description): Check if the pmu section is
309         present and set isa207 in the features struct.
310         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
311         (ppc32_linux_pmuregset): Declare.
312         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
313         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
314         <ppc_sier_regnum>: New field.
315         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
316         New enum values.
317         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
318         values.
319         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
320         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
321         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
322         ebb and pmu features.
323
324 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
325             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
326
327         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
328         (tdesc_powerpc_isa207_vsx64l): Declare.
329         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
330         (struct ppc_linux_features) <isa207>: New field.
331         (ppc_linux_no_features): Add initializer for isa207 field.
332         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
333         new tdescs.
334         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
335         (NT_PPC_TAR): Define if not already defined.
336         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
337         rs6000/powerpc-isa207-vsx64l.
338         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
339         rs6000/powerpc-isa207-vsx64l.xml.
340         * features/rs6000/power-tar.xml: New file.
341         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
342         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
343         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
344         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
345         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
346         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
347         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
348         fetch_regset with the TAR regset.
349         (store_register, store_ppc_registers): Call store_regset with the
350         TAR regset.
351         (ppc_linux_nat_target::read_description): Set isa207 field in the
352         features struct if needed.
353         * ppc-linux-tdep.c: Include
354         features/rs6000/powerpc-isa207-vsx32l.c and
355         features/rs6000/powerpc-isa207-vsx64l.c.
356         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
357         (ppc_linux_iterate_over_regset_sections): Call back with the tar
358         regset.
359         (ppc_linux_core_read_description): Check if the tar section is
360         present and set isa207 in the features struct.
361         (_initialize_ppc_linux_tdep): Call
362         initialize_tdesc_powerpc_isa207_vsx32l and
363         initialize_tdesc_powerpc_isa207_vsx64l.
364         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
365         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
366         (enum) <PPC_TAR_REGNUM>: New enum value.
367         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
368         feature.
369         (ppc_process_record_op31): Record changes to TAR.
370
371 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
372             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
373
374         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
375         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
376         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
377         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
378         (struct ppc_linux_features) <ppr_dscr>: New field.
379         (ppc_linux_no_features): Add initializer for ppr_dscr field.
380         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
381         new tdescs.
382         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
383         Define if not already defined.
384         * features/Makefile (WHICH): Add
385         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
386         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
387         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
388         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
389         * features/rs6000/power-dscr.xml: New file.
390         * features/rs6000/power-ppr.xml: New file.
391         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
392         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
393         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
394         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
395         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
396         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
397         * ppc-linux-nat.c: Include <sys/uio.h>.
398         (fetch_regset, store_regset, check_regset): New functions.
399         (fetch_register, fetch_ppc_registers): Call fetch_regset with
400         DSCR and PPR regsets.
401         (store_register, store_ppc_registers): Call store_regset with
402         DSCR and PPR regsets.
403         (ppc_linux_get_hwcap2): New function.
404         (ppc_linux_nat_target::read_description): Call
405         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
406         features struct if needed.
407         * ppc-linux-tdep.c: Include
408         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
409         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
410         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
411         (ppc32_linux_dscrregset): New globals.
412         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
413         and dscr regsets.
414         (ppc_linux_core_read_description): Check if the ppr and dscr
415         sections are present and set ppr_dscr in the features struct.
416         (_initialize_ppc_linux_tdep): Call
417         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
418         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
419         * ppc-linux-tdep.h (ppc32_linux_pprregset)
420         (ppc32_linux_dscrregset): Declare.
421         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
422         <ppc_dscr_regnum>: New field.
423         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
424         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
425         and dscr features.
426         (ppc_process_record_op31): Record changes to PPR and DSCR.
427
428 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
429
430         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
431         second initializer line for the have_* variables.  Initialize
432         have_fpu to 0 instead of 1.
433
434 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
435
436         * arch/ppc-linux-common.c (ppc_linux_match_description):
437         Parenthesize tdesc assignements and indent them properly.
438
439 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
440
441         * ppc-linux-nat.c (fetch_register): Change if statement to else
442         if.
443         (store_register): Likewise.
444
445 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
446
447         * rs6000-tdep.c: Remove reggroups.h include.
448         (rs6000_pseudo_register_reggroup_p): Remove.
449         (rs6000_gdbarch_init): Remove call to
450         set_tdesc_pseudo_register_reggroup_p.
451
452 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
453
454         * reggroups.c (default_register_reggroup_p): Return true for
455         decfloat registers and float_reggroup.
456
457 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
458
459         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
460         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
461         ppc_linux_collect_vrregset by regcache_collect_regset.
462
463 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
464
465         * linux-tdep.c (linux_collect_regset_section_cb): Use
466         std::vector<gdb_byte> instead of char * and malloc for buf.
467         Remove xfree.
468
469 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
470
471         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
472         symtab_start instead of always using language_unknown.
473
474 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
475
476         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
477         READ_P parameter, catch and ignore register access errors from
478         either the old or new MISA location.
479         (riscv_has_feature): Update call to riscv_read_misa_reg.
480
481 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
482
483         * python/py-function.c (convert_values_to_python): Return
484         gdbpy_ref<>.  Add header comment.
485         (fnpy_call): Adjust.
486
487 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
488
489         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
490         (cmdpy_completer_handle_brkchars): Adjust.
491         (cmdpy_completer): Adjust.
492
493 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
494
495         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
496         Pass correct regnum to raw_supply_zeroed.
497
498 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
499
500         * regcache.c (cooked_read_test): Add CSKY to the list of
501         architectures with a save_reggroup
502
503 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
504
505         PR gdb/23368
506         * infrun.c (follow_exec): In the follow_exec_mode_new case,
507         transfer terminal state from old new new inferior.
508         * terminal.h (swap_terminal_info): New function.
509         * inflow.c (swap_terminal_info): New function.
510
511 2018-10-23  Tom Tromey  <tom@tromey.com>
512
513         * record-btrace.c (get_thread_current_frame_id): Rename from
514         get_thread_current_frame.  Return a frame_id.
515         (record_btrace_start_replaying): Update.
516
517 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
518
519         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
520         for CSRs.
521
522 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
523
524         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
525         have_nonsteppable_watchpoint attribute to 1.
526
527 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
528
529         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
530         register names.
531         (struct register_alias): Rename to...
532         (struct riscv_register_alias): ...this, and update comment.
533         (riscv_register_aliases): Update type, and alias names.  Remove
534         CSR names from this list.
535         (riscv_register_name): Use riscv_gdb_reg_names for int and float
536         register names.  Add an extra assertion.
537         (riscv_is_regnum_a_named_csr): New function.
538         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
539
540 2018-10-22  Jim Wilson  <jimw@sifive.com>
541
542         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
543         FP reg smaller than FP reg size, and fill with -1 instead of 0.
544
545         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
546         (riscv_register_type): Use them.
547         (riscv_print_one_register_info): Handle union of floats same as float.
548         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
549         riscv_fpreg_q_type fields.
550
551 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
552
553         * gdbarch.sh (gdbarch_num_cooked_regs): New.
554         * gdbarch.h: Re-generate.
555         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
556         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
557         * eval.c (evaluate_subexp_standard): Likewise.
558         * findvar.c (value_of_register): Likewise.
559         (value_of_register_lazy): Likewise.
560         (address_from_register): Likewise.
561         * frame.c (get_frame_register_bytes): Likewise.
562         * gdbarch-selftests.c (register_to_value_test): Likewise.
563         * h8300-tdep.c (h8300_register_type): Likewise.
564         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
565         (i386_svr4_reg_to_regnum): Likewise.
566         * infcmd.c (default_print_registers_info): Likewise.
567         (registers_info): Likewise.
568         (print_vector_info): Likewise.
569         (default_print_float_info): Likewise.
570         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
571         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
572         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
573         (mi_cmd_data_list_changed_registers): Likewise.
574         (mi_cmd_data_list_register_values): Likewise.
575         (mi_cmd_data_write_register_values): Likewise.
576         (mi_cmd_trace_frame_collected): Likewise.
577         * mips-tdep.c (print_gp_register_row): Likewise.
578         (mips_print_registers_info): Likewise.
579         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
580         * regcache.c (init_regcache_descr): Likewise.
581         (register_size): Likewise.
582         (register_dump::dump): Likewise.
583         (cooked_read_test): Likewise.
584         (cooked_write_test): Likewise.
585         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
586         (rs6000_gdbarch_init): Likewise.
587         * stabsread.c (stab_reg_to_regnum): Likewise.
588         * stack.c (info_frame_command): Likewise.
589         * target-descriptions.c (tdesc_register_name): Likewise.
590         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
591         * tui/tui-regs.c (tui_show_register_group): Likewise.
592         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
593         (user_reg_map_regnum_to_name): Likewise.
594         (value_of_user_reg): Likewise.
595         (maintenance_print_user_registers): Likewise.
596         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
597         (xtensa_register_name): Likewise.
598         (xtensa_register_type): Likewise.
599         (xtensa_reg_to_regnum): Likewise.
600         (xtensa_pseudo_register_read): Likewise.
601         (xtensa_pseudo_register_write): Likewise.
602
603 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
604
605         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
606         correctly-sized buffer with raw_read.
607         (amd64_pseudo_register_write): Use correctly-sized buffer for
608         raw_read/raw_write.
609
610 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
611
612         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
613         in add_prefix_cmd of set print type.
614
615 2018-10-19  Tom Tromey  <tom@tromey.com>
616
617         PR tui/18388:
618         * NEWS: Mention tabset deprecation.
619         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
620         (update_tab_width): New function.
621         (tui_set_tab_width, tui_show_tab_width): New functions.
622         (tui_set_tab_width_command): Use update_tab_width.
623         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
624         Add new "set tui tab-width" command.
625         * tui/tui-source.c (tui_set_source_content): Update.
626         * tui/tui-disasm.c (tui_set_disassem_content): Update.
627         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
628         Don't declare.
629         (tui_tab_width): Declare.
630         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
631         (tui_set_default_tab_len): Remove.
632
633 2018-10-19  Tom Tromey  <tom@tromey.com>
634
635         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
636         (key_is_backspace, tui_getc): Don't declare.
637         * tui/tui-io.c (key_is_start_sequence): Now static.
638         (key_is_end_sequence, key_is_backspace): Remove.
639         (tui_getc): Now static.
640
641 2018-10-19  Tom Tromey  <tom@tromey.com>
642
643         * symfile.c (reread_symbols): Clear "static_links".
644
645 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
646
647         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
648         define.
649         (aarch64_linux_sigframe_init): Extra boundary checks.
650
651 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
652
653         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
654         the possibly non-existent tdesc type 'vec128', but the type of raw
655         register v16 instead.
656
657 2018-10-19  Gary Benson <gbenson@redhat.com>
658
659         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
660
661 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
662
663         PR cli/23785
664         * cli/cli-dump.c (restore_binary_file): Check if "file" is
665         NULL.
666
667 2018-10-17  Paul Koning  <paul_koning@dell.com>
668
669         * charset.c (convert_between_encodings): Fix unsigned overflow.
670
671 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
672
673         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
674         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
675         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
676         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
677         New functions.
678         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
679         and fbsd_info_proc_mappings_header.
680         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
681         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
682         New.
683
684 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
685
686         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
687         Solaris Maintainer.
688
689 2018-10-15  Tom Tromey  <tom@tromey.com>
690
691         * tui/tui.c (strcat_to_buf): Remove casts.
692         * tui/tui-winsource.c (tui_show_source_line)
693         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
694         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
695         * tui/tui-windata.c (tui_first_data_item_displayed)
696         (tui_delete_data_content_windows, tui_erase_data_content)
697         (tui_display_all_data, tui_display_data_from)
698         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
699         * tui/tui-win.c (tui_set_win_height)
700         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
701         casts.
702         * tui/tui-win.c (tui_resize_all): Remove casts.
703         (tui_scroll_backward_command, tui_set_focus)
704         (tui_set_tab_width_command): Likewise.
705         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
706         * tui/tui-regs.c (tui_show_register_group): Remove cast.
707         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
708         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
709         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
710         Remove casts.
711
712 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
713
714         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
715         AArch64/ARM maintainer.
716
717 2018-10-11  Gary Benson <gbenson@redhat.com>
718
719         * interps.h (interp::m_name): Make private and mutable.
720         * interps.c (interp::~interp): Free m_name.
721
722 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
723             Simon Marchi <simark@simark.ca>
724
725         * README (`configure' options): Add documentation for new
726         "--enable-unit-tests" option.
727         * acinclude.m4: Include "selftest.m4".
728         * configure: Regenerate.
729         * configure.ac: Use "GDB_AC_SELFTEST".
730         * maint.c (maintenance_selftest): Update message informing
731         that selftests have been disabled.
732         (maintenance_info_selftests): Likewise.
733         * selftest.m4: New file.
734
735 2018-10-10  Gary Benson <gbenson@redhat.com>
736
737         * remote.c (remote_target::remote_send_printf): Add
738         missing va_end found by Coverity.
739
740 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
741
742         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
743
744 2018-10-09  Tom Tromey  <tom@tromey.com>
745
746         * configure: Rebuild.
747         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
748         * NEWS: Update --enable-ubsan documentation.
749
750 2018-10-09  Gary Benson <gbenson@redhat.com>
751
752         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
753         found by Coverity.
754
755 2018-10-08  Tom Tromey  <tom@tromey.com>
756
757         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
758         variable.
759         (riscv_fbsd_init_abi): Likewise.
760
761 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
762         * valops.c (value_struct_elt_for_reference): Rename local variable
763         to work around the shadowing a previous local warning.
764
765 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
766
767         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
768         * NEWS: Mention new FreeBSD/riscv native configuration.
769         * configure.host: Add riscv*-*-freebsd*.
770         * configure.nat: Likewise.
771         * riscv-fbsd-nat.c: New file.
772
773 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
774
775         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
776         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
777         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
778         * NEWS: Mention new FreeBSD/riscv target.
779         * configure.tgt: Add riscv*-*-freebsd*.
780         * riscv-fbsd-tdep.c: New file.
781         * riscv-fbsd-tdep.h: New file.
782
783 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
784
785         * regcache.h (struct regcache_map_entry): Note that this type can
786         be used with traditional frame caches.
787         * trad-frame.c (trad_frame_set_reg_regmap): New.
788         * trad-frame.h (trad_frame_set_reg_regmap): New.
789
790 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
791
792         PR c++/16841
793         * valops.c (get_virtual_base_offset): New function.
794         (value_struct_elt_for_reference): Use it to get virtual base offset
795         and add it in calculating class member address.
796
797 2018-10-08   John Darrington <john@darrington.wattle.id.au>
798
799     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
800       (check_producer): Check if the producer is codewarrior.
801       (producer_is_codewarrior): New function.
802       (lnp_state_machine::record_line): Ignore is_stmt flag for records
803        produced by codewarrior.
804       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
805
806 2018-10-06  Tom Tromey  <tom@tromey.com>
807
808         PR python/19399:
809         * python/py-inferior.c: Add "architecture" entry.
810         (infpy_architecture): New function.
811
812 2018-10-06  Tom Tromey  <tom@tromey.com>
813
814         PR python/21765:
815         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
816         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
817         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
818         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
819
820 2018-10-06  Tom Tromey  <tom@tromey.com>
821
822         PR build/17077:
823         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
824         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
825         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
826         #include.
827
828 2018-10-06  Tom Tromey  <tom@tromey.com>
829
830         * python/py-breakpoint.c (bppy_get_location): Handle a
831         bp_breakpoint without a location.
832
833 2018-10-06  Tom Tromey  <tom@tromey.com>
834
835         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
836         (_RegEx): Reformat help text.
837         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
838         (AnyCallerIs, AnyCallerMatches): Reformat help text.
839         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
840         text.
841         * python/lib/gdb/command/xmethods.py (InfoXMethod)
842         (EnableXMethod, DisableXMethod): Remove help indentation.
843         Capitalize meta-syntactic variables.
844         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
845         (EnableUnwinder, DisableUnwinder): Remove help indentation.
846         Capitalize meta-syntactic variables.
847         * python/lib/gdb/command/explore.py (ExploreCommand)
848         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
849         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
850         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
851         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
852         Remove help indentation.
853         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
854         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
855         (DisableFrameFilter, SetFrameFilterPriority)
856         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
857
858 2018-10-06  Tom Tromey  <tom@tromey.com>
859
860         PR tui/28819:
861         * tui/tui-io.c (gdb_wgetch): New function.
862         (tui_mld_getc, tui_getc): Use it.
863
864 2018-10-05  Tom Tromey  <tom@tromey.com>
865
866         * sol-thread.c (sol_thread_target::wait): Rename inner
867         "save_ptid".
868
869 2018-10-04  Tom Tromey  <tom@tromey.com>
870
871         * configure: Rebuild.
872         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
873
874 2018-10-04  Tom Tromey  <tom@tromey.com>
875
876         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
877         declaration of "block".
878
879 2018-10-04  Tom Tromey  <tom@tromey.com>
880
881         * common/filestuff.c (fdwalk): Remove inner declaration of
882         "result".
883
884 2018-10-04  Tom Tromey  <tom@tromey.com>
885
886         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
887         "structs_addr" and hoist declaration.
888
889 2018-10-04  Tom Tromey  <tom@tromey.com>
890
891         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
892         variable "size".
893
894 2018-10-04  Tom Tromey  <tom@tromey.com>
895
896         * mdebugread.c (parse_partial_symbols): Use std::string.
897
898 2018-10-04  Tom Tromey  <tom@tromey.com>
899
900         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
901         * p-valprint.c (pascal_val_print): Split inner "i" variable.
902         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
903         header.
904         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
905         more inner scope.
906         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
907         * varobj.c (varobj_update): Rename inner "newobj",
908         "type_changed".
909         * valprint.c (generic_emit_char): Rename inner "buf".
910         * valops.c (find_overload_match): Rename inner "temp".
911         (value_struct_elt_for_reference): Declare "v" in more inner
912         scope.
913         * v850-tdep.c (v850_push_dummy_call): Rename "len".
914         * unittests/array-view-selftests.c (run_tests): Rename inner
915         "vec".
916         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
917         header.
918         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
919         "tsv" in more inner scope.
920         (print_one_static_tracepoint_marker): Rename inner
921         "tuple_emitter".
922         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
923         (tic6x_push_dummy_call): Don't redeclare "addr".
924         * target-float.c: Declare "dto" lower.
925         * symtab.c (lookup_local_symbol): Rename inner "sym".
926         (find_pc_sect_line): Rename inner "pc".
927         * stack.c (print_frame): Don't redeclare "gdbarch".
928         (return_command): Rename inner "gdbarch".
929         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
930         "sp".
931         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
932         header.
933         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
934         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
935         scope.
936         * remote.c (remote_target::update_thread_list): Don't redeclare
937         "tp".
938         (remote_target::process_initial_stop_replies): Rename inner
939         "thread".
940         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
941         (remote_target::wait_as): Don't redeclare "stop_reply".
942         (remote_target::get_thread_local_address): Rename inner
943         "result".
944         (remote_target::get_tib_address): Likewise.
945
946         * regcache.c (cooked_read_test): Rename "regnum".
947         * record-btrace.c (cmd_record_btrace_start): Rename inner
948         "exception".
949         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
950         loop header.
951         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
952         header.
953         (ppu2spu_sniffer): Rename inner "buf".
954         * parse.c (operator_check_standard): Rename inner "type",
955         "objfile".
956         * p-valprint.c (pascal_val_print): Introduce new scope for
957         "low_bound", "high_bound".
958         * p-exp.y (yylex): Declare "i" in loop header.
959         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
960         Lower declaration of "s".
961         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
962         header.
963         (nios2_push_dummy_call): Rename "len".
964         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
965         "buf".
966         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
967         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
968         (linux_xfer_osdata_modules): Likewise.
969         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
970         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
971         (mips_o64_push_dummy_call): Likewise.
972         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
973         "op".
974         * mi/mi-main.c (list_available_thread_groups): Rename inner
975         "tuple_emitter".
976         (mi_cmd_data_read_memory): Rename inner "opts".
977         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
978         "tuple_emitter".
979         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
980         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
981         more inner scope.
982         (parse_partial_symbols): Rename inner "pst", "p", "name"
983         * main.c (captured_main_1): Rename inner "i"s.
984         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
985         "oso2".
986         * linux-tdep.c (linux_info_proc): Rename inner "filename".
987         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
988         * infrun.c (handle_no_resumed): Don't redeclare "thread".
989         (handle_signal_stop): Rename inner "gdbarch".
990         (handle_command): Declare "signum" in loop header.
991         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
992         "status".
993         (examine_prologue): Rename inner "sol" and "sof".
994         (ia64_extract_return_value): Rename inner "val".  Declare another
995         "val" in a more inner scope.
996         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
997         inner scope.
998         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
999         "except".
1000         * findvar.c (default_read_var_value): Don't redeclare "addr".
1001         * f-exp.y (yylex): Declare "i" in loop header.
1002         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
1003         Rename inner "type", "expect_type".
1004         (evaluate_subexp_for_sizeof): Rename inner "pc".
1005         * elfread.c (elf_symfile_read): Rename inner "abfd".
1006         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
1007         "bytes_read".
1008         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
1009         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
1010         (dwarf_decode_line_header): Rename inner "lh".
1011         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
1012         "offset".  Declare "i" in loop header.
1013         (disassemble_dwarf_expression): Rename inner "addr_size".
1014         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
1015         inner "result".
1016         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
1017         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
1018         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
1019         "inner_list_emitter".
1020         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
1021         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
1022         declaration in a block.
1023         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
1024         * cp-valprint.c (cp_print_value_fields): Don't redeclare
1025         "obstack_final_size".
1026         * cp-support.c (inspect_type): Declare "i" in loop header.
1027         * compile/compile.c (compile_instance::insert_symbol_error):
1028         Rename inner "e".
1029         * common/agent.c (agent_run_command): Remove inner "ret"
1030         declaration.
1031         * coffread.c (coff_symfile_read): Rename inner "name".
1032         (coff_symfile_read): Rename inner "abfd".
1033         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
1034         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
1035         "high".
1036         * c-exp.y (lex_one_token): Move "len" declaration lower.
1037         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
1038         "gdbarch".
1039         (create_exception_master_breakpoint): Likewise.  Don't redeclare
1040         "b".
1041         (watch_command_1): Declare "mark" later.
1042         (clear_command): Don't shadow "a" or "b".
1043         (delete_command): Rename inner "b".
1044         (delete_trace_command): Likewise.
1045         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
1046         "op".
1047         (arm_gdbarch_init): Remove inner "e_flags".
1048         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
1049         "offset" in inner blocks.
1050
1051 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
1052
1053         * dwarf-index-write.c (file_write): Don't write if the vector is
1054         empty.
1055
1056 2018-10-05  Tom de Vries  <tdevries@suse.de>
1057
1058         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
1059         PyArg_ParseTuple call.
1060
1061 2018-10-05  Tom de Vries  <tdevries@suse.de>
1062
1063         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
1064         PyArg_ParseTuple call.
1065
1066 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
1067
1068         * psymtab.c (recursively_search_psymtabs): Reformat parameters
1069         to avoid exceeding 80 characters per line limit.
1070
1071 2018-10-04  Tom Tromey  <tom@tromey.com>
1072
1073         * symfile.c (syms_from_objfile_1, finish_new_objfile)
1074         (reread_symbols): Update.
1075         * complaints.h (clear_complaints): Remove argument.
1076         * complaints.c (enum complaint_series): Remove.
1077         (series): Remove global.
1078         (complaint_internal): Update.
1079         (clear_complaints): Remove argument.
1080
1081 2018-10-04  Tom Tromey  <tom@tromey.com>
1082
1083         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1084         debugging symbols" message if there is a separate debug objfile.
1085
1086 2018-10-04  Tom Tromey  <tom@tromey.com>
1087
1088         PR cli/19551:
1089         * symfile.c (symbol_file_add_with_addrs): Update output.
1090         * psymtab.c (require_partial_symbols): Update output.
1091
1092 2018-10-04  Tom Tromey  <tom@tromey.com>
1093
1094         PR cli/22234:
1095         * complaints.c: Emit \n.
1096
1097 2018-10-04  Tom Tromey  <tom@tromey.com>
1098
1099         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1100         (separate_debug_file_exists, find_separate_debug_file)
1101         (add_symbol_file_command, reread_symbols, allocate_symtab)
1102         (allocate_compunit_symtab): Use filtered printing, not
1103         unfiltered.
1104         * psymtab.c (require_partial_symbols, dump_psymtab)
1105         (allocate_psymtab): Use filtered printing, not unfiltered.
1106
1107 2018-10-04  Tom Tromey  <tom@tromey.com>
1108
1109         * complaints.c (complaint_internal): Correctly check complaint
1110         count.
1111
1112 2018-10-04  Tom Tromey  <tom@tromey.com>
1113
1114         * complaints.h (struct complaints): Remove declaration.
1115         * complaints.c (clear_complaints): Remove an unused variable.
1116
1117 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1118
1119         * MAINTAINERS (Write After Approval): Add self.
1120
1121 2018-10-03  Tom Tromey  <tom@tromey.com>
1122
1123         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1124         "buffer_contents".
1125         * coffread.c (coff_symtab_read): Initialize "newobj".
1126
1127 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1128
1129         * dwarf2read.c (read_func_scope): Remove struct keyword in
1130         range-based for.
1131
1132 2018-10-03  Tom Tromey  <tom@tromey.com>
1133
1134         * README: Mention --enable-ubsan.
1135         * NEWS: Mention --enable-ubsan.
1136         * acinclude.m4: Include sanitize.m4.
1137         * configure: Rebuild.
1138         * configure.ac: Call AM_GDB_UBSAN.
1139         * sanitize.m4: New file.
1140
1141 2018-10-03  Tom Tromey  <tom@tromey.com>
1142
1143         * expression.h (enum exp_opcode): Use uint8_t as base type.
1144         * expprint.c (op_name): Handle invalid opcodes.
1145
1146 2018-10-03  Tom Tromey  <tom@tromey.com>
1147
1148         * parse.c (prefixify_expression): Add assert.
1149         (parse_exp_in_context_1): Throw exception if the expression is
1150         empty.
1151
1152 2018-10-03  Tom Tromey  <tom@tromey.com>
1153
1154         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1155
1156 2018-10-03  Tom Tromey  <tom@tromey.com>
1157
1158         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1159
1160 2018-10-03  Tom Tromey  <tom@tromey.com>
1161
1162         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1163         unsigned.
1164
1165 2018-10-03  Tom Tromey  <tom@tromey.com>
1166
1167         * findvar.c (extract_integer): Do work in an unsigned type.
1168
1169 2018-10-03  Tom Tromey  <tom@tromey.com>
1170
1171         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1172         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1173         base type.
1174         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1175         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1176         type.
1177         * c-lang.h (enum c_string_type_values): Use unsigned as base
1178         type.
1179         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1180
1181 2018-10-03  Tom Tromey  <tom@tromey.com>
1182
1183         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1184         <~dwarf2_frame_state_reg_info>: Update.
1185         <dwarf2_frame_state_reg_info>: Update.
1186         <alloc_regs>: Add assertion.  Update.
1187         <reg>: Now a std::vector.
1188         <num_regs>: Remove.
1189         <swap>: Update.
1190         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1191         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1192
1193 2018-10-03  Tom Tromey  <tom@tromey.com>
1194
1195         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1196
1197 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1198
1199         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1200
1201 2018-10-02  Tom Tromey  <tom@tromey.com>
1202
1203         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1204
1205 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1206
1207         * NEWS: Mention changed commands.
1208         * ser-uds.c: New file.
1209         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1210         * configure: Regenerate.
1211         * Makefile.in: Add new file.
1212         * serial.c (serial_open): Check if filename is a socket
1213           and lookup the appropriate interface accordingly.
1214
1215 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1216
1217         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1218         define.
1219         (AARCH64_EXTRA_MAGIC): Likewise.
1220         (AARCH64_FPSIMD_MAGIC): Likewise.
1221         (AARCH64_SVE_MAGIC): Likewise.
1222         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1223         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1224         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1225         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1226         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1227         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1228         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1229         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1230         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1231         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1232         (read_aarch64_ctx): Add function.
1233         (aarch64_linux_sigframe_init): Detect FP registers.
1234
1235 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1236
1237         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1238         (AARCH64_D0_REGNUM): Likewise.
1239         (AARCH64_S0_REGNUM): Likewise.
1240         (AARCH64_H0_REGNUM): Likewise.
1241         (AARCH64_B0_REGNUM): Likewise.
1242         (AARCH64_SVE_V0_REGNUM): Likewise.
1243         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1244         (AARCH64_D0_REGNUM): Likewise.
1245         (AARCH64_S0_REGNUM): Likewise.
1246         (AARCH64_H0_REGNUM): Likewise.
1247         (AARCH64_B0_REGNUM): Likewise.
1248         (AARCH64_SVE_V0_REGNUM): Likewise.
1249
1250 2018-10-01  Gary Benson <gbenson@redhat.com>
1251
1252         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1253         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1254         prfpregset_t instead of gdb_prfpregset_t.
1255         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1256         * configure, config.in: Rebuild.
1257
1258 2018-10-01  Gary Benson <gbenson@redhat.com>
1259
1260         * common/gdb_proc_service.h: New file, factored out from...
1261         * gdb_proc_service.h: Moved common code to the above file.
1262         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1263
1264 2018-10-01  Gary Benson <gbenson@redhat.com>
1265
1266         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1267         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1268
1269 2018-10-01  Gary Benson <gbenson@redhat.com>
1270
1271         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1272         (AC_CHECK_HEADERS): Check for linux/elf.h.
1273         * configure, config.in: Rebuild.
1274         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1275         doesn't define elf_fpregset_t.
1276
1277 2018-10-01  Gary Benson <gbenson@redhat.com>
1278
1279         * gdb_proc_service.h: Whitespace change.
1280
1281 2018-10-01  Tom Tromey  <tom@tromey.com>
1282
1283         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1284         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1285         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1286
1287 2018-10-01  Tom Tromey  <tom@tromey.com>
1288
1289         * README: Minor change.
1290
1291 2018-09-30  Pedro Alves  <palves@redhat.com>
1292
1293         * darwin-nat-info.c (darwin_debug_regions_recurse)
1294         (info_mach_exceptions_command): Remove unused local variables.
1295         * darwin-nat.c (darwin_decode_notify_message)
1296         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1297         (darwin_stop_inferior, darwin_setup_exceptions)
1298         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1299         (darwin_nat_target::attach, darwin_nat_target::detach)
1300         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1301         local variables.
1302         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1303         variables.
1304
1305 2018-09-29  Tom Tromey  <tom@tromey.com>
1306
1307         * README: Remove some leftover text.
1308
1309 2018-09-29  Tom Tromey  <tom@tromey.com>
1310
1311         * PROBLEMS: Rewrite.
1312         * README: Update.
1313
1314 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1315
1316         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1317         case with explicit breakpoint kind.
1318         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1319         'additional_info' and related logic.
1320         (riscv_debug_breakpoints): New variable.
1321         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1322         instruction to determine the breakpoint kind.
1323         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1324         flag.  Update description of 'set/show riscv
1325         use-compressed-breakpoints' flag.
1326
1327 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1328
1329         (NEWS): Mention changes to frame related commands.
1330         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1331         (add_prefix_cmd_suppress_notification): New function.
1332         (add_com_suppress_notification): Call
1333         add_cmd_suppress_notification.
1334         * command.h (add_cmd_suppress_notification): Declare.
1335         (add_prefix_cmd_suppress_notification): Declare.
1336         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1337         (parse_frame_specification): Moved from stack.c, with
1338         simplification to handle a single argument.
1339         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1340         switch to the selected frame.  Add a header comment.
1341         * stack.c: Remove 'safe-ctype.h' include.
1342         (find_frame_for_function): Add declaration.
1343         (find_frame_for_address): New function.
1344         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1345         (frame_selection_by_function_completer): New function.
1346         (info_frame_command): Rename to...
1347         (info_frame_command_core): ...this, and update parameter types.
1348         (select_frame_command): Rename to...
1349         (select_frame_command_core): ...this, and update parameter types.
1350         (frame_command): Rename to...
1351         (frame_command_core): ...this, and update parameter types.
1352         (class frame_command_helper): New class to wrap implementations of
1353         frame related sub-commands.
1354         (frame_apply_cmd_list): New static global.
1355         (frame_cmd_list): Make static.
1356         (select_frame_cmd_list): New global for sub-commands.
1357         (info_frame_cmd_list): New global for sub-commands.
1358         (_initialize_stack): Register sub-commands for 'frame',
1359         'select-frame', and 'info frame'.  Update 'frame apply' commands
1360         to use frame_apply_cmd_list.  Move function local static
1361         frame_apply_list to file static frame_apply_cmd_list for
1362         consistency.
1363         * stack.h (select_frame_command): Delete declarationn.
1364         (select_frame_for_mi): Declare new function.
1365
1366 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1367
1368         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1369         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1370         and NOP.
1371
1372 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1373
1374         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1375
1376 2018-09-26  Tom Tromey  <tom@tromey.com>
1377
1378         * valops.c (auto_abandon): Remove dead code.
1379
1380 2018-09-26  Tom Tromey  <tom@tromey.com>
1381
1382         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1383
1384 2018-09-24  Tom Tromey  <tom@tromey.com>
1385
1386         * common/pathstuff.c (get_standard_cache_dir): Make
1387         "xdg_cache_home" and "home" const.
1388         * top.c (init_history): Make "tmpenv" const.
1389         * main.c (get_init_files): Make "homedir" const.
1390
1391 2018-09-23  Tom Tromey  <tom@tromey.com>
1392
1393         PR python/18852:
1394         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1395
1396 2018-09-23  Tom Tromey  <tom@tromey.com>
1397
1398         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1399         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1400         * python/python-internal.h (gdbpy_handle_exception): Declare.
1401         * python/py-utils.c (gdbpy_handle_exception): New function.
1402
1403 2018-09-23  Tom Tromey  <tom@tromey.com>
1404
1405         PR python/17284:
1406         * python/py-type.c (typy_template_argument): Check for negative
1407         argument number.
1408
1409 2018-09-23  Tom Tromey  <tom@tromey.com>
1410
1411         PR python/14062:
1412         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1413
1414 2018-09-23  Tom Tromey  <tom@tromey.com>
1415
1416         PR python/18170:
1417         * python/py-value.c (valpy_int): Allow conversion from pointer
1418         type.
1419
1420 2018-09-23  Tom Tromey  <tom@tromey.com>
1421
1422         PR python/20126:
1423         * python/py-value.c (valpy_int): Respect type sign.
1424
1425 2018-09-23  Tom Tromey  <tom@tromey.com>
1426
1427         PR python/18352;
1428         * python/py-value.c (valpy_float): Allow conversions from int or
1429         char.
1430         (valpy_int, valpy_long): Allow conversions from float.
1431
1432 2018-09-23  Tom Tromey  <tom@tromey.com>
1433
1434         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1435         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1436
1437 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1438
1439         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1440         __sighndlr.
1441         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1442
1443 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1444
1445         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1446         target_terminal::ours().
1447
1448 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1449
1450         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1451         of vl to ULONGEST.
1452
1453 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1454
1455         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1456         redundant condition.
1457
1458 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1459
1460         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1461
1462         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1463         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1464         * sol-thread.c (ps_pdmodel): Don't guard definition.
1465
1466         * procfs.c: Fix formatting.
1467
1468         * procfs.c (sysset_t_alloc): Remove.
1469         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1470         (procfs_debug_inferior): Likewise.
1471         (procfs_set_exec_trap): Likewise.
1472         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1473         (proc_set_traced_sysexit): Likewise.
1474
1475         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1476         (dead_procinfo): Likewise.
1477         (proc_warn): Likewise.
1478         (proc_error): Likewise.
1479         (proc_get_LDT_entry): Likewise.
1480         (do_attach): Likewise.
1481         (procfs_target::pid_to_str): Likewise.
1482         (iterate_over_mappings): Likewise.
1483
1484         * procfs.c (create_procinfo): Fix ARI warning.
1485         (proc_get_status): Likewise.
1486         (proc_stop_process): Likewise.
1487         (proc_run_process): Likewise.
1488         (proc_kill): Likewise.
1489         (proc_get_LDT_entry): Likewise.
1490         (procfs_find_LDT_entry): Likewise.
1491         (proc_update_threads): Likewise.
1492         (proc_iterate_over_threads): Likewise.
1493         (do_attach): Likewise.
1494         (procfs_xfer_memory): Likewise.
1495         (invalidate_cache): Likewise.
1496         (procfs_target::resume): Likewise.
1497         (procfs_init_inferior): Likewise.
1498         (procfs_set_exec_trap): Likewise.
1499         (procfs_target::thread_alive): Likewise.
1500         (procfs_target::pid_to_exec_file): Likewise.
1501         (iterate_over_mappings): Likewise.
1502         (procfs_target::make_corefile_notes): Likewise.
1503         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1504
1505         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1506         (procfs_find_LDT_entry): Likewise.
1507         * sol-thread.c (ps_lgetLDT): Likewise.
1508
1509 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1510
1511         PR tdep/17903
1512         * procfs.c (procfs_target): Declare pid_to_exec_file.
1513         (procfs_target::pid_to_exec_file): New.
1514
1515 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1516
1517         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1518         renaming.
1519         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1520         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1521
1522 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1523
1524         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1525         (supply_fpregset, fill_fpregset): Move ...
1526         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1527         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1528         Remove references to ioctl-based procfs.
1529         Include <sys/reg.h>.
1530         Remove PR_MODEL_NATIVE guards.
1531         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1532         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1533
1534 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1535
1536         PR gdb/20981:
1537         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1538         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1539         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1540
1541 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1542
1543         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1544         (fbsd_print_sockaddr_in6): Likewise.
1545
1546 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1547             Chris January  <chris.january@arm.com>
1548
1549         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1550         (evaluate_subexp_standard): Return a dummy type when
1551         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1552         OP_F77_UNDETERMINED_ARGLIST case.
1553         * expression.h (enum noside): Update comment.
1554
1555 2018-09-19  George Vasick <george.vasick@oracle.com>
1556
1557         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1558
1559 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1560             April Chin <april.chin@oracle.com>
1561             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1562
1563         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1564         uint_t lwpid_t.
1565         (create_procinfo): Print pids in /proc without leading zeros.
1566
1567 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1568
1569         * nios2-tdep.c (nios2_gcc_target_options): New.
1570         (nios2_gdb_arch_init): Install new hook.
1571
1572 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1573
1574         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1575         New file.
1576         * update-gnulib.sh: Apply patch.
1577         * configure: Re-generate.
1578
1579 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1580
1581         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1582         description.  Make "info proc" command descriptions more
1583         consistent.
1584
1585 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1586
1587         * NEWS: Mention 'info proc files' command.
1588
1589 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1590
1591         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1592         descriptors for IP_FILES and IP_ALL.
1593
1594 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1595
1596         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1597         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1598         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1599         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1600         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1601         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1602         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1603         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1604         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1605         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1606         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1607         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1608         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1609         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1610         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1611         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1612         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1613         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1614         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1615         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1616         (struct fbsd_sockaddr_un): New types.
1617         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1618         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1619         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1620         (fbsd_core_info_proc_files): New functions.
1621         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1622         IP_ALL.
1623         * fbsd-tdep.h (fbsd_info_proc_files_header)
1624         (fbsd_info_proc_files_entry): New.
1625
1626 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1627
1628         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1629         * infcmd.c (info_proc_cmd_files): New function.
1630         (_initialize_infcmd): Register 'info proc files' command.
1631
1632 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1633
1634         * gnulib/aclocal-m4-deps.mk: Re-generate.
1635         * gnulib/aclocal.m4: Re-generate.
1636         * gnulib/config.in: Re-generate.
1637         * gnulib/configure: Re-generate.
1638         * gnulib/import/Makefile.am: Re-generate.
1639         * gnulib/import/Makefile.in: Re-generate.
1640         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1641         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1642         * gnulib/import/arpa_inet.in.h: New file.
1643         * gnulib/import/inet_ntop.c: New file.
1644         * gnulib/import/m4/arpa_inet_h.m4: New file.
1645         * gnulib/import/m4/inet_ntop.m4: New file.
1646         * gnulib/import/m4/netinet_in_h.m4: New file.
1647         * gnulib/import/m4/socklen.m4: New file.
1648         * gnulib/import/m4/sockpfaf.m4: New file.
1649         * gnulib/import/m4/stdalign.m4: New file.
1650         * gnulib/import/m4/sys_uio_h.m4: New file.
1651         * gnulib/import/netinet_in.in.h: New file.
1652         * gnulib/import/stdalign.in.h: New file.
1653         * gnulib/import/sys_socket.c: New file.
1654         * gnulib/import/sys_socket.in.h: New file.
1655         * gnulib/import/sys_uio.in.h: New file.
1656         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1657         module.
1658
1659 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1660
1661         * gnulib/aclocal-m4-deps.mk: New file.
1662         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1663         deterministically.
1664
1665 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1666
1667         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1668         KVE_PATH.
1669
1670 2018-09-18  Tom Tromey  <tom@tromey.com>
1671
1672         * compile/compile-object-load.c (struct
1673         link_hash_table_cleanup_data): Add constructor and destructor.
1674         Use DISABLE_COPY_AND_ASSIGN.
1675         (~link_hash_table_cleanup_data): Rename from
1676         link_hash_table_free.  Now a destructor.
1677         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1678
1679 2018-09-18  Tom Tromey  <tom@tromey.com>
1680
1681         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1682         * compile/compile-object-load.c (struct munmap_list): Move to
1683         header file.
1684         (munmap_list::add): Rename from munmap_list_add; rewrite.
1685         (munmap_list::~munmap_list): Rename from munmap_list_free.
1686         (munmap_listp_free_cleanup): Remove.
1687         (compile_object_load): Update.
1688         * compile/compile-object-load.h (struct munmap_list): Move from
1689         compile-object-load.c.  Rewrite.
1690
1691 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1692
1693         * aarch64-tdep.c (pass_in_v): Use register size.
1694         (aarch64_extract_return_value): Likewise.
1695         (aarch64_store_return_value): Likewise.
1696
1697 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1698
1699         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1700         rlim_t.
1701
1702 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1703
1704         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1705         Fix short help line.
1706
1707 2018-09-17  Tom Tromey  <tom@tromey.com>
1708
1709         PR python/20445:
1710         * configure: Rebuild.
1711         * configure.ac: Conditionally use -DNDEBUG for Python.
1712
1713 2018-09-17  Tom Tromey  <tom@tromey.com>
1714
1715         * configure: Rebuild.
1716         * configure.ac: Use gmp as a library dependency when checking for
1717         mpfr.
1718
1719 2018-09-17  Pedro Alves  <palves@redhat.com>
1720
1721         * python/py-inferior.c (find_inferior_object): Delete.
1722
1723 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1724
1725         * compile/compile-cplus-types.c
1726         (compile_cplus_instance::enter_scope): Don't use new_scope after
1727         std::move.
1728
1729 2018-09-17  Tom Tromey  <tom@tromey.com>
1730
1731         * common/pathstuff.c (get_standard_cache_dir): Use
1732         ~/Library/Caches on macOS.
1733         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1734
1735 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1736
1737         PR python/23669
1738         * breakpoint.c (commands_cmd_element): New.
1739         (_initialize_breakpoint): Assign commands_cmd_element.
1740         * breakpoint.h (commands_cmd_element): New.
1741         * cli/cli-script.c (while_cmd_element, if_command,
1742         define_cmd_element): New.
1743         (command_name_equals): Remove.
1744         (process_next_line): Compare commands by pointer, not by name.
1745         (_initialize_cli_script): Assign the various cmd_list_element
1746         variables.
1747         * compile/compile.c (compile_cmd_element): New.
1748         (_initialize_compile): Assign compile_cmd_element.
1749         * compile/compile.h (compile_cmd_element): New.
1750         * guile/guile.c (guile_cmd_element): New.
1751         (install_gdb_commands): Assign guile_cmd_element.
1752         * guile/guile.h (guile_cmd_element): New.
1753         * python/python.c (python_cmd_element): New.
1754         (_initialize_python): Assign python_cmd_element.
1755         * python/python.h (python_cmd_element): New.
1756         * tracepoint.c (while_stepping_cmd_element): New.
1757         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1758         * tracepoint.h (while_stepping_cmd_element): New.
1759
1760 2018-09-17  Tom Tromey  <tom@tromey.com>
1761
1762         * infrun.c (save_infcall_suspend_state): Return
1763         infcall_suspend_state_up.
1764         (save_infcall_control_state): Return infcall_control_state_up.
1765         * inferior.h (save_infcall_suspend_state)
1766         (save_infcall_control_state): Declare later.  Return unique
1767         pointers.
1768
1769 2018-09-17  Tom Tromey  <tom@tromey.com>
1770
1771         * infrun.c (struct stop_context): Declare constructor,
1772         destructor, "changed" method.
1773         (stop_context::stop_context): Rename from save_stop_context.
1774         (stop_context::~stop_context): Rename from
1775         release_stop_context_cleanup.
1776         (normal_stop): Update.
1777         (stop_context::changed): Rename from stop_context_changed.  Return
1778         bool.
1779
1780 2018-09-17  Tom Tromey  <tom@tromey.com>
1781
1782         * inferior.h (struct infcall_suspend_state_deleter): New.
1783         (infcall_suspend_state_up): New typedef.
1784         (struct infcall_control_state_deleter): New.
1785         (infcall_control_state_up): New typedef.
1786         (make_cleanup_restore_infcall_suspend_state)
1787         (make_cleanup_restore_infcall_control_state): Don't declare.
1788         * infcall.c (call_function_by_hand_dummy): Update.
1789         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1790         (make_cleanup_restore_infcall_suspend_state): Remove.
1791         (do_restore_infcall_control_state_cleanup)
1792         (make_cleanup_restore_infcall_control_state): Remove.
1793
1794 2018-09-17  Tom Tromey  <tom@tromey.com>
1795
1796         * gdbthread.h (struct thread_control_state): Add initializer.
1797         (class thread_info) <control>: Remove initializer.
1798         * inferior.h (struct inferior_control_state): Add initializer.
1799         (class inferior) <control>: Remove initializer.
1800         (exit_inferior_1): Update.
1801         * infrun.c (struct infcall_control_state): Add constructors.
1802         (save_infcall_control_state): Use new.
1803         (restore_infcall_control_state, discard_infcall_control_state):
1804         Use delete.
1805
1806 2018-09-17  Tom Tromey  <tom@tromey.com>
1807
1808         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1809         unique_ptr.
1810         <siginfo_data>: Now a unique_xmalloc_ptr.
1811         (save_infcall_suspend_state, restore_infcall_suspend_state)
1812         (discard_infcall_suspend_state)
1813         (get_infcall_suspend_state_regcache): Update.
1814
1815 2018-09-17  Tom Tromey  <tom@tromey.com>
1816
1817         * gdbthread.h (struct thread_suspend_state): Add initializers.
1818         (class thread_info) <suspend>: Remove initializer.
1819         * infrun.c (struct infcall_suspend_state): Add initializers.
1820         (save_infcall_suspend_state): Use new.
1821         (discard_infcall_suspend_state): Use delete.
1822
1823 2018-09-16  Tom Tromey  <tom@tromey.com>
1824
1825         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1826         Remove.
1827         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1828         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1829         (py_varobj_iter_new): Likewise.
1830         (py_varobj_get_iterator): Use gdbpy_ref.
1831
1832 2018-09-16  Tom Tromey  <tom@tromey.com>
1833
1834         * python/py-threadevent.c (py_get_event_thread): Simplify.
1835         * python/py-inferior.c (infpy_thread_from_thread_handle):
1836         Return immediately after calling thread_to_thread_object.  Use
1837         Py_RETURN_NONE.
1838         (thread_to_thread_object): Set the exception on a NULL return.
1839
1840 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1841
1842         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1843
1844 2018-09-16  Tom Tromey  <tom@tromey.com>
1845
1846         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1847         Remove.
1848
1849 2018-09-16  Tom Tromey  <tom@tromey.com>
1850
1851         * python/python-internal.h (thread_to_thread_object): Change
1852         return type.
1853         * python/py-inferior.c (thread_to_thread_object): Return a new
1854         reference.
1855         (infpy_thread_from_thread_handle): Update.
1856         * python/py-infthread.c (gdbpy_selected_thread): Update.
1857         * python/py-stopevent.c (create_stop_event_object): Update.
1858         * python/py-threadevent.c (py_get_event_thread): Return a new
1859         reference.
1860         (py_get_event_thread): Update.
1861         * python/py-event.h (py_get_event_thread): Change return type.
1862         * python/py-continueevent.c (create_continue_event_object):
1863         Update.
1864
1865 2018-09-16  Tom Tromey  <tom@tromey.com>
1866
1867         * python/py-progspace.c (pspy_get_objfiles): Update.
1868         * python/python-internal.h (objfile_to_objfile_object): Change
1869         return type.
1870         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1871         Update.
1872         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1873         Update.
1874         * python/python.c (gdbpy_get_current_objfile): Update.
1875         (gdbpy_objfiles): Update.
1876         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1877         Update.
1878         (objfile_to_objfile_object): Return a new reference.
1879         * python/py-symtab.c (stpy_get_objfile): Update.
1880         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1881         Update.
1882
1883 2018-09-16  Tom Tromey  <tom@tromey.com>
1884
1885         * python/py-inferior.c (infpy_get_progspace): Update.
1886         * python/python-internal.h (pspace_to_pspace_object): Change
1887         return type.
1888         * python/py-newobjfileevent.c
1889         (create_clear_objfiles_event_object): Update.
1890         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1891         Update.
1892         * python/python.c (gdbpy_get_current_progspace): Update.
1893         (gdbpy_progspaces): Update.
1894         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1895         reference.
1896         * python/py-objfile.c (objfpy_get_progspace): Update.
1897         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1898         Update.
1899
1900 2018-09-16  Tom Tromey  <tom@tromey.com>
1901
1902         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1903         (solib_name, block_for_pc, find_pc_line): New functions.
1904         (execute_unwinders): Update.
1905         * python/py-block.c (gdbpy_block_for_pc): Remove.
1906         * python/py-inferior.c (infpy_get_progspace): New function.
1907         (inferior_object_getset) <progspace>: Add.
1908         * python/py-progspace.c (pspy_objfiles): Rewrite.
1909         (pspy_solib_name, pspy_block_for_pc)
1910         (pspy_find_pc_line, pspy_is_valid): New functions.
1911         (progspace_object_methods): Add entries for solib_name,
1912         block_for_pc, find_pc_line, is_valid.
1913         * python/python-internal.h (gdbpy_block_for_pc)
1914         (build_objfiles_list): Don't declare.
1915         * python/python.c: Don't include solib.h.
1916         (gdbpy_solib_name, gdbpy_find_pc_line)
1917         (gdbpy_get_current_progspace, build_objfiles_list)
1918         (gdbpy_objfiles): Remove.
1919         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1920         solib_name, find_pc_line>: Remove entries.
1921
1922 2018-09-16  Tom Tromey  <tom@tromey.com>
1923
1924         * top.c (new_ui_command): Use GNU style for metasyntactic
1925         variables.
1926         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1927         variables.
1928         * maint.c (maintenance_translate_address): Remove "<>" around
1929         text.
1930         * interps.c (interpreter_exec_cmd): Use GNU style for
1931         metasyntactic variables.
1932         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1933         metasyntactic variables.
1934         * tracepoint.c (tfind_range_command): Use GNU style for
1935         metasyntactic variables.
1936         (tfind_outside_command): Likewise.
1937         (_initialize_tracepoint): Likewise.
1938         * remote.c (extended_remote_target::create_inferior): Use GNU
1939         style for metasyntactic variables.
1940         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1941         metasyntactic variables.
1942         (adi_assign_command): Likewise.
1943
1944 2018-09-16  Tom Tromey  <tom@tromey.com>
1945
1946         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1947         metasyntactic variables.  Print message if no disassembler options
1948         are available.
1949
1950 2018-09-15  Tom Tromey  <tom@tromey.com>
1951
1952         * infcmd.c (get_inferior_args): Return const char *.
1953         * inferior.h (get_inferior_args): Return type now const.
1954         * linux-tdep.c (linux_fill_prpsinfo): Update.
1955         * procfs.c (procfs_target::make_corefile_notes): Update.
1956
1957 2018-09-07  Tom Tromey  <tom@tromey.com>
1958
1959         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1960         inside the TRY.
1961
1962 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1963
1964         * nios2-tdep.c (nios2_type_align): New.
1965         (nios2_gdb_arch_init): Install type_align hook.
1966
1967 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1968
1969         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1970         type that is neither object file owned, nor gdbarch owned.
1971         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1972         gdbarch is non-NULL.
1973         (alloc_type_instance): Allocate non-objfile owned types on the
1974         gdbarch obstack.
1975         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1976         using TYPE_ALLOC to ensure memory is allocated on the correct
1977         obstack.
1978         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1979         obstack, or the gdbarch obstack.
1980         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1981
1982 2018-09-14  Tom Tromey  <tom@tromey.com>
1983
1984         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1985         block.
1986
1987 2018-09-14  Tom Tromey  <tom@tromey.com>
1988
1989         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1990
1991 2018-09-13  Tom Tromey  <tom@tromey.com>
1992
1993         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1994         static.
1995
1996 2018-09-13  Tom Tromey  <tom@tromey.com>
1997
1998         * exec.c (try_open_exec_file): Use std::string.
1999
2000 2018-09-13  Tom Tromey  <tom@tromey.com>
2001
2002         * utils.h (gdb_bfd_errmsg): Return std::string.
2003         * exec.c (exec_file_attach): Update.
2004         * compile/compile-object-load.c (compile_object_load): Update.
2005         * utils.c (gdb_bfd_errmsg): Return std::string.
2006
2007 2018-09-13  Tom Tromey  <tom@tromey.com>
2008
2009         * procfs.c (struct procinfo_deleter): New.
2010         (procinfo_up): New typedef.
2011         (do_destroy_procinfo_cleanup): Remove.
2012         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
2013
2014 2018-09-13  Tom Tromey  <tom@tromey.com>
2015
2016         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
2017
2018 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2019 2018-09-13  Tom Tromey  <tom@tromey.com>
2020
2021         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
2022         (pspy_get_objfiles): New function.
2023         (progspace_object_methods): New.
2024         (pspace_object_type): Add tp_methods callback.
2025         * python/python-internal.h (build_objfiles_list): New
2026         declaration.
2027         * python/python.c (build_objfiles_list): New function.
2028         (gdbpy_objfiles): Implement using build_objfiles_list.
2029         * NEWS: Mention the Progspace.objfiles method.
2030
2031 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2032
2033         * python/py-inferior.c (infpy_get_progspace): New function.
2034         (inferior_object_getset): Add progspace property.
2035         * NEWS: Mention the new property.
2036
2037 2018-09-13  Tom Tromey  <tom@tromey.com>
2038
2039         PR rust/23650:
2040         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
2041
2042 2018-09-13  Tom Tromey  <tom@tromey.com>
2043
2044         PR rust/23626:
2045         * rust-lang.c (rust_enum_variant): Now static.
2046         (rust_empty_enum_p): New function.
2047         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
2048         Handle empty enum.
2049
2050 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
2051
2052         * python/py-inferior.c (infpy_repr): New.
2053         (inferior_object_type): Register infpy_repr.
2054         * python/py-objfile.c (objfpy_repr): New.
2055         (objfile_object_type): Register objfpy_repr.
2056
2057 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2058
2059         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
2060
2061 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
2062
2063         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
2064         typo.
2065
2066 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
2067
2068         * common/common-utils.c: Don't include '<sys/stat.h>'.
2069         (is_regular_file): Move to...
2070         * common/filestuff.c (is_regular_file): ... here.
2071         * common/common-utils.h (is_regular_file): Move to...
2072         * common/filestuff.h (is_regular_file): ... here.
2073
2074 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
2075
2076         * skip.c (debug_skip): New variable.
2077         (skiplist_entry::do_skip_file_p): Add debug output.
2078         (skiplist_entry::do_skip_gfile_p): Likewise.
2079         (skiplist_entry::skip_function_p): Likewise.
2080         (_initialize_step_skip): Create debug command.
2081         * NEWS: Mention set/show debug skip.
2082
2083 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2084
2085         * darwin-nat.c (should_disable_startup_with_shell):
2086         New function.
2087         (darwin_nat_target::create_inferior): Add call.
2088
2089 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2090
2091         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2092         inf_port, msg_state>: Initialize.
2093         (struct darwin_thread_info) <signaled, single_step>: Change
2094         type and initialize.
2095         (struct darwin_thread_info) <event>: Initialize.
2096
2097 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2098
2099         PR gdb/23555
2100         PR gdb/23558
2101         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2102         guesses.
2103
2104 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2105
2106         Revert:
2107         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2108
2109         PR gdb/23555
2110         PR gdb/23558
2111         * gnulib/aclocal.m4: Regenerate.
2112         * gnulib/config.in: Regenerate.
2113         * gnulib/configure: Regenerate.
2114         * gnulib/import/Makefile.am: Update.
2115         * gnulib/import/Makefile.in: Update.
2116         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2117         * gnulib/import/_Noreturn.h: ... this.
2118         * gnulib/import/alloca.in.h: Update.
2119         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2120         * gnulib/import/arg-nonnull.h: ... this.
2121         * gnulib/import/assure.h: Update.
2122         * gnulib/import/at-func.c: Update.
2123         * gnulib/import/basename-lgpl.c: Update.
2124         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2125         * gnulib/import/c++defs.h: ... this.
2126         * gnulib/import/canonicalize-lgpl.c: Update.
2127         * gnulib/import/cdefs.h: Update.
2128         * gnulib/import/chdir-long.c: Update.
2129         * gnulib/import/chdir-long.h: Update.
2130         * gnulib/import/cloexec.c: Update.
2131         * gnulib/import/cloexec.h: Update.
2132         * gnulib/import/close.c: Update.
2133         * gnulib/import/closedir.c: Update.
2134         * gnulib/import/config.charset: Update.
2135         * gnulib/import/dirent-private.h: Update.
2136         * gnulib/import/dirent.in.h: Update.
2137         * gnulib/import/dirfd.c: Update.
2138         * gnulib/import/dirname-lgpl.c: Update.
2139         * gnulib/import/dirname.h: Update.
2140         * gnulib/import/dosname.h: Update.
2141         * gnulib/import/dup-safer-flag.c: Update.
2142         * gnulib/import/dup-safer.c: Update.
2143         * gnulib/import/dup.c: Update.
2144         * gnulib/import/dup2.c: Update.
2145         * gnulib/import/errno.in.h: Update.
2146         * gnulib/import/error.c: Update.
2147         * gnulib/import/error.h: Update.
2148         * gnulib/import/exitfail.c: Update.
2149         * gnulib/import/exitfail.h: Update.
2150         * gnulib/import/extra/update-copyright: Update.
2151         * gnulib/import/fchdir.c: Update.
2152         * gnulib/import/fcntl.c: Update.
2153         * gnulib/import/fcntl.in.h: Update.
2154         * gnulib/import/fd-hook.c: Update.
2155         * gnulib/import/fd-hook.h: Update.
2156         * gnulib/import/fd-safer-flag.c: Update.
2157         * gnulib/import/fd-safer.c: Update.
2158         * gnulib/import/fdopendir.c: Update.
2159         * gnulib/import/filename.h: Update.
2160         * gnulib/import/filenamecat-lgpl.c: Update.
2161         * gnulib/import/filenamecat.h: Update.
2162         * gnulib/import/flexmember.h: Update.
2163         * gnulib/import/float+.h: Update.
2164         * gnulib/import/float.c: Update.
2165         * gnulib/import/float.in.h: Update.
2166         * gnulib/import/fnmatch.c: Update.
2167         * gnulib/import/fnmatch.in.h: Update.
2168         * gnulib/import/fnmatch_loop.c: Update.
2169         * gnulib/import/fpucw.h: Update.
2170         * gnulib/import/frexp.c: Update.
2171         * gnulib/import/frexpl.c: Update.
2172         * gnulib/import/fstat.c: Update.
2173         * gnulib/import/fstatat.c: Update.
2174         * gnulib/import/getcwd-lgpl.c: Update.
2175         * gnulib/import/getcwd.c: Update.
2176         * gnulib/import/getdtablesize.c: Update.
2177         * gnulib/import/getlogin_r.c: Update.
2178         * gnulib/import/getprogname.c: Update.
2179         * gnulib/import/getprogname.h: Update.
2180         * gnulib/import/gettext.h: Update.
2181         * gnulib/import/gettimeofday.c: Update.
2182         * gnulib/import/glob-libc.h: Update.
2183         * gnulib/import/glob.c: Update.
2184         * gnulib/import/glob.in.h: Update.
2185         * gnulib/import/glob_internal.h: Update.
2186         * gnulib/import/glob_pattern_p.c: Update.
2187         * gnulib/import/globfree.c: Update.
2188         * gnulib/import/hard-locale.c: Update.
2189         * gnulib/import/hard-locale.h: Update.
2190         * gnulib/import/intprops.h: Update.
2191         * gnulib/import/inttypes.in.h: Update.
2192         * gnulib/import/isnan.c: Update.
2193         * gnulib/import/isnand-nolibm.h: Update.
2194         * gnulib/import/isnand.c: Update.
2195         * gnulib/import/isnanl-nolibm.h: Update.
2196         * gnulib/import/isnanl.c: Update.
2197         * gnulib/import/itold.c: Update.
2198         * gnulib/import/libc-config.h: Update.
2199         * gnulib/import/limits.in.h: Update.
2200         * gnulib/import/localcharset.c: Update.
2201         * gnulib/import/localcharset.h: Update.
2202         * gnulib/import/localtime-buffer.c: Update.
2203         * gnulib/import/localtime-buffer.h: Update.
2204         * gnulib/import/lstat.c: Update.
2205         * gnulib/import/m4/00gnulib.m4: Update.
2206         * gnulib/import/m4/__inline.m4: Update.
2207         * gnulib/import/m4/absolute-header.m4: Update.
2208         * gnulib/import/m4/alloca.m4: Update.
2209         * gnulib/import/m4/builtin-expect.m4: Update.
2210         * gnulib/import/m4/canonicalize.m4: Update.
2211         * gnulib/import/m4/chdir-long.m4: Update.
2212         * gnulib/import/m4/close.m4: Update.
2213         * gnulib/import/m4/closedir.m4: Update.
2214         * gnulib/import/m4/configmake.m4: Update.
2215         * gnulib/import/m4/d-ino.m4: Update.
2216         * gnulib/import/m4/d-type.m4: Update.
2217         * gnulib/import/m4/dirent_h.m4: Update.
2218         * gnulib/import/m4/dirfd.m4: Update.
2219         * gnulib/import/m4/dirname.m4: Update.
2220         * gnulib/import/m4/double-slash-root.m4: Update.
2221         * gnulib/import/m4/dup.m4: Update.
2222         * gnulib/import/m4/dup2.m4: Update.
2223         * gnulib/import/m4/eealloc.m4: Update.
2224         * gnulib/import/m4/environ.m4: Update.
2225         * gnulib/import/m4/errno_h.m4: Update.
2226         * gnulib/import/m4/error.m4: Update.
2227         * gnulib/import/m4/exponentd.m4: Update.
2228         * gnulib/import/m4/exponentl.m4: Update.
2229         * gnulib/import/m4/extensions.m4: Update.
2230         * gnulib/import/m4/extern-inline.m4: Update.
2231         * gnulib/import/m4/fchdir.m4: Update.
2232         * gnulib/import/m4/fcntl-o.m4: Update.
2233         * gnulib/import/m4/fcntl.m4: Update.
2234         * gnulib/import/m4/fcntl_h.m4: Update.
2235         * gnulib/import/m4/fdopendir.m4: Update.
2236         * gnulib/import/m4/filenamecat.m4: Update.
2237         * gnulib/import/m4/flexmember.m4: Update.
2238         * gnulib/import/m4/float_h.m4: Update.
2239         * gnulib/import/m4/fnmatch.m4: Update.
2240         * gnulib/import/m4/fnmatch_h.m4: Update.
2241         * gnulib/import/m4/fpieee.m4: Update.
2242         * gnulib/import/m4/frexp.m4: Update.
2243         * gnulib/import/m4/frexpl.m4: Update.
2244         * gnulib/import/m4/fstat.m4: Update.
2245         * gnulib/import/m4/fstatat.m4: Update.
2246         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2247         * gnulib/import/m4/getcwd-path-max.m4: Update.
2248         * gnulib/import/m4/getcwd.m4: Update.
2249         * gnulib/import/m4/getdtablesize.m4: Update.
2250         * gnulib/import/m4/getlogin.m4: Update.
2251         * gnulib/import/m4/getlogin_r.m4: Update.
2252         * gnulib/import/m4/getpagesize.m4: Update.
2253         * gnulib/import/m4/getprogname.m4: Update.
2254         * gnulib/import/m4/gettimeofday.m4: Update.
2255         * gnulib/import/m4/glibc21.m4: Update.
2256         * gnulib/import/m4/glob.m4: Update.
2257         * gnulib/import/m4/glob_h.m4: Update.
2258         * gnulib/import/m4/gnulib-cache.m4: Update.
2259         * gnulib/import/m4/gnulib-common.m4: Update.
2260         * gnulib/import/m4/gnulib-comp.m4: Update.
2261         * gnulib/import/m4/gnulib-tool.m4: Update.
2262         * gnulib/import/m4/hard-locale.m4: Update.
2263         * gnulib/import/m4/include_next.m4: Update.
2264         * gnulib/import/m4/inttypes-pri.m4: Update.
2265         * gnulib/import/m4/inttypes.m4: Update.
2266         * gnulib/import/m4/isnand.m4: Update.
2267         * gnulib/import/m4/isnanl.m4: Update.
2268         * gnulib/import/m4/largefile.m4: Update.
2269         * gnulib/import/m4/limits-h.m4: Update.
2270         * gnulib/import/m4/localcharset.m4: Update.
2271         * gnulib/import/m4/locale-fr.m4: Update.
2272         * gnulib/import/m4/locale-ja.m4: Update.
2273         * gnulib/import/m4/locale-zh.m4: Update.
2274         * gnulib/import/m4/localtime-buffer.m4: Update.
2275         * gnulib/import/m4/longlong.m4: Update.
2276         * gnulib/import/m4/lstat.m4: Update.
2277         * gnulib/import/m4/malloc.m4: Update.
2278         * gnulib/import/m4/malloca.m4: Update.
2279         * gnulib/import/m4/math_h.m4: Update.
2280         * gnulib/import/m4/mbrtowc.m4: Update.
2281         * gnulib/import/m4/mbsinit.m4: Update.
2282         * gnulib/import/m4/mbsrtowcs.m4: Update.
2283         * gnulib/import/m4/mbstate_t.m4: Update.
2284         * gnulib/import/m4/memchr.m4: Update.
2285         * gnulib/import/m4/memmem.m4: Update.
2286         * gnulib/import/m4/mempcpy.m4: Update.
2287         * gnulib/import/m4/memrchr.m4: Update.
2288         * gnulib/import/m4/mkdir.m4: Update.
2289         * gnulib/import/m4/mkstemp.m4: Update.
2290         * gnulib/import/m4/mmap-anon.m4: Update.
2291         * gnulib/import/m4/mode_t.m4: Update.
2292         * gnulib/import/m4/msvc-inval.m4: Update.
2293         * gnulib/import/m4/msvc-nothrow.m4: Update.
2294         * gnulib/import/m4/multiarch.m4: Update.
2295         * gnulib/import/m4/nocrash.m4: Update.
2296         * gnulib/import/m4/off_t.m4: Update.
2297         * gnulib/import/m4/onceonly.m4: Update.
2298         * gnulib/import/m4/open-cloexec.m4: Update.
2299         * gnulib/import/m4/open.m4: Update.
2300         * gnulib/import/m4/openat.m4: Update.
2301         * gnulib/import/m4/opendir.m4: Update.
2302         * gnulib/import/m4/pathmax.m4: Update.
2303         * gnulib/import/m4/rawmemchr.m4: Update.
2304         * gnulib/import/m4/readdir.m4: Update.
2305         * gnulib/import/m4/readlink.m4: Update.
2306         * gnulib/import/m4/realloc.m4: Update.
2307         * gnulib/import/m4/rename.m4: Update.
2308         * gnulib/import/m4/rewinddir.m4: Update.
2309         * gnulib/import/m4/rmdir.m4: Update.
2310         * gnulib/import/m4/save-cwd.m4: Update.
2311         * gnulib/import/m4/secure_getenv.m4: Update.
2312         * gnulib/import/m4/setenv.m4: Update.
2313         * gnulib/import/m4/signal_h.m4: Update.
2314         * gnulib/import/m4/ssize_t.m4: Update.
2315         * gnulib/import/m4/stat-time.m4: Update.
2316         * gnulib/import/m4/stat.m4: Update.
2317         * gnulib/import/m4/std-gnu11.m4: Update.
2318         * gnulib/import/m4/stdbool.m4: Update.
2319         * gnulib/import/m4/stddef_h.m4: Update.
2320         * gnulib/import/m4/stdint.m4: Update.
2321         * gnulib/import/m4/stdio_h.m4: Update.
2322         * gnulib/import/m4/stdlib_h.m4: Update.
2323         * gnulib/import/m4/strchrnul.m4: Update.
2324         * gnulib/import/m4/strdup.m4: Update.
2325         * gnulib/import/m4/strerror.m4: Update.
2326         * gnulib/import/m4/string_h.m4: Update.
2327         * gnulib/import/m4/strstr.m4: Update.
2328         * gnulib/import/m4/strtok_r.m4: Update.
2329         * gnulib/import/m4/sys_socket_h.m4: Update.
2330         * gnulib/import/m4/sys_stat_h.m4: Update.
2331         * gnulib/import/m4/sys_time_h.m4: Update.
2332         * gnulib/import/m4/sys_types_h.m4: Update.
2333         * gnulib/import/m4/tempname.m4: Update.
2334         * gnulib/import/m4/time_h.m4: Update.
2335         * gnulib/import/m4/unistd-safer.m4: Update.
2336         * gnulib/import/m4/unistd_h.m4: Update.
2337         * gnulib/import/m4/warn-on-use.m4: Update.
2338         * gnulib/import/m4/wchar_h.m4: Update.
2339         * gnulib/import/m4/wchar_t.m4: Update.
2340         * gnulib/import/m4/wctype_h.m4: Update.
2341         * gnulib/import/m4/wint_t.m4: Update.
2342         * gnulib/import/malloc.c: Update.
2343         * gnulib/import/malloc/scratch_buffer.h: Update.
2344         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2345         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2346         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2347         * gnulib/import/malloca.c: Update.
2348         * gnulib/import/malloca.h: Update.
2349         * gnulib/import/malloca.valgrind: Update.
2350         * gnulib/import/math.in.h: Update.
2351         * gnulib/import/mbrtowc.c: Update.
2352         * gnulib/import/mbsinit.c: Update.
2353         * gnulib/import/mbsrtowcs-impl.h: Update.
2354         * gnulib/import/mbsrtowcs-state.c: Update.
2355         * gnulib/import/mbsrtowcs.c: Update.
2356         * gnulib/import/memchr.c: Update.
2357         * gnulib/import/memmem.c: Update.
2358         * gnulib/import/mempcpy.c: Update.
2359         * gnulib/import/memrchr.c: Update.
2360         * gnulib/import/mkdir.c: Update.
2361         * gnulib/import/mkstemp.c: Update.
2362         * gnulib/import/msvc-inval.c: Update.
2363         * gnulib/import/msvc-inval.h: Update.
2364         * gnulib/import/msvc-nothrow.c: Update.
2365         * gnulib/import/msvc-nothrow.h: Update.
2366         * gnulib/import/open.c: Update.
2367         * gnulib/import/openat-die.c: Update.
2368         * gnulib/import/openat-priv.h: Update.
2369         * gnulib/import/openat-proc.c: Update.
2370         * gnulib/import/openat.c: Update.
2371         * gnulib/import/openat.h: Update.
2372         * gnulib/import/opendir.c: Update.
2373         * gnulib/import/pathmax.h: Update.
2374         * gnulib/import/pipe-safer.c: Update.
2375         * gnulib/import/rawmemchr.c: Update.
2376         * gnulib/import/readdir.c: Update.
2377         * gnulib/import/readlink.c: Update.
2378         * gnulib/import/realloc.c: Update.
2379         * gnulib/import/ref-add.sin: Update.
2380         * gnulib/import/ref-del.sin: Update.
2381         * gnulib/import/rename.c: Update.
2382         * gnulib/import/rewinddir.c: Update.
2383         * gnulib/import/rmdir.c: Update.
2384         * gnulib/import/same-inode.h: Update.
2385         * gnulib/import/save-cwd.c: Update.
2386         * gnulib/import/save-cwd.h: Update.
2387         * gnulib/import/scratch_buffer.h: Update.
2388         * gnulib/import/secure_getenv.c: Update.
2389         * gnulib/import/setenv.c: Update.
2390         * gnulib/import/signal.in.h: Update.
2391         * gnulib/import/stat-time.c: Update.
2392         * gnulib/import/stat-time.h: Update.
2393         * gnulib/import/stat-w32.c: Update.
2394         * gnulib/import/stat-w32.h: Update.
2395         * gnulib/import/stat.c: Update.
2396         * gnulib/import/stdbool.in.h: Update.
2397         * gnulib/import/stddef.in.h: Update.
2398         * gnulib/import/stdint.in.h: Update.
2399         * gnulib/import/stdio.in.h: Update.
2400         * gnulib/import/stdlib.in.h: Update.
2401         * gnulib/import/str-two-way.h: Update.
2402         * gnulib/import/strchrnul.c: Update.
2403         * gnulib/import/strdup.c: Update.
2404         * gnulib/import/streq.h: Update.
2405         * gnulib/import/strerror-override.c: Update.
2406         * gnulib/import/strerror-override.h: Update.
2407         * gnulib/import/strerror.c: Update.
2408         * gnulib/import/string.in.h: Update.
2409         * gnulib/import/stripslash.c: Update.
2410         * gnulib/import/strnlen1.c: Update.
2411         * gnulib/import/strnlen1.h: Update.
2412         * gnulib/import/strstr.c: Update.
2413         * gnulib/import/strtok_r.c: Update.
2414         * gnulib/import/sys_stat.in.h: Update.
2415         * gnulib/import/sys_time.in.h: Update.
2416         * gnulib/import/sys_types.in.h: Update.
2417         * gnulib/import/tempname.c: Update.
2418         * gnulib/import/tempname.h: Update.
2419         * gnulib/import/time.in.h: Update.
2420         * gnulib/import/unistd--.h: Update.
2421         * gnulib/import/unistd-safer.h: Update.
2422         * gnulib/import/unistd.in.h: Update.
2423         * gnulib/import/unsetenv.c: Update.
2424         * gnulib/import/verify.h: Update.
2425         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2426         * gnulib/import/wchar.in.h: Update.
2427         * gnulib/import/wctype.in.h: Update.
2428         * gnulib/import/xalloc-oversized.h: Update.
2429         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2430         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2431
2432 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2433
2434         * record-btrace.c (get_thread_current_frame): Remove
2435         old_inferior_ptid.
2436
2437 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2438
2439         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2440         with check_tag to 1 if and only if the type is tagged and the
2441         component being searched cannot been found in the current
2442         view. Otherwise, always call ada_to_fixed_type with
2443         check_tag to 0.
2444
2445 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2446
2447         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2448         declaration.
2449         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2450         * ada-varobj.c (ada_varobj_get_number_of_children,
2451         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2452
2453 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2454
2455         * ada-valprint.c (ada_value_print): Use type instead of
2456         enclosing type.
2457
2458 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2459
2460         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2461         an array of access to unconstrained array.
2462
2463 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2464
2465         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2466         (ada_check_typedef): Use it.
2467
2468 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2469
2470         * ada-varobj.c (ada_varobj_describe_struct_child)
2471         (ada_varobj_describe_child): Handle union case like struct one.
2472
2473 2018-09-10  Tom Tromey  <tom@tromey.com>
2474
2475         PR python/18380:
2476         * python/python.c (_initialize_python): Make example in "python"
2477         help work in Python 3.
2478
2479 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2480
2481         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2482         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2483         $(EXEEXT) to the script, as it is not a program.
2484
2485 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2486
2487         * python/py-prettyprint.c (pretty_print_one_value): Return
2488         gdbpy_ref<>.
2489         (print_string_repr): Adjust.
2490         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2491         * python/python-internal.h (apply_varobj_pretty_printer): Return
2492         gdbpy_ref<>.
2493         * varobj.c (varobj_value_get_print_value): Adjust.
2494
2495 2018-09-08  Tom Tromey  <tom@tromey.com>
2496
2497         PR python/16047:
2498         * python/py-prettyprint.c (pretty_print_one_value): Check for
2499         to_string method.
2500
2501 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2502
2503         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2504         replace_operator_with_call.
2505
2506 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2507
2508         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2509
2510 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2511
2512         * ada-typeprint.c (print_range): Print the bounds using TYPE
2513         rather than its TYPE_TARGET_TYPE.
2514
2515 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2516
2517         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2518         call to ada_to_fixed_value_create.
2519
2520 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2521
2522         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2523
2524 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2525
2526         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2527         by calls to error.
2528
2529 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2530
2531         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2532         Move update of loop variable "fi".
2533
2534 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2535
2536         * ada-lang.c (value_assign_to_component): In the case of
2537         big-endian targets, extract the bits of the given VAL
2538         using an src_offset of zero if container is not a scalar.
2539
2540 2018-09-06  Simon Ser  <contact@emersion.fr>
2541
2542         PR gdb/23105
2543         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2544         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2545         * fbsd-tdep.c (fbsd_make_note_desc): New.
2546         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2547         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2548         * target.h (enum target_object) Add FreeBSD-specific
2549         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2550
2551 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2552
2553         * compile/compile-c.h (generate_c_for_variable_locations):
2554         Change reference to pointer.
2555         * compile/compile-c-support.c (compile_program) <compute>:
2556         Likewise.
2557         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2558         (generate_c_for_for_one_variable): Likewise
2559         (generate_c_for_variable_locations): Likewise
2560         * compile/compile-c-types.c (compile_c_instance::convert_type):
2561         Likewise
2562         * compile/compile-cplus-symbols.c (convert_one_symbol):
2563         std::move the scope passed to enter_scope.
2564         * compile/compile-cplus-types.c
2565         (compile_cplus_instance::enter_scope): Make parameter
2566         rvalue-reference.
2567         (compile_cplus_instance::new_scope): Change reference to
2568         pointer.
2569         (compile_cplus_instance::convert_type): Likewise
2570         (compile_cplus_convert_typedef): std::move the scope passed to
2571         enter_scope.
2572         (compile_cplus_convert_struct_or_union): Likewise.
2573         (compile_cplus_convert_enum): Likewise.
2574         (compile_cplus_convert_namespace): Likewise.
2575         * compile/compile-cplus.h (compile_cplus_instance)
2576         <enter_scope>: Make parameter rvalue-reference.
2577         * compile/compile-internal.h (compile_instance)
2578         <get_cached_type>: Likewise
2579         * compile/compile-loc2c.c (push): Likewise
2580         (pushf): Likewise
2581         (unary): Likewise
2582         (binary): Likewise
2583         (print_label): Likewise
2584         (pushf_register_address): Likewise
2585         (pushf_register): Likewise
2586         (do_compile_dwarf_expr_to_c): Likewise
2587         (compile_dwarf_expr_to_c): Likewise
2588         (compile_dwarf_bounds_to_c): Likewise
2589         * compile/compile.c (compile_instance::get_cached_type):
2590         Likewise
2591         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2592         (compile_dwarf_bounds_to_c): Likewise
2593         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2594         (dwarf2_compile_property_to_c): Likewise
2595         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2596         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2597         Likewise
2598
2599 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2600
2601         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2602         * tui/tui-data.c (init_content_element): Don't initialize it.
2603
2604 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2605
2606         * tui/tui-data.h (struct tui_win_info)
2607         <detail::opaque>: Remove.
2608         * tui/tui-data.c (init_win_info): Remove assignment.
2609
2610 2018-09-05  Tom Tromey  <tom@tromey.com>
2611
2612         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2613         -Wformat-nonliteral.
2614         * target-float.c (host_float_ops<T>::to_string)
2615         (host_float_ops<T>::from_string): Use
2616         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2617         * configure: Rebuild.
2618
2619 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2620
2621         * printcmd.c (printf_c_string): Use
2622         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2623         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2624
2625 2018-09-05  Tom Tromey  <tom@tromey.com>
2626
2627         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2628
2629 2018-09-05  Tom de Vries  <tdevries@suse.de>
2630
2631         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2632         with resolve_abstract_p == true.
2633         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2634         defaulting to false. Propagate resolve_abstract_p to
2635         dwarf2_fetch_die_loc_sect_off.
2636         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2637         parameter, defaulting to false.
2638         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2639         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2640         parameter.
2641         * dwarf2read.h (struct die_info): Forward-declare.
2642         (die_info_ptr): New typedef.
2643         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2644
2645 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2646
2647         GDB 8.2 released.
2648
2649 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2650             Pedro Alves  <palves@redhat.com>
2651
2652         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2653         "aclocal-m4-deps.mk".  Include file here.
2654         $(srcdir)/aclocal.m4: Add "configure.ac".
2655         * gnulib/aclocal-m4-deps.mk: New file.
2656         * gnulib/update-gnulib.sh: Automatically update
2657         "aclocal-m4-deps.mk".
2658
2659 2018-09-04  Tom Tromey  <tom@tromey.com>
2660
2661         * configure: Rebuild.
2662         * configure.ac: Remove multi-ice code.
2663
2664 2018-09-04  Tom Tromey  <tom@tromey.com>
2665
2666         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2667         (ada-exp.o): Update.
2668
2669 2018-09-04  Tom Tromey  <tom@tromey.com>
2670
2671         * Makefile.in (printcmd.o, target-float.o): Remove.
2672         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2673
2674 2018-09-04  Tom Tromey  <tom@tromey.com>
2675
2676         * gnulib/Makefile.in: Remove obsolete comment.
2677         * Makefile.in: Remove obsolete comment.
2678
2679 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2680
2681         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2682         line with '+'.
2683
2684 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2685
2686         * riscv-tdep.c: Add 'prologue-value.h' include.
2687         (struct riscv_unwind_cache): New struct.
2688         (riscv_debug_unwinder): New global.
2689         (riscv_scan_prologue): Update arguments, capture register details
2690         from prologue scan.
2691         (riscv_skip_prologue): Reformat arguments line, move end of
2692         prologue calculation into riscv_scan_prologue.
2693         (riscv_frame_cache): Update return type, create
2694         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2695         details.
2696         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2697         (riscv_frame_prev_register): Use the trad_frame within the
2698         riscv_unwind_cache.
2699         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2700         flag.
2701
2702 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2703
2704         * trad-frame.h (trad_frame_set_realreg): Declare.
2705         (trad_frame_set_addr): Declare.
2706         * trad-frame.c (trad_frame_set_realreg): Define new function.
2707         (trad_frame_set_addr): Define new function.
2708         (trad_frame_set_reg_realreg): Use new function.
2709         (trad_frame_set_reg_addr): Use new function.
2710
2711 2018-09-01  Keith Seitz  <keiths@redhat.com>
2712
2713         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2714         pulongest instead of "%lld".
2715         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2716         ATTRIBUTE_UNUSED.
2717
2718 2018-08-31  Tom Tromey  <tom@tromey.com>
2719
2720         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2721         variant part type.
2722
2723 2018-08-31  Pedro Alves  <palves@redhat.com>
2724
2725         * gdbarch.h: Regenerate.
2726
2727 2018-08-31  Pedro Alves  <palves@redhat.com>
2728
2729         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2730         * target.h (Hardware watchpoint interfaces): Describe
2731         continuable/steppable/non-steppable watchpoints.
2732         * gdbarch.h, gdbarch.c: Regenerate.
2733
2734 2018-08-31  Pedro Alves  <palves@redhat.com>
2735
2736         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2737         Delete.
2738         * s390-linux-nat.c
2739         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2740         * target.h (target_ops::have_continuable_watchpoint): Delete.
2741         (target_have_continuable_watchpoint): Delete.
2742         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2743         * target-delegates.c: Regenerate.
2744
2745 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2746
2747         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2748         the files present in "gnulib/import/m4/".
2749
2750 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2751
2752         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2753         c.sw, c.swsp, and c.sdsp.
2754
2755 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2756
2757         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2758         (riscv_read_misa_reg): Don't cache value read into inferior data.
2759         (riscv_new_inferior_data): Delete.
2760         (riscv_inferior_data_cleanup): Delete.
2761         (riscv_inferior_data): Delete.
2762         (riscv_invalidate_inferior_data): Delete.
2763         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2764
2765 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2766
2767         * compile/compile-cplus-types.c
2768         (compile_cplus_instance::leave_scope): Take the address of scope
2769         object.
2770         (compile_cplus_instance::convert_qualified_base): Compare quals
2771         to 0.
2772
2773 2018-08-30  Keith Seitz  <keiths@redhat.com>
2774
2775         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2776         Use "%s" and host_address_to_string instead of "%p" in printf.
2777
2778 2018-08-29  Keith Seitz  <keiths@redhat.com>
2779
2780         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2781         and compile-cplus-types.c.
2782         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2783         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2784         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2785         Declare.
2786         * compile/compile-c-support.c: Include compile-cplus.h.
2787         (load_libcompile): Templatize.
2788         (get_compile_context): "New" function.
2789         (c_get_compile_context): Use get_compile_context.
2790         (cplus_get_compile_context): New function.
2791         (cplus_push_user_expression, cplus_pop_user_expression)
2792         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2793         (cplus_compute_program): Define new structs/functions.
2794         * compile/compile-cplus-symmbols.c: New file.
2795         * compile/compile-cplus-types.c: New file.
2796         * compile/compile-cplus.h: New file.
2797         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2798         Declare.
2799         * compile/compile-object-load.c (get_out_value_type): Use
2800         strncmp_iw when comparing symbol names.
2801         (compile_object_load): Add mst_bss and mst_data.
2802         * compile/compile.c (_initialize_compile): Remove
2803         -Wno-implicit-function-declaration from `compile_args'.
2804         * compile/gcc-cp-plugin.h: New file.
2805         * NEWS: Mention C++ compile support and new debug options.
2806
2807 2018-08-29  Keith Seitz  <keiths@redhat.com>
2808
2809         * linespec.c (collect_info::add_symbol): Make virtual.
2810         (struct symbol_searcher_collect_info): New struct.
2811         (symbol_searcher::find_all_symbols): New method.
2812         * symtab.h (class symbol_searcher): New class.
2813
2814 2018-08-29  Keith Seitz  <keiths@redhat.com>
2815
2816         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2817         Change to vector of block_symbol.  Update all users.
2818         (struct collect_info) <symbols>: Likewise.
2819         (collect_info::add_symbol): Take block_symbol as argument.
2820         Update all callers.
2821         (decode_compound_collector) <m_symbols>: Change type to vector
2822         of block_symbol.  Update all users.
2823         (decode_compound_collector::operator ()): Change parameter type
2824         to block_symbol.
2825         (find_method, find_function_symbols, find_linespec_symbols)
2826         (find_label_symbols_in_block, find_label_symbols): Change symbol
2827         vectors to block_symbol vectors.
2828         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2829         block_symbol.
2830
2831 2018-08-29  Keith Seitz  <keiths@redhat.com>
2832
2833         * linespec.c (symbolp): Remove typedef and VEC definitions.
2834         (bound_minimal_symbol_d): Likewise.
2835
2836 2018-08-29  Keith Seitz  <keiths@redhat.com>
2837
2838         * linespec.c (decode_compound_collector::decode_compound_collector):
2839         Remove initialization for `m_symtabs'.
2840         (decode_compound_collector::release_symbols): Change return type
2841         to std::vector.  Update all callers.
2842         (class decode_compound_collector) <m_symbols>: Change type to
2843         std::vector.
2844         (lookup_prefix_sym): Change return type to std::vector.  Update all
2845         callers.
2846         (compare_symbols): Remove.
2847         (std_compare_symbols): Rename to `compare_symbols'.
2848         (find_method): Change `sym_classes' parameter to std::vector.
2849         Update all callers.  Use std::sort to sort sym_classes.
2850         (find_linespec_symbols): Remove cleanup.
2851
2852 2018-08-29  Keith Seitz  <keiths@redhat.com>
2853
2854         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2855         std::vector.  Update all users.
2856         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2857         (struct collect_info) <minimal_symbols>: Likewise.
2858         (compare_msymbols): Return bool.  Change parameters to const
2859         bound_minimal_symbol references.
2860         (find_method, find_function_symbols, find_linespec_symbols): Change
2861         `minsyms' parameter to std::vector.  Update all callers.
2862
2863 2018-08-29  Keith Seitz  <keiths@redhat.com>
2864
2865         * linespec.c (struct linespec) <label_symbols>: Change type to
2866         std::vector.  Update all users.
2867         (find_label_symbols_in_block): Change `result' parameter to
2868         std::vector.  Update all callers.
2869         (find_label_symbols): Return std::vector.  Update all callers.
2870
2871 2018-08-29  Keith Seitz  <keiths@redhat.com>
2872
2873         * linespec.c (struct linespec) <function_symbols>: Change type to
2874         std::vector.  Update all users.
2875         (struct collect_info) <function_symbols>: Likewise.
2876         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2877         (std_compare_symbols): New function.
2878         (find_method, find_function_symbols, find_linespec_symbols)
2879         (find_label_symbols_in_block): Change `symbols' parameter to
2880         std::vector.  Update all callers.
2881         (find_label_symbols): Likewise for `function_symbols' and
2882         `label_funcs_ret'.
2883
2884 2018-08-29  Keith Seitz  <keiths@redhat.com>
2885
2886         * linespec.c (symtab_vector_up): Define.
2887         (struct linespec) <file_symtabs>: Change type to std::vector *.
2888         Update all uses.
2889         (struct collect_info) <file_symtabs>: Likewise.
2890         (collect_symtabs_from_filename): Return symtab_vector_up.
2891         Update all callers.
2892         (decode_objc): Remove cleanup.
2893         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2894         (symtab_collector::release_symtabs): Return symtab_vector_up.
2895         Update all callers.
2896         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2897         Update all users.
2898         (collect_symtabs_from_filename, symtabs_from_filename): Return
2899         symtab_vector_up.  Update all callers.
2900
2901 2018-08-29  Tom Tromey  <tom@tromey.com>
2902
2903         * csky-tdep.c (csky_analyze_prologue): Use
2904         core_addr_to_string_nz.
2905
2906 2018-08-29  Tom Tromey  <tom@tromey.com>
2907
2908         * windows-nat.c (struct xlate_exception) <them>: Change type to
2909         DWORD.
2910         (xlate): Fix formatting.  Remove last entry.
2911         (struct xlate_exception, xlate): Comment out.
2912         (windows_nat_target::resume): Use ranged for.
2913
2914 2018-08-29  Jim Wilson  <jimw@sifive.com>
2915
2916         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2917         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2918         of NT_PRFPREG.
2919         (riscv_linux_nat_target::store_registers): Likewise.
2920
2921 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2922
2923         PR gdb/23555
2924         PR gdb/23558
2925         * gnulib/aclocal.m4: Regenerate.
2926         * gnulib/config.in: Regenerate.
2927         * gnulib/configure: Regenerate.
2928         * gnulib/import/Makefile.am: Update.
2929         * gnulib/import/Makefile.in: Update.
2930         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2931         * gnulib/import/_Noreturn.h: ... this.
2932         * gnulib/import/alloca.in.h: Update.
2933         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2934         * gnulib/import/arg-nonnull.h: ... this.
2935         * gnulib/import/assure.h: Update.
2936         * gnulib/import/at-func.c: Update.
2937         * gnulib/import/basename-lgpl.c: Update.
2938         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2939         * gnulib/import/c++defs.h: ... this.
2940         * gnulib/import/canonicalize-lgpl.c: Update.
2941         * gnulib/import/cdefs.h: Update.
2942         * gnulib/import/chdir-long.c: Update.
2943         * gnulib/import/chdir-long.h: Update.
2944         * gnulib/import/cloexec.c: Update.
2945         * gnulib/import/cloexec.h: Update.
2946         * gnulib/import/close.c: Update.
2947         * gnulib/import/closedir.c: Update.
2948         * gnulib/import/config.charset: Update.
2949         * gnulib/import/dirent-private.h: Update.
2950         * gnulib/import/dirent.in.h: Update.
2951         * gnulib/import/dirfd.c: Update.
2952         * gnulib/import/dirname-lgpl.c: Update.
2953         * gnulib/import/dirname.h: Update.
2954         * gnulib/import/dosname.h: Update.
2955         * gnulib/import/dup-safer-flag.c: Update.
2956         * gnulib/import/dup-safer.c: Update.
2957         * gnulib/import/dup.c: Update.
2958         * gnulib/import/dup2.c: Update.
2959         * gnulib/import/errno.in.h: Update.
2960         * gnulib/import/error.c: Update.
2961         * gnulib/import/error.h: Update.
2962         * gnulib/import/exitfail.c: Update.
2963         * gnulib/import/exitfail.h: Update.
2964         * gnulib/import/extra/update-copyright: Update.
2965         * gnulib/import/fchdir.c: Update.
2966         * gnulib/import/fcntl.c: Update.
2967         * gnulib/import/fcntl.in.h: Update.
2968         * gnulib/import/fd-hook.c: Update.
2969         * gnulib/import/fd-hook.h: Update.
2970         * gnulib/import/fd-safer-flag.c: Update.
2971         * gnulib/import/fd-safer.c: Update.
2972         * gnulib/import/fdopendir.c: Update.
2973         * gnulib/import/filename.h: Update.
2974         * gnulib/import/filenamecat-lgpl.c: Update.
2975         * gnulib/import/filenamecat.h: Update.
2976         * gnulib/import/flexmember.h: Update.
2977         * gnulib/import/float+.h: Update.
2978         * gnulib/import/float.c: Update.
2979         * gnulib/import/float.in.h: Update.
2980         * gnulib/import/fnmatch.c: Update.
2981         * gnulib/import/fnmatch.in.h: Update.
2982         * gnulib/import/fnmatch_loop.c: Update.
2983         * gnulib/import/fpucw.h: Update.
2984         * gnulib/import/frexp.c: Update.
2985         * gnulib/import/frexpl.c: Update.
2986         * gnulib/import/fstat.c: Update.
2987         * gnulib/import/fstatat.c: Update.
2988         * gnulib/import/getcwd-lgpl.c: Update.
2989         * gnulib/import/getcwd.c: Update.
2990         * gnulib/import/getdtablesize.c: Update.
2991         * gnulib/import/getlogin_r.c: Update.
2992         * gnulib/import/getprogname.c: Update.
2993         * gnulib/import/getprogname.h: Update.
2994         * gnulib/import/gettext.h: Update.
2995         * gnulib/import/gettimeofday.c: Update.
2996         * gnulib/import/glob-libc.h: Update.
2997         * gnulib/import/glob.c: Update.
2998         * gnulib/import/glob.in.h: Update.
2999         * gnulib/import/glob_internal.h: Update.
3000         * gnulib/import/glob_pattern_p.c: Update.
3001         * gnulib/import/globfree.c: Update.
3002         * gnulib/import/hard-locale.c: Update.
3003         * gnulib/import/hard-locale.h: Update.
3004         * gnulib/import/intprops.h: Update.
3005         * gnulib/import/inttypes.in.h: Update.
3006         * gnulib/import/isnan.c: Update.
3007         * gnulib/import/isnand-nolibm.h: Update.
3008         * gnulib/import/isnand.c: Update.
3009         * gnulib/import/isnanl-nolibm.h: Update.
3010         * gnulib/import/isnanl.c: Update.
3011         * gnulib/import/itold.c: Update.
3012         * gnulib/import/libc-config.h: Update.
3013         * gnulib/import/limits.in.h: Update.
3014         * gnulib/import/localcharset.c: Update.
3015         * gnulib/import/localcharset.h: Update.
3016         * gnulib/import/localtime-buffer.c: Update.
3017         * gnulib/import/localtime-buffer.h: Update.
3018         * gnulib/import/lstat.c: Update.
3019         * gnulib/import/m4/00gnulib.m4: Update.
3020         * gnulib/import/m4/__inline.m4: Update.
3021         * gnulib/import/m4/absolute-header.m4: Update.
3022         * gnulib/import/m4/alloca.m4: Update.
3023         * gnulib/import/m4/builtin-expect.m4: Update.
3024         * gnulib/import/m4/canonicalize.m4: Update.
3025         * gnulib/import/m4/chdir-long.m4: Update.
3026         * gnulib/import/m4/close.m4: Update.
3027         * gnulib/import/m4/closedir.m4: Update.
3028         * gnulib/import/m4/configmake.m4: Update.
3029         * gnulib/import/m4/d-ino.m4: Update.
3030         * gnulib/import/m4/d-type.m4: Update.
3031         * gnulib/import/m4/dirent_h.m4: Update.
3032         * gnulib/import/m4/dirfd.m4: Update.
3033         * gnulib/import/m4/dirname.m4: Update.
3034         * gnulib/import/m4/double-slash-root.m4: Update.
3035         * gnulib/import/m4/dup.m4: Update.
3036         * gnulib/import/m4/dup2.m4: Update.
3037         * gnulib/import/m4/eealloc.m4: Update.
3038         * gnulib/import/m4/environ.m4: Update.
3039         * gnulib/import/m4/errno_h.m4: Update.
3040         * gnulib/import/m4/error.m4: Update.
3041         * gnulib/import/m4/exponentd.m4: Update.
3042         * gnulib/import/m4/exponentl.m4: Update.
3043         * gnulib/import/m4/extensions.m4: Update.
3044         * gnulib/import/m4/extern-inline.m4: Update.
3045         * gnulib/import/m4/fchdir.m4: Update.
3046         * gnulib/import/m4/fcntl-o.m4: Update.
3047         * gnulib/import/m4/fcntl.m4: Update.
3048         * gnulib/import/m4/fcntl_h.m4: Update.
3049         * gnulib/import/m4/fdopendir.m4: Update.
3050         * gnulib/import/m4/filenamecat.m4: Update.
3051         * gnulib/import/m4/flexmember.m4: Update.
3052         * gnulib/import/m4/float_h.m4: Update.
3053         * gnulib/import/m4/fnmatch.m4: Update.
3054         * gnulib/import/m4/fnmatch_h.m4: Update.
3055         * gnulib/import/m4/fpieee.m4: Update.
3056         * gnulib/import/m4/frexp.m4: Update.
3057         * gnulib/import/m4/frexpl.m4: Update.
3058         * gnulib/import/m4/fstat.m4: Update.
3059         * gnulib/import/m4/fstatat.m4: Update.
3060         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3061         * gnulib/import/m4/getcwd-path-max.m4: Update.
3062         * gnulib/import/m4/getcwd.m4: Update.
3063         * gnulib/import/m4/getdtablesize.m4: Update.
3064         * gnulib/import/m4/getlogin.m4: Update.
3065         * gnulib/import/m4/getlogin_r.m4: Update.
3066         * gnulib/import/m4/getpagesize.m4: Update.
3067         * gnulib/import/m4/getprogname.m4: Update.
3068         * gnulib/import/m4/gettimeofday.m4: Update.
3069         * gnulib/import/m4/glibc21.m4: Update.
3070         * gnulib/import/m4/glob.m4: Update.
3071         * gnulib/import/m4/glob_h.m4: Update.
3072         * gnulib/import/m4/gnulib-cache.m4: Update.
3073         * gnulib/import/m4/gnulib-common.m4: Update.
3074         * gnulib/import/m4/gnulib-comp.m4: Update.
3075         * gnulib/import/m4/gnulib-tool.m4: Update.
3076         * gnulib/import/m4/hard-locale.m4: Update.
3077         * gnulib/import/m4/include_next.m4: Update.
3078         * gnulib/import/m4/inttypes-pri.m4: Update.
3079         * gnulib/import/m4/inttypes.m4: Update.
3080         * gnulib/import/m4/isnand.m4: Update.
3081         * gnulib/import/m4/isnanl.m4: Update.
3082         * gnulib/import/m4/largefile.m4: Update.
3083         * gnulib/import/m4/limits-h.m4: Update.
3084         * gnulib/import/m4/localcharset.m4: Update.
3085         * gnulib/import/m4/locale-fr.m4: Update.
3086         * gnulib/import/m4/locale-ja.m4: Update.
3087         * gnulib/import/m4/locale-zh.m4: Update.
3088         * gnulib/import/m4/localtime-buffer.m4: Update.
3089         * gnulib/import/m4/longlong.m4: Update.
3090         * gnulib/import/m4/lstat.m4: Update.
3091         * gnulib/import/m4/malloc.m4: Update.
3092         * gnulib/import/m4/malloca.m4: Update.
3093         * gnulib/import/m4/math_h.m4: Update.
3094         * gnulib/import/m4/mbrtowc.m4: Update.
3095         * gnulib/import/m4/mbsinit.m4: Update.
3096         * gnulib/import/m4/mbsrtowcs.m4: Update.
3097         * gnulib/import/m4/mbstate_t.m4: Update.
3098         * gnulib/import/m4/memchr.m4: Update.
3099         * gnulib/import/m4/memmem.m4: Update.
3100         * gnulib/import/m4/mempcpy.m4: Update.
3101         * gnulib/import/m4/memrchr.m4: Update.
3102         * gnulib/import/m4/mkdir.m4: Update.
3103         * gnulib/import/m4/mkstemp.m4: Update.
3104         * gnulib/import/m4/mmap-anon.m4: Update.
3105         * gnulib/import/m4/mode_t.m4: Update.
3106         * gnulib/import/m4/msvc-inval.m4: Update.
3107         * gnulib/import/m4/msvc-nothrow.m4: Update.
3108         * gnulib/import/m4/multiarch.m4: Update.
3109         * gnulib/import/m4/nocrash.m4: Update.
3110         * gnulib/import/m4/off_t.m4: Update.
3111         * gnulib/import/m4/onceonly.m4: Update.
3112         * gnulib/import/m4/open-cloexec.m4: Update.
3113         * gnulib/import/m4/open.m4: Update.
3114         * gnulib/import/m4/openat.m4: Update.
3115         * gnulib/import/m4/opendir.m4: Update.
3116         * gnulib/import/m4/pathmax.m4: Update.
3117         * gnulib/import/m4/rawmemchr.m4: Update.
3118         * gnulib/import/m4/readdir.m4: Update.
3119         * gnulib/import/m4/readlink.m4: Update.
3120         * gnulib/import/m4/realloc.m4: Update.
3121         * gnulib/import/m4/rename.m4: Update.
3122         * gnulib/import/m4/rewinddir.m4: Update.
3123         * gnulib/import/m4/rmdir.m4: Update.
3124         * gnulib/import/m4/save-cwd.m4: Update.
3125         * gnulib/import/m4/secure_getenv.m4: Update.
3126         * gnulib/import/m4/setenv.m4: Update.
3127         * gnulib/import/m4/signal_h.m4: Update.
3128         * gnulib/import/m4/ssize_t.m4: Update.
3129         * gnulib/import/m4/stat-time.m4: Update.
3130         * gnulib/import/m4/stat.m4: Update.
3131         * gnulib/import/m4/std-gnu11.m4: Update.
3132         * gnulib/import/m4/stdbool.m4: Update.
3133         * gnulib/import/m4/stddef_h.m4: Update.
3134         * gnulib/import/m4/stdint.m4: Update.
3135         * gnulib/import/m4/stdio_h.m4: Update.
3136         * gnulib/import/m4/stdlib_h.m4: Update.
3137         * gnulib/import/m4/strchrnul.m4: Update.
3138         * gnulib/import/m4/strdup.m4: Update.
3139         * gnulib/import/m4/strerror.m4: Update.
3140         * gnulib/import/m4/string_h.m4: Update.
3141         * gnulib/import/m4/strstr.m4: Update.
3142         * gnulib/import/m4/strtok_r.m4: Update.
3143         * gnulib/import/m4/sys_socket_h.m4: Update.
3144         * gnulib/import/m4/sys_stat_h.m4: Update.
3145         * gnulib/import/m4/sys_time_h.m4: Update.
3146         * gnulib/import/m4/sys_types_h.m4: Update.
3147         * gnulib/import/m4/tempname.m4: Update.
3148         * gnulib/import/m4/time_h.m4: Update.
3149         * gnulib/import/m4/unistd-safer.m4: Update.
3150         * gnulib/import/m4/unistd_h.m4: Update.
3151         * gnulib/import/m4/warn-on-use.m4: Update.
3152         * gnulib/import/m4/wchar_h.m4: Update.
3153         * gnulib/import/m4/wchar_t.m4: Update.
3154         * gnulib/import/m4/wctype_h.m4: Update.
3155         * gnulib/import/m4/wint_t.m4: Update.
3156         * gnulib/import/malloc.c: Update.
3157         * gnulib/import/malloc/scratch_buffer.h: Update.
3158         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3159         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3160         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3161         * gnulib/import/malloca.c: Update.
3162         * gnulib/import/malloca.h: Update.
3163         * gnulib/import/malloca.valgrind: Update.
3164         * gnulib/import/math.in.h: Update.
3165         * gnulib/import/mbrtowc.c: Update.
3166         * gnulib/import/mbsinit.c: Update.
3167         * gnulib/import/mbsrtowcs-impl.h: Update.
3168         * gnulib/import/mbsrtowcs-state.c: Update.
3169         * gnulib/import/mbsrtowcs.c: Update.
3170         * gnulib/import/memchr.c: Update.
3171         * gnulib/import/memmem.c: Update.
3172         * gnulib/import/mempcpy.c: Update.
3173         * gnulib/import/memrchr.c: Update.
3174         * gnulib/import/mkdir.c: Update.
3175         * gnulib/import/mkstemp.c: Update.
3176         * gnulib/import/msvc-inval.c: Update.
3177         * gnulib/import/msvc-inval.h: Update.
3178         * gnulib/import/msvc-nothrow.c: Update.
3179         * gnulib/import/msvc-nothrow.h: Update.
3180         * gnulib/import/open.c: Update.
3181         * gnulib/import/openat-die.c: Update.
3182         * gnulib/import/openat-priv.h: Update.
3183         * gnulib/import/openat-proc.c: Update.
3184         * gnulib/import/openat.c: Update.
3185         * gnulib/import/openat.h: Update.
3186         * gnulib/import/opendir.c: Update.
3187         * gnulib/import/pathmax.h: Update.
3188         * gnulib/import/pipe-safer.c: Update.
3189         * gnulib/import/rawmemchr.c: Update.
3190         * gnulib/import/readdir.c: Update.
3191         * gnulib/import/readlink.c: Update.
3192         * gnulib/import/realloc.c: Update.
3193         * gnulib/import/ref-add.sin: Update.
3194         * gnulib/import/ref-del.sin: Update.
3195         * gnulib/import/rename.c: Update.
3196         * gnulib/import/rewinddir.c: Update.
3197         * gnulib/import/rmdir.c: Update.
3198         * gnulib/import/same-inode.h: Update.
3199         * gnulib/import/save-cwd.c: Update.
3200         * gnulib/import/save-cwd.h: Update.
3201         * gnulib/import/scratch_buffer.h: Update.
3202         * gnulib/import/secure_getenv.c: Update.
3203         * gnulib/import/setenv.c: Update.
3204         * gnulib/import/signal.in.h: Update.
3205         * gnulib/import/stat-time.c: Update.
3206         * gnulib/import/stat-time.h: Update.
3207         * gnulib/import/stat-w32.c: Update.
3208         * gnulib/import/stat-w32.h: Update.
3209         * gnulib/import/stat.c: Update.
3210         * gnulib/import/stdbool.in.h: Update.
3211         * gnulib/import/stddef.in.h: Update.
3212         * gnulib/import/stdint.in.h: Update.
3213         * gnulib/import/stdio.in.h: Update.
3214         * gnulib/import/stdlib.in.h: Update.
3215         * gnulib/import/str-two-way.h: Update.
3216         * gnulib/import/strchrnul.c: Update.
3217         * gnulib/import/strdup.c: Update.
3218         * gnulib/import/streq.h: Update.
3219         * gnulib/import/strerror-override.c: Update.
3220         * gnulib/import/strerror-override.h: Update.
3221         * gnulib/import/strerror.c: Update.
3222         * gnulib/import/string.in.h: Update.
3223         * gnulib/import/stripslash.c: Update.
3224         * gnulib/import/strnlen1.c: Update.
3225         * gnulib/import/strnlen1.h: Update.
3226         * gnulib/import/strstr.c: Update.
3227         * gnulib/import/strtok_r.c: Update.
3228         * gnulib/import/sys_stat.in.h: Update.
3229         * gnulib/import/sys_time.in.h: Update.
3230         * gnulib/import/sys_types.in.h: Update.
3231         * gnulib/import/tempname.c: Update.
3232         * gnulib/import/tempname.h: Update.
3233         * gnulib/import/time.in.h: Update.
3234         * gnulib/import/unistd--.h: Update.
3235         * gnulib/import/unistd-safer.h: Update.
3236         * gnulib/import/unistd.in.h: Update.
3237         * gnulib/import/unsetenv.c: Update.
3238         * gnulib/import/verify.h: Update.
3239         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3240         * gnulib/import/wchar.in.h: Update.
3241         * gnulib/import/wctype.in.h: Update.
3242         * gnulib/import/xalloc-oversized.h: Update.
3243         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3244         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3245
3246 2018-08-16  Gary Benson <gbenson@redhat.com>
3247
3248         PR gdb/13000:
3249         * gdb/main.c (captured_main_1): Exit with nonzero status
3250         in batch mode if the last command to be executed failed.
3251         * NEWS: Mention the above.
3252
3253 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3254
3255         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3256         end of warning message.
3257
3258 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3259
3260         PR gdb/22943:
3261         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3262         (aarch64_extract_return_value): Use
3263         aapcs_is_vfp_call_or_return_candidate.
3264         (aarch64_return_in_memory): Likewise.
3265         (aarch64_store_return_value): Likewise.
3266
3267 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3268
3269         * aarch64-tdep.c
3270         (aapcs_is_vfp_call_or_return_candidate): Make static
3271         (pass_in_v_or_stack): Remove function.
3272         (pass_in_v_vfp_candidate): New function.
3273         (aarch64_push_dummy_call): Check for float register candidates.
3274
3275 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3276
3277         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3278         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3279         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3280
3281 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3282
3283         PR build/23399
3284         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3285         (struct ipa_sym_addresses): Rename to...
3286         (struct ipa_sym_addresses_common): ... this.
3287         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3288
3289 2018-08-28  Tom Tromey  <tom@tromey.com>
3290
3291         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3292         (token_fifo): Now a std::vector.
3293         (yylex, c_parse): Update.
3294         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3295         (token_fifo): Now a std::vector.
3296         (yylex, d_parse): Update.
3297         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3298         (token_fifo): Now a std::vector.
3299         (yylex, go_parse): Update.
3300
3301 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3302
3303         * parser-defs.h (struct type_stack) <elements>: Change type to
3304         std::vector<union type_stack_elt>.
3305         <depth, size>: Remove.
3306         * parse.c (parse_exp_in_context_1): Adjust.
3307         (type_stack_reserve): Remove.
3308         (check_type_stack_depth): Remove.
3309         (insert_into_type_stack): Adjust to std::vector.
3310         (insert_type): Likewise.
3311         (push_type): Likewise.
3312         (push_type_int): Likewise.
3313         (insert_type_address_space): Likewise.
3314         (pop_type): Likewise.
3315         (pop_type_int): Likewise.
3316         (pop_typelist): Likewise.
3317         (pop_type_stack): Likewise.
3318         (append_type_stack): Likewise.
3319         (push_type_stack): Likewise.
3320         (get_type_stack): Likewise.
3321         (type_stack_cleanup): Likewise.
3322         (push_typelist): Likewise.
3323         (follow_types): Likewise.
3324         (_initialize_parse): Likewise.
3325
3326 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3327
3328         * NEWS: Mention csky target.
3329
3330 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3331             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3332             Don Breazeal  <donb@codesourcery.com>
3333
3334         * csky-linux-tdep.c: New file.
3335         * csky-tdep.c: Likewise.
3336         * csky-tdep.h: Likewise.
3337         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3338         csky-tdep.o.
3339         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3340         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3341         * configure.tgt: Add csky support.
3342
3343 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3344
3345         * python/py-framefilter.c (py_print_frame): Print frame architecture
3346         when printing on an MI output.
3347
3348 2018-08-27  Tom Tromey  <tom@tromey.com>
3349
3350         PR build/23087:
3351         * configure: Rebuild.
3352         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3353
3354 2018-08-27  Tom Tromey  <tom@tromey.com>
3355
3356         * aarch64-linux-tdep.c
3357         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3358         casts to int.
3359
3360 2018-08-27  Tom Tromey  <tom@tromey.com>
3361
3362         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3363         unsigned.
3364         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3365         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3366         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3367         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3368         unsigned.
3369
3370 2018-08-27  Tom Tromey  <tom@tromey.com>
3371
3372         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3373         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3374
3375 2018-08-27  Tom Tromey  <tom@tromey.com>
3376
3377         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3378         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3379         ULONGEST_MAX.
3380         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3381         ULONGEST_MAX.
3382         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3383         ULONGEST_MAX.
3384         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3385         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3386         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3387         ULONGEST_MAX.
3388         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3389         (ppc64_linux_sigaction_tramp_frame)
3390         (ppc32_linux_sighandler_tramp_frame)
3391         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3392         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3393         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3394         * mn10300-linux-tdep.c (am33_linux_sigframe)
3395         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3396         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3397         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3398         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3399         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3400         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3401         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3402         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3403         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3404         * microblaze-linux-tdep.c
3405         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3406         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3407         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3408         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3409         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3410         * common/common-types.h (ULONGEST_MAX): New define.
3411         (CORE_ADDR_MAX): Fix formatting.
3412         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3413         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3414         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3415         (arm_linux_rt_sigreturn_tramp_frame)
3416         (arm_eabi_linux_sigreturn_tramp_frame)
3417         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3418         (thumb2_eabi_linux_sigreturn_tramp_frame)
3419         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3420         (arm_linux_restart_syscall_tramp_frame)
3421         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3422         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3423         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3424         ULONGEST_MAX.
3425         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3426
3427 2018-08-27  Tom Tromey  <tom@tromey.com>
3428
3429         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3430         CORE_ADDR_MAX.
3431         * mips-tdep.c (mips_deal_with_atomic_sequence)
3432         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3433         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3434         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3435         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3436         CORE_ADDR_MAX.
3437         * aarch64-tdep.c (aarch64_software_single_step): Use
3438         CORE_ADDR_MAX.
3439
3440 2018-08-27  Tom Tromey  <tom@tromey.com>
3441
3442         * linespec.c (complete_linespec_component): Add cast to "char".
3443         * completer.c (completion_tracker::build_completion_result): Add
3444         cast to "char".
3445
3446 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3447
3448         * solist.h (struct solist, struct target_so_ops): Fix
3449         indentation.
3450
3451 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3452
3453         * ada-tasks.c (ada_task_info_s): Remove typedef.
3454         (DEF_VEC_O(ada_task_info_s)): Remove.
3455         (struct ada_tasks_inferior_data): Initialize fields.
3456         <task_list>: Make an std::vector.
3457         (get_ada_tasks_inferior_data): Allocate with new.
3458         (ada_get_task_number): Adjust.
3459         (get_task_number_from_id): Likewise.
3460         (valid_task_id): Likewise.
3461         (ada_get_task_info_from_ptid): Likewise.
3462         (iterate_over_live_ada_tasks): Likewise.
3463         (add_ada_task): Likewise.
3464         (read_known_tasks): Likewise.
3465         (ada_build_task_list): Likewise.
3466         (print_ada_task_info): Likewise.
3467         (info_task): Likewise.
3468         (task_command_1): Likewise.
3469
3470 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3471
3472         * ada-lang.c (add_angle_brackets): Return std::string.
3473
3474 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3475
3476         * python/py-threadevent.c (py_get_event_thread): Initialize
3477         pythread.
3478
3479 2018-08-24  Pedro Alves  <palves@redhat.com>
3480
3481         * python/py-bpevent.c (create_breakpoint_event_object): Use
3482         copy-initialization.
3483         * python/py-continueevent.c (emit_continue_event): Use
3484         copy-initialization.
3485         * python/py-exitedevent.c (create_exited_event_object): Return a
3486         gdbpy_ref<>.
3487         (emit_exited_event): Use copy-initialization.
3488         * python/py-inferior.c (python_new_inferior)
3489         (python_inferior_deleted, add_thread_object): Use
3490         copy-initialization.
3491         * python/py-infevents.c (create_inferior_call_event_object)
3492         (create_register_changed_event_object)
3493         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3494         (emit_inferior_call_event, emit_memory_changed_event)
3495         (emit_register_changed_event): Use copy-initialization.
3496         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3497         Return a gdbpy_ref<>.
3498         (emit_new_objfile_event): Use copy-initialization.
3499         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3500         (emit_clear_objfiles_event): Use copy-initialization.
3501         * python/py-signalevent.c (create_signal_event_object): Use
3502         copy-initialization.
3503         * python/py-threadevent.c (create_thread_event_object): Use
3504         copy-initialization.
3505
3506 2018-08-24  Pedro Alves  <palves@redhat.com>
3507             Simon Marchi  <simon.marchi@ericsson.com>
3508
3509         PR gdb/23379
3510         * python/py-continueevent.c: Include "gdbthread.h".
3511         (create_continue_event_object): Add intro comment.  Add 'ptid'
3512         parameter.  Use it to find thread to pass to
3513         create_thread_event_object.
3514         (emit_continue_event): Pass PTID down to
3515         create_continue_event_object.
3516         * python/py-event.h (py_get_event_thread): Declare.
3517         (create_thread_event_object): Remove default from 'thread'
3518         parameter.
3519         * python/py-stopevent.c (create_stop_event_object): Use
3520         py_get_event_thread.
3521         * python/py-threadevent.c (get_event_thread): Rename to ...
3522         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3523         and use it to find the thread.
3524         (create_thread_event_object): Assert that THREAD isn't null.
3525         Don't find the event thread here.
3526
3527 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3528
3529         * block.h (blockrange, blockranges): New struct declarations.
3530         (struct block): Add new field named `ranges'.
3531         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3532         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3533         macros for accessing ranges in struct block.
3534         (make_blockranges): New declaration.
3535         block.c (make_blockranges): New function.
3536         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3537         for block.
3538         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3539         * blockframe.c (cache_pc_function_block): New static global.
3540         (clear_pc_function_cache): Clear cache_pc_function_block.
3541         (find_pc_partial_function): Move comment to symtab.h.  Add
3542         support for non-contiguous blocks.
3543         * cli/cli-cmds.c (block.h): Include.
3544         (print_disassembly): Handle printing of non-contiguous blocks.
3545         (disassemble_current_function): Likewise.
3546         (disassemble_command): Likewise.
3547
3548         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3549         BLOCK_START.
3550         * blockframe.c (get_pc_function_start): Likewise.
3551         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3552         (gcc_symbol_address): Likewise.
3553         * compile/compile-object-run.c (compile_object_run): Likewise.
3554         * compile/compile.c (get_expr_block_and_pc): Likewise.
3555         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3556         (func_addr_to_tail_call_list): Likewise.
3557         * findvar.c (default_read_var_value): Likewise.
3558         * inline-frame.c (inline_frame_this_id): Likewise.
3559         (skip-inline_frames): Likewise.
3560         * infcmd.c (until_next_command): Likewise.
3561         * linespec.c (convert_linespec_to_sals): Likewise.
3562         * parse.c (parse_exp_in_context_1): Likewise.
3563         * printcmd.c (build_address_symbolic): likewise.
3564         (info_address_command): Likewise.
3565         symtab.c (find_function_start_sal): Likewise.
3566         (skip_prologue_sal): Likewise.
3567         (find_function_alias_target): Likewise.
3568         (find_gnu_ifunc): Likewise.
3569         * stack.c (find_frame_funname): Likewise.
3570         * symtab.c (fixup_symbol_section): Likewise.
3571         (find_function_start_sal): Likewise.
3572         (skip_prologue_sal): Likewsie.
3573         (find_function_alias_target): Likewise.
3574         (find_gnu_ifunc): Likewise.
3575         * tracepoint.c (info_scope_command): Likewise.
3576         * value.c (value_fn_field): Likewise.
3577
3578         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3579         in place of find_pc_partial_function.
3580         * blockframe.c (find_function_entry_range_from_pc): New function.
3581         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3582         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3583         for each range in a block.
3584
3585
3586 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3587
3588         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3589         incrementation.
3590
3591 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3592
3593         * solib-svr4.c (read_program_headers_from_bfd): Return
3594         gdb::optional<gdb::byte_vector>.
3595         (svr4_exec_displacement): Adjust.
3596
3597 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3598
3599         * solib-svr4.c (read_program_header): Return
3600         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3601         (find_program_interpreter): Return
3602         gdb::optional<gdb::byte_vector>.
3603         (scan_dyntag_auxv): Adjust.
3604         (enable_break): Adjust.
3605         (svr4_exec_displacement): Adjust.
3606
3607 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3608
3609         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3610         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3611
3612 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3613
3614         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3615         string_vprintf.
3616         * guile/scm-utils.c (gdbscm_printf): Likewise.
3617         * serial.c (serial_printf): Likewise.
3618         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3619
3620 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3621
3622         * stack.c (print_frame): Print frame architecture when printing on
3623         an MI output.
3624         * NEWS: Mention new "arch" attribute in frame output.
3625
3626 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3627
3628         * arch/aarch64.h (aarch64_regnum): Update comment.
3629
3630 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3631
3632         * NEWS: Add SVE to 8.2 section.
3633
3634 2018-08-21  Pedro Alves  <palves@redhat.com>
3635
3636         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3637         out from gdbscm_parse_function_args.
3638         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3639         gdbscm_parse_function_args_1.
3640
3641 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3642
3643         PR gdb/17816
3644         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3645         operator.
3646
3647 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3648
3649         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3650
3651 2018-08-19  Michael Spang  <spang@google.com>
3652
3653         PR gdb/11786
3654         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3655         for PT_TLS segments.
3656
3657 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3658
3659         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3660         dwarf_variable_value.
3661         * dwarf2-frame.c (class dwarf_expr_executor):
3662         Add override for dwarf_variable_value.
3663         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3664         (class symbol_needs_eval_context): Likewise.
3665         (indirect_synthetic_pointer): Add forward declaration.
3666         (sect_variable_value): New function.
3667         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3668         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3669         for DW_OP_GNU_variable_value.
3670
3671 2018-08-16  Tom Tromey  <tom@tromey.com>
3672
3673         * top.c (read_command_file): Update.
3674         (command_line_input): Remove "repeat" argument.
3675         * ada-lang.c (get_selections): Update.
3676         * linespec.c (decode_line_2): Update.
3677         * defs.h (command_line_input): Remove argument.
3678         * cli/cli-script.c (read_next_line): Update.
3679         * python/py-gdb-readline.c: Update.
3680
3681 2018-08-17  Tom Tromey  <tom@tromey.com>
3682
3683         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3684         command_line_input.
3685
3686 2018-08-15  Tom Tromey  <tom@tromey.com>
3687
3688         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3689
3690 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3691
3692         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3693         If used, use find_pc_partial_function to find address range
3694         to disassemble.
3695         * mi/mi-main.c (mi_cmd_list_features): Report
3696         "data-disassemble-a-option" feature.
3697         * NEWS: Mention new -data-disassemble option -a.
3698
3699 2018-08-13  Tom Tromey  <tom@tromey.com>
3700
3701         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3702
3703 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3704
3705         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3706         (aarch64_linux_collect_sve_regset): Likewise.
3707         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3708         * regcache.h (regcache_map_entry_size): New function.
3709
3710 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3711
3712         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3713         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3714         (SVE_HEADER_VL_LENGTH): Likewise.
3715         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3716         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3717         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3718         (SVE_HEADER_SIZE_OFFSET): Likewise.
3719         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3720         (SVE_HEADER_VL_OFFSET): Likewise.
3721         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3722         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3723         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3724         (SVE_HEADER_SIZE): Likewise.
3725         (aarch64_linux_core_read_vq): Add function.
3726         (aarch64_linux_core_read_description): Check for SVE section.
3727
3728 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3729
3730         * aarch64-fbsd-tdep.c
3731         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3732         collect_size.
3733         * aarch64-linux-tdep.c
3734         (aarch64_linux_iterate_over_regset_sections): Likewise.
3735         * alpha-linux-tdep.c
3736         (alpha_linux_iterate_over_regset_sections):
3737         * alpha-nbsd-tdep.c
3738         (alphanbsd_iterate_over_regset_sections): Likewise.
3739         * amd64-fbsd-tdep.c
3740         (amd64fbsd_iterate_over_regset_sections): Likewise.
3741         * amd64-linux-tdep.c
3742         (amd64_linux_iterate_over_regset_sections): Likewise.
3743         * arm-bsd-tdep.c
3744         (armbsd_iterate_over_regset_sections): Likewise.
3745         * arm-fbsd-tdep.c
3746         (arm_fbsd_iterate_over_regset_sections): Likewise.
3747         * arm-linux-tdep.c
3748         (arm_linux_iterate_over_regset_sections): Likewise.
3749         * corelow.c (get_core_registers_cb): Likewise.
3750         (core_target::fetch_registers): Likewise.
3751         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3752         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3753         * gdbarch.h (void): Regenerate.
3754         * gdbarch.sh: Add supply_size and collect_size.
3755         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3756         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3757         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3758         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3759         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3760         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3761         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3762         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3763         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3764         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3765         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3766         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3767         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3768         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3769         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3770         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3771         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3772         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3773         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3774         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3775         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3776         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3777         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3778         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3779         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3780         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3781         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3782         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3783         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3784         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3785
3786 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3787
3788         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3789         with string_printf.
3790
3791 2018-08-10  Keith Seitz  <keiths@redhat.com>
3792
3793         * compile/compile-c-support.c (add_code_header, add_code_footer):
3794         Move into policy class.
3795         (c_push_user_expression, pop_user_expression_nop)
3796         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3797         (compile_program): New host class.
3798         (c_compile_program): New typedef.
3799         (c_compute_porgram): Use c_compile_program.
3800
3801 2018-08-10  Keith Seitz  <keiths@redhat.com>
3802
3803         * compile/compile-internal.h (compile_instance::~compile_instance):
3804         Remove calls to htab_delete.
3805         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3806         * compile.c (compile_instance::compile_instance): Initialize
3807         htab unique pointers.
3808         (compile_instance::get_cached_type, compile_instance::insert_type)
3809         (compile_instance::error_symbol_once): Update for unique_ptr.
3810
3811 2018-08-10  Keith Seitz  <keiths@redhat.com>
3812
3813         * compile/compile-c-symbols.c (struct symbol_error)
3814         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3815         (compile_instance::insert_symbol_error)
3816         (compile_instance::error_symbol_once): Move to ...
3817         * compile/compile.c: ... here.
3818
3819 2018-08-10  Keith Seitz  <keiths@redhat.com>
3820
3821         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3822         instead of `new_compile_instance'.
3823         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3824         Update description.
3825         If the symbol error map is not initialized, create it.
3826         (generate_c_for_for_one_symbol): Do not check/initialize
3827         the symbol error map.
3828         * compile/compile-c-types.c (compile_c_instance): Make a class.
3829         Update all callers.
3830         (compile_instance::compile_instance): Initialize the type cache.
3831         (get_cached_type): New function.
3832         (insert_type): Update description.
3833         (compile_c_instance::m_default_cflags): Define.
3834         (convert_type): Update description.  Use get_cached_type.
3835         (delete_instance): Moved to destructor.
3836         (new_compile_instance): Moved to constructor.
3837         * compile/compile-c.h (compile_c_instance): Make class inheriting
3838         from compile_instance.
3839         <base>: Remove field.
3840         <type_map, symbol_err_map>: Move to base class.
3841         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3842         * compile/compile-internal.h (compile_instance): Make class.
3843         <type_map_t, symbol_err_map_t>: Define.
3844         <fe>: Rename to `m_gcc_fe'.
3845         <scope, block, gcc_target_options>: Add `m_' prefix.
3846         <m_type_map, m_symbol_err_map>: New fields, moved from
3847         compile_c_instance.
3848         <destroy>: Remove.
3849         (convert_type, new_compile_instance): Remove.
3850         * compile/compile.c (cleanup_compile_instance): Remove.
3851         (compile_to_object): Use unique_ptr to eliminate cleanups.
3852         (compile_instance::set_print_callback, compile_instance::version)
3853         (compile_instance::set_verbose)
3854         (compile_instance::set_driver_filename)
3855         (compile_instance::set_triplet_regexp)
3856         (compile_instance::set_arguments)
3857         (compile_instance::set_source_file)
3858         (compile_instance::compile): Define.
3859
3860 2018-08-10  Keith Seitz  <keiths@redhat.com>
3861
3862         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3863         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3864         gcc-c-fe.def to define C plugin.
3865         (delete_instance): Delete `c_plugin'.
3866         (new_compile_instance): Initialize `c_plugin'.
3867         * compile/compile-c.h: Include gcc_c_plugin.h.
3868         (struct compile_c_instance) <c_plugin>: New member.
3869         * gcc-c-plugin.h: New file.
3870         Update all callers with API change.
3871
3872 2018-08-10  Keith Seitz  <keiths@redhat.com>
3873
3874         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3875         (HFILES_NO_SRCDIR): ... to here.
3876         Add compile-internal.h and compile-c.h.
3877         * compile/compile-c-support.c: Include compile-c.h.
3878         * compile/compile-c-symbols.c: Include compile-c.h.
3879         (generate_c_for_variable_locations): Update comment.
3880         * compile/compile-c-types.c: Include compile-c.h.
3881         * compile/compile-c.h: New file -- moved C language declarations
3882         from other files here.
3883         * compile/compile-internal.h: Do not include hashtab.h or
3884         common/enum-flags.h.
3885         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3886         (gcc_convert_symbol, gcc_symbol_address)
3887         (generate_c_for_variable_locations, c_get_mode_for_size)
3888         (c_get_range_decl_name): Definitions moved to compile-c.h.
3889         * compile/compile-loc2c.c: Include compile-c.h.
3890
3891 2018-08-10  Keith Seitz  <keiths@redhat.com>
3892
3893         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3894         (c_symbol_substitution_name): ... this.
3895         Update all callers.
3896
3897 2018-08-10  Keith Seitz  <keiths@redhat.com>
3898
3899         * compile/compile-c-support.c (c_compute_program): Use
3900         unique_xmalloc_ptr to eliminate cleanup.
3901         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3902         Return a unique_xmalloc_ptr and eliminate cleanup.
3903         * compile/compile-internal.h (generate_c_for_variable_locations):
3904         Return unique_xmalloc_ptr and update description.
3905
3906 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3907
3908         * corelow.c (core_target::get_core_register_section): Rename
3909         min_size to section_min_size.
3910
3911 2018-08-09  Jim Wilson  <jimw@sifive.com>
3912
3913         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3914         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3915         * NEWS: Mention new GNU/Linux RISC-V target.
3916         * configure.host: Add riscv*-*-linux*.
3917         * configure.nat: Add riscv*.
3918         * configure.tgt: Add riscv*-*-linux*.
3919         * riscv-linux-nat.c: New file.
3920         * riscv-linux-tdep.c: New file.
3921
3922 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3923
3924         * infrun.c (resume): Make static, add forward declaration.
3925         (proceed): Update header comment.
3926         * infrun.h (resume): Delete declaration.
3927
3928 2018-08-09  Tom Tromey  <tom@tromey.com>
3929
3930         * riscv-tdep.h: Minor formatting fixes.
3931
3932 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3933
3934         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3935         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3936         (test_mkdir_recursive): Likewise.
3937         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3938
3939 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3940
3941         * valarith.c (value_subscripted_rvalue): If an array is not in
3942         memory, and we don't know the upper bound, then we can't know that
3943         the requested element exists or not.
3944
3945 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3946
3947         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3948         (target_options_to_string): Add comment.
3949
3950 2018-08-08  Tom Tromey  <tom@tromey.com>
3951
3952         * unittests/scoped_mmap-selftests.c: Check result of "write".
3953
3954 2018-08-08  Jim Wilson  <jimw@sifive.com>
3955
3956         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3957         (decode_register_index_short): New.
3958         (decode_j_type_insn, decode_cj_type_insn): New.
3959         (decode_b_type_insn, decode_cb_type_insn): New.
3960         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3961         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3962         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3963         is_c_sw_insn instead of is_sw_insn.
3964         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3965         (riscv_software_single_step): New.
3966         * riscv-tdep.h (riscv_software_single_step): Declare.
3967
3968         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3969         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3970
3971 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3972
3973         PR gdb/18050:
3974         * target.c (dispose_inferior): Don't dispose of inferiors that are
3975         already killed.
3976
3977 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3978
3979         * remote.c (remote_target::download_tracepoint): Change char* to
3980         const char*.
3981
3982 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3983
3984         * target.h (target_options_to_string): Return an std::string.
3985         * target.c (str_comma_list_concat_elem): Return void, use
3986         std::string.
3987         (do_option): Likewise.
3988         (target_options_to_string): Return an std::string.
3989         * linux-nat.c (linux_nat_target::wait): Adjust.
3990         * target-debug.h (target_debug_print_options): Adjust.
3991
3992 2018-08-07  Tom Tromey  <tom@tromey.com>
3993
3994         * Makefile.in (CPPFLAGS): New variable.
3995         (INTERNAL_CPPFLAGS): Use it.
3996
3997 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3998
3999         * NEWS: Mention the index cache.
4000
4001 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4002
4003         * common/pathstuff.h (get_standard_cache_dir): New.
4004         * common/pathstuff.c (get_standard_cache_dir): New.
4005         * build-id.h (build_id_to_string): New.
4006         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
4007         DEBUG_STR_SUFFIX): Move to here.
4008         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
4009         DEBUG_STR_SUFFIX): Move from there.
4010         (write_psymtabs_to_index): Make non-static, add basename
4011         parameter.  Write to temporary files, rename when done.
4012         (save_gdb_index_command): Adjust call to
4013         write_psymtabs_to_index.
4014         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
4015         field.
4016         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
4017         (get_gdb_index_contents_from_cache): New.
4018         (get_gdb_index_contents_from_cache_dwz): New.
4019         (dwarf2_initialize_objfile): Read index from cache.
4020         (dwarf2_build_psymtabs): Save to index.
4021         * dwarf-index-cache.h: New file.
4022         * dwarf-index-cache.c: New file.
4023         * dwarf-index-write.h: New file.
4024
4025 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4026
4027         * gnulib/aclocal.m4: Re-generate.
4028         * gnulib/config.in: Re-generate.
4029         * gnulib/configure: Re-generate.
4030         * gnulib/import/Makefile.am: Re-generate.
4031         * gnulib/import/Makefile.in: Re-generate.
4032         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
4033         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4034         * gnulib/import/m4/mkdir.m4: New file.
4035         * gnulib/import/mkdir.c: New file.
4036         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
4037         module.
4038
4039 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4040
4041         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
4042         * common/scoped_mmap.c: New file.
4043         * common/scoped_mmap.h (destroy): New method.
4044         (~scoped_mmap, reset): Use destroy.
4045         (scoped_mmap): New move constructor.
4046         (mmap_file): New declaration.
4047         * unittests/scoped_mmap-selftests.c (test_normal,
4048         test_invalid_filename, run_tests): New functions.
4049         (_initialize_scoped_mmap_selftests): Register selftest.
4050
4051 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4052
4053         * dwarf2read.c (read_gdb_index_from_section): Rename to...
4054         (read_gdb_index_from_buffer): ... this.  Remove section
4055         parameter, add buffer parameter.
4056         (get_gdb_index_contents_ftype,
4057         get_gdb_index_contents_dwz_ftype): New typedefs.
4058         (dwarf2_read_gdb_index): Add callback parameters to get the
4059         index contents.
4060         (get_gdb_index_contents_from_section): New.
4061         (dwarf2_initialize_objfile): Update call to
4062         dwarf2_read_gdb_index.
4063
4064 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
4065
4066         * common/filestuff.h (gdb_fopen_cloexec): New overload.
4067         (gdb_open_cloexec): Likewise.
4068         * nat/linux-osdata.c (command_from_pid): Use string_printf.
4069         (commandline_from_pid): Likewise.
4070         (linux_xfer_osdata_threads): Likewise.
4071         (linux_xfer_osdata_fds): Likewise.
4072         * ada-lang.c (is_package_name): Likewise.
4073         * auxv.c (procfs_xfer_auxv): Likewise.
4074         * breakpoint.c (print_one_breakpoint_location): Use
4075         uiout::field_fmt.
4076         (print_one_catch_solib): Use string_printf.
4077         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4078         (add_pe_forwarded_sym): Likewise.
4079         * dwarf2read.c (create_type_unit_group): Likewise.
4080         (build_error_marker_type): Likewise.
4081         * infcall.c (get_function_name): Likewise.
4082         * valprint.c (print_converted_chars_to_obstack): Likewise.
4083         * xtensa-tdep.c (xtensa_register_type): Likewise.
4084
4085 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4086
4087         * remote.c (remote_target::download_tracepoint): Fix format
4088         string errors.
4089
4090 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4091
4092         * tracefile.c: Include common/byte-vector.h.
4093         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4094         with trace_regblock_size if needed.  Update uses of buf.
4095
4096 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4097
4098         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4099         std::vector<unsigned char>.
4100         * tracepoint.c (collection_list::collection_list): Remove
4101         m_regs_mask initializer from initializer list.  Resize
4102         m_regs_mask using the largest remote register number.
4103         (collection_list::add_remote_register): Remove size check on
4104         m_regs_mask.  Use at to access element.
4105         (collection_list::stringify): Change type of temp_buf to
4106         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4107         stringify the register mask.  Use pack_hex_byte for the register
4108         mask.
4109
4110 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4111
4112         * tracepoint.h (class collection_list) <add_register>: Remove.
4113         <add_remote_register, add_ax_registers, add_local_register>:
4114         Declare.
4115         <add_memrange>: Add scope parameter.
4116         * tracepoint.c (encode_actions_1): Likewise.
4117         (collection_list::add_register): Rename to ...
4118         (collection_list::add_remote_register): ... this.  Update
4119         comment.
4120         (collection_list::add_ax_registers, add_local_register): New
4121         methods.
4122         (collection_list::add_memrange): Add scope parameter.  Call
4123         add_local_register instead of add_register.
4124         (finalize_tracepoint_aexpr): New function.
4125         (collection_list::collect_symbol): Update calls to add_memrange.
4126         Call add_local_register instead of add_register.  Call
4127         add_ax_registers.  Call finalize_tracepoint_aexpr.
4128         (encode_actions_1): Get remote regnos for $reg action.  Call
4129         add_remote_register, add_ax_registers, and add_local_register.
4130         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4131         (validate_actionline): Call finalize_tracepoint_aexpr.
4132
4133 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4134
4135         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4136         Replace array buf with gdb::char_vector buf, of size
4137         get_remote_packet_size ().  Replace references to buf and
4138         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4139         and xsnprintf with snprintf.  Raise errors if the buffer is too
4140         small.
4141
4142 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4143
4144         * remote.c (remote_target::download_tracepoint): Fix the has_more
4145         predicate in the QTDP action list iteration.
4146
4147 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4148
4149         * remote.c (remote_target::download_tracepoint): Fix indentation
4150         in for block.
4151
4152 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4153
4154         * proc-api.c (_initialize_proc_api): Remove c, unused.
4155         * procfs.c (procfs_init_inferior): Remove signals, unused.
4156         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4157         unused.
4158
4159 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4160             Andrew Burgess  <andrew.burgess@embecosm.com>
4161
4162         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4163         'W_STOPCODE (0)' as this could be ambiguous.
4164
4165 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4166
4167         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4168         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4169         "ai_socktype").
4170
4171 2018-08-02  Tom Tromey  <tom@tromey.com>
4172
4173         PR symtab/16842.
4174         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4175         symbols.
4176         (process_structure_scope): Likewise.
4177
4178 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4179
4180         PR gdb/22629:
4181         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4182         kill inferior.
4183
4184 2018-08-02  Tom Tromey  <tom@tromey.com>
4185
4186         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4187         (darwin_suspend_inferior, darwin_resume_inferior)
4188         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4189         (darwin_check_new_threads): Check result of get_darwin_inferior.
4190
4191 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4192
4193         GDB 8.1.1 released.
4194
4195 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4196
4197         * varobj.c (varobj_get_path_expr_parent): Report an error if
4198         parent is a dynamic varobj.
4199
4200 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4201
4202         * gnulib/aclocal.m4: Re-generate.
4203         * gnulib/config.in: Re-generate.
4204         * gnulib/configure: Re-generate.
4205         * gnulib/import/Makefile.in: Re-generate.
4206         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4207         * gnulib/import/m4/onceonly.m4: Re-generate.
4208
4209 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4210
4211         * target-descriptions.c (struct xml_test_tdesc): New.
4212         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4213         (record_xml_tdesc): Update.
4214         (maintenance_check_xml_descriptions): Update.
4215         * target-descriptions.h (record_xml_tdesc): Update comment.
4216
4217 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4218
4219         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4220         checking array bounds are defined.
4221
4222 2018-07-30  Tom Tromey  <tom@tromey.com>
4223
4224         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4225         irreflexivity violation.
4226
4227 2018-07-30  Tom Tromey  <tom@tromey.com>
4228
4229         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4230         * value.c (unpack_long): Remove lint code.
4231         * valops.c (value_ind): Remove lint code.
4232         * valarith.c (value_x_binop, value_x_unop, value_equal)
4233         (value_pos): Remove lint code.
4234
4235 2018-07-28  Tom de Vries  <tdevries@suse.de>
4236
4237         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4238         with undefined upper bound as <optimized out>.
4239
4240 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4241
4242         * gcore.in: Rename variable "name" to "prefix".  Expand
4243         "usage" text.
4244
4245 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4246
4247         * windows-nat.c (windows_nat_target::create_inferior): Update to
4248         call close() in global namespace.
4249
4250 2018-07-26  Tom Tromey  <tom@tromey.com>
4251
4252         * dwarf-index-write.c (add_address_entry): Don't add objfile
4253         offsets.
4254         * dbxread.c (find_stab_function): Rename from
4255         find_stab_function_addr.  Return a bound_minimal_symbol.
4256         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4257         Don't add objfile offsets.
4258         (end_psymtab): Use raw_text_low, raw_text_high,
4259         MSYMBOL_VALUE_RAW_ADDRESS.
4260         (read_ofile_symtab): Update.
4261         (process_one_symbol): Update.
4262         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4263         offsets.
4264         (dw2_relocate): Remove.
4265         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4266         searching addrmap.
4267         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4268         Update.
4269         (process_psymtab_comp_unit_reader, add_partial_symbol)
4270         (add_partial_subprogram, dwarf2_ranges_read): Update.
4271         (load_partial_dies): Update.
4272         (add_address_entry): Don't add objfile offsets.
4273         (dwarf2_build_include_psymtabs): Update.
4274         (create_addrmap_from_aranges): Don't add objfile offsets.
4275         (dw2_find_pc_sect_compunit_symtab): Update.
4276         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4277         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4278         Update.
4279         (parse_partial_symbols): Don't add objfile offsets.  Use
4280         raw_text_low, raw_text_high.  Update.
4281         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4282         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4283         or call 'relocate' quick function.  Clear psymbol_map.
4284         * psympriv.h (struct partial_symbol) <address>: Add section
4285         offset.
4286         <set_unrelocated_address>: Rename from set_address.
4287         <raw_text_low, raw_text_high>: New methods.
4288         <text_low, text_high>: Add objfile parameter.
4289         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4290         set_unrelocated_address.
4291         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4292         (find_pc_psymbol): Update.
4293         (fixup_psymbol_section, relocate_psymtabs): Remove.
4294         (dump_psymtab, psym_functions): Update.
4295         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4296         parameter.
4297         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4298         (start_psymtab_common): Update.
4299         * symfile-debug.c (debug_qf_relocate): Remove.
4300         (debug_sym_quick_functions): Update.
4301         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4302         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4303         Update.
4304
4305 2018-07-26  Tom Tromey  <tromey@redhat.com>
4306
4307         * dbxread.c (end_psymtab): Use text_high_valid and
4308         text_low_valid.
4309         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4310         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4311         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4312         Update comment.
4313         <text_low_valid, text_high_valid>: New fields.
4314         <set_text_low, set_text_high>: Update.
4315         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4316
4317 2018-07-26  Tom Tromey  <tom@tromey.com>
4318
4319         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4320         Update.
4321         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4322         textlow and texthigh fields.
4323         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4324         Update.
4325         * mdebugread.c (parse_lines, parse_partial_symbols)
4326         (psymtab_to_symtab_1): Update.
4327         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4328         Rename fields.  Update comment.  Now private.
4329         <text_low, text_high, set_text_low, set_text_high>: New methods.
4330         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4331         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4332         (start_psymtab_common, maintenance_info_psymtabs)
4333         (maintenance_check_psymtabs): Update.
4334         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4335         texthigh fields.
4336         (scan_xcoff_symtab): Update.
4337
4338 2018-07-26  Tom Tromey  <tromey@redhat.com>
4339
4340         * psympriv.h (struct partial_symbol) <unrelocated_address,
4341         address, set_address>: New methods.
4342         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4343         (fixup_psymbol_section, relocate_psymtabs): Update.
4344         (print_partial_symbols): Add 'objfile' parameter.  Update.
4345         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4346         Update.
4347
4348 2018-07-26  Tom Tromey  <tom@tromey.com>
4349
4350         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4351         (debug_names::write_psymbols): Update.
4352         * psympriv.h (struct partial_symbol): Derive from
4353         general_symbol_info.
4354         <obj_section>: New method.
4355         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4356         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4357         (find_pc_sect_psymbol, fixup_psymbol_section)
4358         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4359         (print_partial_symbols, recursively_search_psymtabs)
4360         (compare_psymbols, psymbol_hash, psymbol_compare)
4361         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4362         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4363
4364 2018-07-26  Tom Tromey  <tromey@redhat.com>
4365
4366         * dbxread.c (end_psymtab): Remove dead code.
4367
4368 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4369
4370         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4371         DWARF unwinders are disabled.
4372         * dwarf2-frame.c: Add dwarf2read.h include.
4373         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4374         disabled.
4375         (dwarf2_frame_unwinders_enabled_p): Define.
4376         (show_dwarf_unwinders_enabled_p): New function.
4377         (_initialize_dwarf2_frame): Register switch to control DWARF
4378         unwinder use.
4379         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4380         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4381         (show_dwarf_cmdlist): Remove static keyword.
4382         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4383         (show_dwarf_cmdlist): Declare.
4384         * NEWS: Document new feature.
4385
4386 2018-07-26  Tom de Vries  <tdevries@suse.de>
4387
4388         PR breakpoints/23366
4389         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4390
4391 2018-07-26  Tom de Vries  <tdevries@suse.de>
4392
4393         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4394         DW_AT_count can't be translated to a dynamic prop.
4395
4396 2018-07-25  Tom de Vries  <tdevries@suse.de>
4397
4398         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4399         try/catch.
4400
4401 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4402
4403         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4404
4405 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4406
4407         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4408
4409 2018-07-24  Keith Seitz  <keiths@redhat.comt
4410
4411         PR symtab/23010
4412         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4413         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4414         instead of add_symbol_to_list.
4415         (read_file_scope): Call prepare_one_comp_unit before reading
4416         any other DIEs.
4417
4418 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4419
4420         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4421
4422 2018-07-24  Tom Tromey  <tom@tromey.com>
4423
4424         * utils.c (malloc, realloc, free): Don't declare.
4425         * configure, config.in: Rebuild.
4426         * configure.ac: Don't check for declarations of free, malloc, or
4427         realloc.
4428
4429 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4430
4431         * aarch64-linux-nat.c
4432         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4433         variable.
4434         * arm-linux-nat.c (fetch_regs): Likewise.
4435         (store_regs): Likewise.
4436         (fetch_vfp_regs): Likewise.
4437         (store_vfp_regs): Likewise.
4438         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4439         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4440         (arm_linux_nat_target::insert_watchpoint): Likewise.
4441         (arm_linux_nat_target::remove_watchpoint): Likewise.
4442         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4443         Likewise.
4444         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4445         Likewise.
4446         * ppc-linux-nat.c (fetch_register): Likewise.
4447         (fetch_all_gp_regs): Likewise.
4448         (fetch_ppc_registers): Likewise.
4449         (store_all_gp_regs): Likewise.
4450         (store_ppc_registers): Likewise.
4451         (hwdebug_insert_point): Likewise.
4452         (can_use_watchpoint_cond_accel): Likewise.
4453         * remote-sim.c (gdb_os_write_stdout): Likewise.
4454
4455 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4456             Tom Tromey  <tom@tromey.com>
4457
4458         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4459         test for it.
4460         * configure: Rebuild.
4461
4462 2018-07-22  Tom Tromey  <tom@tromey.com>
4463
4464         * regformats/regdat.sh: Define xmltarget_${name} inside
4465         #ifndef IN_PROCESS_AGENT.
4466
4467 2018-07-22  Tom Tromey  <tom@tromey.com>
4468
4469         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4470
4471 2018-07-22  Tom Tromey  <tom@tromey.com>
4472
4473         * symfile.c (reread_symbols): Notify iter, not objfile.
4474
4475 2018-07-22  Tom Tromey  <tom@tromey.com>
4476
4477         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4478         Use arch_ops.
4479         (ravenscar_thread_target::prepare_to_store): Likewise.
4480
4481 2018-07-22  Tom Tromey  <tom@tromey.com>
4482
4483         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4484         unused variable.  Call value_fetch_lazy when needed.
4485         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4486         Remove unused variable.  Call value_fetch_lazy when needed.
4487
4488 2018-07-22  Tom Tromey  <tom@tromey.com>
4489
4490         * m32c-tdep.c (mark_dma): Return void.
4491         (make_regs): Remove unused declarations.
4492
4493 2018-07-22  Tom Tromey  <tom@tromey.com>
4494
4495         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4496         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4497         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4498         bkscm_get_valid_block_smob_arg_unsafe for effect.
4499
4500 2018-07-22  Tom Tromey  <tom@tromey.com>
4501
4502         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4503         value_type.
4504
4505 2018-07-22  Tom Tromey  <tom@tromey.com>
4506
4507         * windows-nat.c (saved_context): Conditionally define.
4508         * remote.c (remote_target::remote_btrace_maybe_reopen):
4509         Conditionally declare "warned".
4510         * inflow.c (sigquit_ours): Conditionally define.
4511         (new_tty): Move "tty" declaration inside #if.
4512         * guile/guile.c (guile_datadir): Conditionally define.
4513         * charset.c (set_be_le_names): Move some declarations inside #if.
4514         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4515         #if.
4516         (parse_xml_btrace_conf): Likewise.
4517
4518 2018-07-22  Tom Tromey  <tom@tromey.com>
4519
4520         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4521
4522 2018-07-22  Tom Tromey  <tom@tromey.com>
4523
4524         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4525         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4526         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4527         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4528         * stack.c (frame_apply_level_command): Remove unused variable.
4529         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4530         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4531         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4532         unused variable.
4533         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4534         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4535         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4536         variable.
4537         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4538         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4539         variable.
4540         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4541         Remove unused variable.
4542         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4543         variable.
4544         * common/tdesc.c (print_xml_feature::visit): Remove unused
4545         variable.
4546         * compile/compile-object-load.c (store_regs): Remove unused
4547         variables.
4548         * complaints.c (clear_complaints): Remove unused variable.
4549         * corelow.c (core_target_open): Remove unused variable.
4550         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4551         variable.
4552         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4553         variable.
4554         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4555         variable.
4556         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4557         variable.
4558         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4559         variable.
4560         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4561         variable.
4562         * ia64-tdep.c (examine_prologue): Remove unused variable.
4563         * infcall.c (run_inferior_call): Remove unused variable.
4564         * inferior.c (exit_inferior): Remove unused variable.
4565         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4566         * linespec.c (decode_line_2): Remove unused variable.
4567         * linux-nat.c (super_close): Remove.
4568         * linux-tdep.c (linux_info_proc): Remove unused variable.
4569         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4570         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4571         Remove unused variable.
4572         * parse.c (find_minsym_type_and_address): Remove unused variable.
4573         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4574         variable.
4575         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4576         variable.
4577         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4578         variables.
4579         * record-btrace.c (record_btrace_target::store_registers): Remove
4580         unused variable.
4581         (cmd_show_record_btrace_cpu): Remove unused variable.
4582         * riscv-tdep.c (riscv_register_reggroup_p)
4583         (riscv_push_dummy_call, riscv_return_value): Remove unused
4584         variable.
4585         * rust-exp.y (literal): Remove unused variable.
4586         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4587         unused variable.
4588         <STRUCTOP_ANONYMOUS>: Likewise.
4589         * s390-linux-tdep.c (s390_linux_init_abi_31)
4590         (s390_linux_init_abi_64): Remove unused variable.
4591         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4592         (file_select_thread, net_windows_open, _initialize_ser_windows):
4593         Remove unused variables.
4594         * symtab.c (find_pc_sect_line): Remove unused variable.
4595         * target-memory.c (compute_garbled_blocks): Remove unused
4596         variable.
4597         (target_write_memory_blocks): Remove unused variable.
4598         * target.c (target_stack::unpush): Remove unused variables.
4599         * tracepoint.c (start_tracing, all_tracepoint_actions)
4600         (merge_uploaded_trace_state_variables)
4601         (print_one_static_tracepoint_marker): Remove unused variable.
4602         * unittests/basic_string_view/element_access/char/1.cc (test01):
4603         Remove unused variable.
4604         * windows-nat.c (windows_continue, windows_add_all_dlls)
4605         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4606         Remove unused variables.
4607
4608 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4609
4610         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4611         attr_profile in HAVE_ELF.
4612         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4613         HAVE_ELF.
4614
4615 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4616
4617         * frame.c (frame_register_unwind): Change parameter name.
4618         (frame_unwind_register): Likewise.
4619         (frame_unwind_register_value): Likewise.
4620         (frame_unwind_register_signed): Likewise.
4621         (frame_unwind_register_unsigned): Likewise.
4622         * frame.h (frame_register_unwind): Likewise.
4623         (frame_unwind_register): Likewise.
4624         (frame_unwind_register_value): Likewise.
4625         (frame_unwind_register_signed): Likewise.
4626         (frame_unwind_register_unsigned): Likewise.
4627         (frame_unwind_arch): Likewise.
4628
4629 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4630
4631         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4632         ISA maintenance.
4633
4634 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4635
4636         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4637         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4638         hand.
4639
4640 2018-07-20  Keith Seitz  <keiths@redhat.com>
4641
4642         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4643         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4644         m_compunit_symtab, m_language>: Add "m_" prefix.
4645         Update all uses.
4646         * buildsym.c: Update all uses.
4647
4648 2018-07-20  Tom Tromey  <tom@tromey.com>
4649
4650         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4651         * buildsym.h (record_line_ftype): Remove typedef.
4652
4653 2018-07-20  Tom Tromey  <tom@tromey.com>
4654
4655         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4656         (end_expandable_symtab): Likewise.
4657         (end_symtab_get_static_block): Likewise.
4658         (end_symtab_from_static_block): Likewise.
4659         * buildsym-legacy.c (augment_type_symtab): Remove.
4660         (end_expandable_symtab): Remove.
4661         (end_symtab_get_static_block): Remove.
4662         (end_symtab_from_static_block): Remove.
4663
4664 2018-07-20  Tom Tromey  <tom@tromey.com>
4665
4666         * dwarf2read.c: Include buildsym.h.
4667         (struct dwarf2_cu) <builder>: New method.
4668         (fixup_go_packaging): Update.
4669         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4670         use scoped_free_pendings.
4671         (using_directives): Add "cu" parameter, remove "language".
4672         (read_import_statement, setup_type_unit_groups, )
4673         (read_func_scope, read_lexical_block_scope)
4674         (dwarf2_record_block_ranges, read_namespace): Update.
4675         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4676         (lnp_state_machine::handle_end_sequence): Update.
4677         (class lnp_state_machine) <m_cu>: New member.
4678         <m_record_line_callback>: Remove.
4679         <m_currently_recording_lines>: New member.
4680         (lnp_state_machine::handle_set_file): Update.
4681         (noop_record_line): Remove.
4682         (dwarf_record_line_p): Add cu parameter.
4683         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4684         (lnp_state_machine::record_line)
4685         (lnp_state_machine::lnp_state_machine)
4686         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4687         (dwarf_decode_lines): Update.
4688         (dwarf2_start_subfile): Add cu parameter.
4689         (dwarf2_start_symtab, new_symbol): Update.
4690         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4691         Remove dwarf2_per_objfile parameter.
4692         (dwarf_decode_macros): Update.
4693
4694 2018-07-20  Tom Tromey  <tom@tromey.com>
4695
4696         * stabsread.c (define_symbol): Update.
4697         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4698         * dwarf2read.c (new_symbol): Update.
4699         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4700         * cp-namespace.c: Include buildsym.h.
4701         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4702         * buildsym-legacy.c (get_buildsym_compunit): New function.
4703
4704 2018-07-20  Tom Tromey  <tom@tromey.com>
4705
4706         * xcoffread.c: Include buildsym-legacy.h.
4707         * windows-nat.c: Include buildsym-legacy.h.
4708         * stabsread.c: Include buildsym-legacy.h.
4709         * mdebugread.c: Include buildsym-legacy.h.
4710         * buildsym-legacy.h: New file.
4711         * buildsym-legacy.c: New file, from buildsym.c.
4712         * go32-nat.c: Include buildsym-legacy.h.
4713         * dwarf2read.c: Include buildsym-legacy.h.
4714         * dbxread.c: Include buildsym-legacy.h.
4715         * cp-namespace.c: Include buildsym-legacy.h.
4716         * coffread.c: Include buildsym-legacy.h.
4717         * buildsym.h: Move some contents to buildsym-legacy.h.
4718         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4719         buildsym-legacy.c.
4720         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4721
4722 2018-07-20  Tom Tromey  <tom@tromey.com>
4723
4724         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4725         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4726         (buildsym_compunit::buildsym_compunit)
4727         (buildsym_compunit::~buildsym_compunit)
4728         (buildsym_compunit::get_macro_table): Define.
4729
4730 2018-07-20  Tom Tromey  <tom@tromey.com>
4731
4732         * buildsym.c (reset_symtab_globals): Remove.
4733         (buildsym_compunit::end_symtab_from_static_block): Update.
4734         (buildsym_compunit::augment_type_symtab): Update.
4735         (end_symtab_from_static_block): Call free_buildsym_compunit.
4736         (augment_type_symtab, end_symtab, end_expandable_symtab):
4737         Likewise.
4738
4739 2018-07-20  Tom Tromey  <tom@tromey.com>
4740
4741         * arch-utils.c: Do not include buildsym.h.
4742         * mipsread.c: Do not include buildsym.h.
4743         * machoread.c: Do not include buildsym.h.
4744         * elfread.c: Do not include buildsym.h.
4745
4746 2018-07-20  Tom Tromey  <tom@tromey.com>
4747
4748         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4749         initialization.
4750         (buildsym_compunit): Add new constructor.
4751         (struct buildsym_compunit) <get_last_source_file, finish_block,
4752         record_block_range, start_subfile, patch_subfile_names,
4753         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4754         set_last_source_start_addr, get_last_source_start_addr,
4755         get_local_using_directives, set_local_using_directives,
4756         get_global_using_directives, outermost_context_p,
4757         get_current_context_stack, get_context_stack_depth,
4758         get_current_subfile, get_local_symbols, get_file_symbols,
4759         get_global_symbols, record_debugformat, record_producer,
4760         push_context, pop_context, end_symtab_get_static_block,
4761         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4762         New public methods.
4763         <record_pending_block, finish_block_internal, make_blockvector,
4764         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4765         private methods.
4766         Update all users.
4767
4768 2018-05-22  Tom Tromey  <tom@tromey.com>
4769
4770         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4771         parameter.
4772         (finish_block_internal): Update.
4773
4774 2018-07-20  Tom Tromey  <tom@tromey.com>
4775
4776         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4777         parameter.
4778         (finish_block_internal): Update.
4779
4780 2018-07-20  Tom Tromey  <tom@tromey.com>
4781
4782         * buildsym.h (EXTERN): Don't define or undef.
4783         * buildsym.c (EXTERN): Don't define.
4784
4785 2018-07-20  Tom Tromey  <tom@tromey.com>
4786
4787         * buildsym.c: Remove TODO comment.
4788
4789 2018-07-20  Tom Tromey  <tom@tromey.com>
4790
4791         * coffread.c (coff_symtab_read): Update.
4792         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4793         (xcoff_new_init): Update.
4794         * mipsread.c (mipscoff_new_init): Update.
4795         * mdebugread.c (mdebug_build_psymtabs): Update.
4796         * elfread.c (elf_new_init): Update.
4797         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4798         Update.
4799         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4800         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4801         (stabsect_build_psymtabs): Update.
4802         * buildsym.h (buildsym_init): Don't declare.
4803         * buildsym.c: Update comment.
4804         (prepare_for_building): Remove.
4805         (start_symtab, restart_symtab): Update.
4806         (reset_symtab_globals): Update comment.
4807         (buildsym_init): Remove.
4808
4809 2018-07-20  Tom Tromey  <tom@tromey.com>
4810
4811         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4812         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4813         (read_enum_type, common_block_start, common_block_end)
4814         (cleanup_undefined_types_1, finish_global_stabs): Update.
4815         * mdebugread.c (psymtab_to_symtab_1): Update.
4816         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4817         (read_lexical_block_scope, new_symbol): Update.
4818         * dbxread.c (process_one_symbol): Update.
4819         * coffread.c (coff_symtab_read, process_coff_symbol)
4820         (coff_read_enum_type): Update.
4821         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4822         declare.
4823         (get_local_symbols, get_file_symbols, get_global_symbols): New
4824         functions.
4825         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4826         m_global_symbols.
4827         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4828         (~scoped_free_pendings): Update.
4829         (finish_block, prepare_for_building, reset_symtab_globals)
4830         (end_symtab_get_static_block, end_symtab_with_blockvector)
4831         (augment_type_symtab, push_context): Update.
4832         (get_local_symbols, get_file_symbols, get_global_symbols): New
4833         functions.
4834         (buildsym_init): Update.
4835
4836 2018-07-20  Tom Tromey  <tom@tromey.com>
4837
4838         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4839         (process_full_type_unit): Likewise.
4840         (dwarf2_start_symtab): Set list_in_scope.
4841
4842 2018-07-20  Tom Tromey  <tom@tromey.com>
4843
4844         * dwarf2read.c (process_psymtab_comp_unit_reader)
4845         (build_type_psymtabs_reader): Do not set list_in_scope.
4846
4847 2018-07-20  Tom Tromey  <tom@tromey.com>
4848
4849         * buildsym.c (free_pendings): Remove.
4850         (add_symbol_to_list, scoped_free_pendings)
4851         (finish_block_internal, buildsym_init): Update.
4852
4853 2018-07-20  Tom Tromey  <tom@tromey.com>
4854
4855         * xcoffread.c (read_xcoff_symtab): Update.
4856         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4857         Update.
4858         * dbxread.c (process_one_symbol): Update.
4859         * coffread.c (coff_symtab_read): Update.
4860         * buildsym.h (finish_block): Update.
4861         * buildsym.c (finish_block): Remove "listhead" argument.
4862         (end_symtab_get_static_block): Update.
4863
4864 2018-07-20  Tom Tromey  <tom@tromey.com>
4865
4866         * buildsym.h (class scoped_free_pendings): Remove constructor.
4867         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4868         method.
4869         <m_pending_block_obstack, m_pending_blocks>: New members.
4870         (pending_block_obstack, pending_blocks): Remove.
4871         (scoped_free_pendings::scoped_free_pendings): Default.
4872         (~scoped_free_pendings): Update.
4873         (free_pending_blocks): Remove.
4874         (finish_block_internal, record_pending_block, make_blockvector)
4875         (end_symtab_get_static_block, augment_type_symtab, push_context)
4876         (buildsym_init): Update.
4877
4878 2018-07-20  Tom Tromey  <tom@tromey.com>
4879
4880         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4881         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4882         members.
4883         (pending_addrmap, pending_addrmap_obstack)
4884         (pending_addrmap_interesting): Remove.
4885         (scoped_free_pendings, record_block_range, make_blockvector)
4886         (prepare_for_building, reset_symtab_globals, buildsym_init):
4887         Update.
4888
4889 2018-07-20  Tom Tromey  <tom@tromey.com>
4890
4891         * xcoffread.c (process_linenos): Update.
4892         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4893         * mdebugread.c (psymtab_to_symtab_1): Update.
4894         * dwarf2read.c (setup_type_unit_groups)
4895         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4896         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4897         * dbxread.c (process_one_symbol): Update.
4898         * coffread.c (coff_symtab_read, enter_linenos)
4899         (process_coff_symbol): Update.
4900         * buildsym.h (current_subfile): Don't declare.
4901         (get_current_subfile): Declare.
4902         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4903         member.
4904         (start_subfile, free_buildsym_compunit, push_subfile)
4905         (prepare_for_building, start_symtab): Update.
4906         (get_current_subfile): New function.
4907
4908 2018-07-20  Tom Tromey  <tom@tromey.com>
4909
4910         * coffread.c (coff_symtab_read): Update.
4911         * xcoffread.c (read_xcoff_symtab): Update.
4912         * dwarf2read.c (new_symbol): Update.
4913         (read_func_scope, read_lexical_block_scope): Update.
4914         * dbxread.c (process_one_symbol): Update.
4915         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4916         (outermost_context_p): Remove macro.
4917         (outermost_context_p, get_current_context_stack)
4918         (get_context_stack_depth): Declare.
4919         (pop_context): Return struct context_stack.
4920         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4921         member.
4922         (context_stack_size): Remove.
4923         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4924         (prepare_for_building, end_symtab_get_static_block)
4925         (augment_type_symtab, push_context): Update.
4926         (pop_context): Return struct context_stack.
4927         (outermost_context_p, get_current_context_stack)
4928         (get_context_stack_depth): New functions.
4929         (buildsym_init): Update.
4930
4931 2018-07-20  Tom Tromey  <tom@tromey.com>
4932
4933         * rust-exp.y: Now a pure parser.  Update all rules.
4934         (%union): Move earlier.
4935         (current_parser, work_obstack): Remove globals.
4936         (rust_parser, ~rust_parser): Update.
4937         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4938         lex_character, lex_number, lex_string, lex_identifier,
4939         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4940         convert_name, convert_params_to_expression,
4941         convert_ast_to_expression, ast_basic_type, ast_operation,
4942         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4943         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4944         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4945         ast_array_type, ast_slice_type, ast_reference_type,
4946         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4947         (rust_parse): Update.
4948         (rustyyerror, rustyylex): Add parser parameter.
4949         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4950         (rust_lex_stringish_test, rust_lex_test_sequence)
4951         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4952         (rust_lex_test_push_back, rust_lex_tests): Update.
4953
4954 2018-07-19  Pedro Alves  <palves@redhat.com>
4955
4956         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4957         gdb::unique_xmalloc_ptr.
4958         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4959         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4960         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4961         copy-initialization.
4962         * guile/scm-pretty-print.c (ppscm_print_children): Use
4963         gdb::unique_xmalloc_ptr instead of cleanups.
4964         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4965         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4966         gdb::unique_xmalloc_ptr.
4967         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4968         Adjust to use gdb::unique_xmalloc_ptr.
4969         * guile/scm-utils.c (extract_arg): Adjust.
4970         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4971         gdb::unique_xmalloc_ptr instead of a cleanup.
4972
4973 2018-07-19  Tom Tromey  <tom@tromey.com>
4974
4975         * utils.c (do_value_free_to_mark)
4976         (make_cleanup_value_free_to_mark): Remove.
4977         * utils.h (make_cleanup_value_free_to_mark): Remove.
4978
4979 2018-07-19  Pedro Alves  <palves@redhat.com>
4980
4981         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4982         forwarding reference.
4983
4984 2018-07-18  Pedro Alves  <palves@redhat.com>
4985
4986         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4987         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4988         cleanup.
4989
4990 2018-07-18  Pedro Alves  <palves@redhat.com>
4991
4992         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4993         exceptions.
4994         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4995         (gdbscm_wrap): New.
4996         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4997         directly instead of a cleanup.
4998         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4999         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
5000         (vlscm_binop_gdbthrow): New, factored out from ...
5001         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
5002         (vlscm_rich_compare): Use gdbscm_wrap.
5003         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
5004         instead of a cleanup.
5005         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
5006         cleanup.
5007         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
5008         Use xfree directly instead of a cleanup.
5009         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
5010         Adjust to use gdbscm_wrap and scoped_value_mark.
5011         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
5012         (gdbscm_value_address, gdbscm_value_dereference)
5013         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
5014         scoped_value_mark.
5015         (gdbscm_value_dynamic_type): Use scoped_value_mark.
5016         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
5017         scoped_value_mark.
5018         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
5019         gdbscm_wrap and scoped_value_mark.
5020         (gdbscm_value_to_string): Use xfree directly instead of a
5021         cleanup.  Move 'buffer' unique_ptr to TRY scope.
5022         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
5023         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
5024         scoped_value_mark.
5025         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
5026         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
5027         scoped_value_mark.
5028         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
5029         gdbscm_wrap.
5030
5031 2018-07-18  Tom de Vries  <tdevries@suse.de>
5032
5033         * findvar.c (default_read_var_value): Also resolve dynamic type for
5034         LOC_OPTIMIZED_OUT vars.
5035
5036 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
5037
5038         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
5039         decoding.
5040
5041 2018-07-17  Tom Tromey  <tom@tromey.com>
5042
5043         * guile/scm-param.c (pascm_set_func, pascm_show_func)
5044         (compute_enum_list, pascm_set_param_value_x)
5045         (gdbscm_parameter_value): Update.
5046         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
5047         (gdbscm_scm_to_host_string): Update.
5048         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
5049         Update.
5050         * guile/scm-cmd.c (cmdscm_add_completion): Update.
5051         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
5052         * guile/scm-string.c (gdbscm_scm_to_string): Return
5053         unique_xmalloc_ptr.
5054         (gdbscm_scm_to_host_string): Likewise.
5055
5056 2018-07-17  Tom Tromey  <tom@tromey.com>
5057
5058         * guile/guile.c (gdbscm_eval_from_control_command): Update.
5059         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
5060         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
5061         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
5062         unique_xmalloc_ptr.
5063
5064 2018-07-17  Tom Tromey  <tom@tromey.com>
5065
5066         * guile/scm-param.c (pascm_signal_setshow_error): Update.
5067         * guile/guile-internal.h (gdbscm_exception_message_to_string):
5068         Update.
5069         * guile/scm-cmd.c (cmdscm_function): Update.
5070         * guile/scm-pretty-print.c
5071         (ppscm_print_exception_unless_memory_error): Update.
5072         * guile/scm-exception.c (gdbscm_exception_message_to_string):
5073         Return unique_xmalloc_ptr.
5074
5075 2018-07-17  Tom Tromey  <tom@tromey.com>
5076
5077         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5078         Use string_printf.
5079
5080 2018-07-17  Jim Wilson  <jimw@sifive.com>
5081
5082         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5083         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5084         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5085         unecessary braces after EF_RISCV_RVC test.  Delete call to
5086         set_gdbarch_decr_pc_after_break.
5087
5088         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5089         RISCV_LAST_FP_REGNUM + 1.
5090         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5091
5092 2018-07-17  Tom Tromey  <tom@tromey.com>
5093
5094         * configure.ac: Remove --disable-gdbcli.
5095         * configure: Rebuild.
5096         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5097         (SUBDIR_CLI_CFLAGS): Remove.
5098         (SFILES): Use SUBDIR_CLI_SRCS.
5099         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5100
5101 2018-07-17  Tom Tromey  <tom@tromey.com>
5102
5103         PR gdb/18624:
5104         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5105
5106 2018-07-16  Jim Wilson  <jimw@sifive.com>
5107
5108         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5109
5110 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5111
5112         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5113         variable.
5114         (libunwind_frame_sniffer): Likewise.
5115         (libunwind_frame_prev_register): Likewise.
5116         (libunwind_sigtramp_frame_sniffer): Likewise.
5117         * ia64-tdep.c (ia64_access_reg): Likewise.
5118         (ia64_access_rse_reg): Likewise.
5119         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5120         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5121
5122 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5123
5124         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5125
5126 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5127
5128         * remote-sim.c (gdbsim_target::close,
5129         gdbsim_target::mourn_inferior): Remove unused variables.
5130
5131 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5132
5133         * ia64-tdep.c (ktab_buf): New global.
5134         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5135         (get_kernel_table): Adjust.
5136
5137 2018-07-16  Tom Tromey  <tom@tromey.com>
5138
5139         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5140         * dwarf2read.c (using_directives, new_symbol): Use
5141         outermost_context_p.
5142         * dbxread.c (process_one_symbol): Use outermost_context_p.
5143         * coffread.c (coff_symtab_read): Use outermost_context_p.
5144
5145 2018-07-16  Tom Tromey  <tom@tromey.com>
5146
5147         * dwarf2read.c (using_directives, read_func_scope)
5148         (read_lexical_block_scope): Update.
5149         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5150         * buildsym.h (local_using_directives, global_using_directives):
5151         Don't declare.
5152         (get_local_using_directives, set_local_using_directives)
5153         (get_global_using_directives): Declare.
5154         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5155         m_global_using_directives>: New members.
5156         (finish_block_internal, prepare_for_building)
5157         (reset_symtab_globals, end_symtab_get_static_block)
5158         (push_context): Update.
5159         (get_local_using_directives, set_local_using_directives)
5160         (get_global_using_directives): New functions.
5161         (buildsym_init): Update.
5162
5163 2018-07-16  Tom Tromey  <tom@tromey.com>
5164
5165         * xcoffread.c (xcoff_initial_scan): Don't call
5166         free_pending_blocks.
5167         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5168         * buildsym.h (class scoped_free_pendings): Add constructor.
5169         (free_pending_blocks): Don't declare.
5170         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5171         (free_pending_blocks): Now static.
5172
5173 2018-07-16  Tom Tromey  <tom@tromey.com>
5174
5175         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5176         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5177         member.
5178         (struct subfile_stack): Remove.
5179         (subfile_stack): Remove.
5180         (push_subfile, pop_subfile, buildsym_init): Update.
5181
5182 2018-07-16  Tom Tromey  <tom@tromey.com>
5183
5184         * buildsym.c (push_subfile): Use gdb_assert.
5185         (pop_subfile): Use gdb_assert.
5186
5187 2018-07-16  Tom Tromey  <tom@tromey.com>
5188
5189         * buildsym.h (merge_symbol_lists): Remove.
5190         * buildsym.c (merge_symbol_lists): Remove.
5191
5192 2018-07-16  Tom Tromey  <tom@tromey.com>
5193
5194         * stabsread.c (scan_file_globals): Update comment.
5195         * stabsread.h (scan_file_globals): Move from buildsym.h.
5196         * buildsym.h (scan_file_globals): Move to stabsread.h.
5197
5198 2018-07-16  Tom Tromey  <tom@tromey.com>
5199
5200         * xcoffread.c (xcoff_new_init): Update.
5201         * mipsread.c (mipscoff_new_init): Update.
5202         * mdebugread.c (mdebug_build_psymtabs): Update.
5203         * elfread.c (elf_new_init): Update.
5204         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5205         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5206         * buildsym.h (buildsym_new_init): Don't declare.
5207         * buildsym.c (buildsym_new_init): Remove.
5208
5209 2018-07-16  Tom Tromey  <tom@tromey.com>
5210
5211         * stabsread.h (within_function): Move from buildsym.h.
5212         * stabsread.c (start_stabs): Clear within_function.
5213         * coffread.c (coff_start_symtab): Clear within_function.
5214         * buildsym.h (within_function): Move to stabsread.h.
5215         * buildsym.c (prepare_for_building): Update.
5216
5217 2018-07-16  Tom Tromey  <tom@tromey.com>
5218
5219         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5220         * dwarf2read.c (dwarf2_start_symtab): Don't set
5221         processing_gcc_compilation.
5222         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5223
5224 2018-07-16  Tom Tromey  <tom@tromey.com>
5225
5226         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5227         (next_symbol_text_func): Move from buildsym.h.
5228         * stabsread.c (hashname): Move from buildsym.c.
5229         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5230         (next_symbol_text_func, hashname): Move to stabsread.h.
5231         * buildsym.c: Don't include bcache.h
5232         (hashname): Move to stasbread.c.
5233
5234 2018-07-16  Tom Tromey  <tom@tromey.com>
5235
5236         * buildsym.h (context_stack_size): Don't declare.
5237         * buildsym.c (context_stack_size): New global.
5238
5239 2018-07-16  Tom Tromey  <tom@tromey.com>
5240
5241         * dbxread.c (processing_acc_compilation): New global.
5242         * buildsym.h (processing_acc_compilation): Don't declare.
5243
5244 2018-07-16  Tom Tromey  <tom@tromey.com>
5245
5246         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5247         * dbxread.c (read_ofile_symtab): Update.
5248         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5249         * buildsym.h (last_source_start_addr): Remove.
5250         (set_last_source_start_addr, get_last_source_start_addr):
5251         Declare.
5252         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5253         parameter.
5254         (struct buildsym_compunit) <m_last_source_start_addr>: New
5255         member.
5256         (prepare_for_building): Remove start_addr parameter.
5257         (start_symtab, restart_symtab, end_symtab_get_static_block)
5258         (end_symtab_with_blockvector): Update.
5259         (set_last_source_start_addr, get_last_source_start_addr): New
5260         functions.
5261
5262 2018-07-16  Tom Tromey  <tom@tromey.com>
5263
5264         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5265         member.
5266         (have_line_numbers): Remove.
5267         (record_line, prepare_for_building, end_symtab_get_static_block)
5268         (augment_type_symtab): Update.
5269
5270 2018-07-16  Tom Tromey  <tom@tromey.com>
5271
5272         * buildsym.c (~buildsym_compunit): Free the macro table.
5273         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5274         methods.
5275         <m_pending_macros>: New member.
5276         (pending_macros): Remove.
5277         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5278         (reset_symtab_globals, end_symtab_get_static_block)
5279         (end_symtab_with_blockvector, augment_type_symtab)
5280         (buildsym_init): Update.
5281
5282 2018-07-16  Tom Tromey  <tom@tromey.com>
5283
5284         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5285         parameter.
5286         (buildsym_compunit::set_last_source_file): New method.
5287         <m_last_source_file>: New member.
5288         (prepare_for_building): Remove "name" parameter.
5289         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5290         (last_source_file): Remove.
5291         (set_last_source_file, get_last_source_file): Update.
5292
5293 2018-07-16  Tom Tromey  <tom@tromey.com>
5294
5295         * buildsym.c (prepare_for_building): Add assert.
5296
5297 2018-07-16  Tom Tromey  <tom@tromey.com>
5298
5299         * buildsym.c (~buildsym_compunit): Update.
5300         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5301         (start_subfile, patch_subfile_names)
5302         (end_symtab_with_blockvector): Update.
5303
5304 2018-07-16  Tom Tromey  <tom@tromey.com>
5305
5306         * buildsym.c (struct buildsym_compunit): Add constructor,
5307         destructor, initializers.
5308         (start_buildsym_compunit): Remove.
5309         (free_buildsym_compunit): Use "delete".
5310         (start_symtab, restart_symtab): Use "new".
5311
5312 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5313
5314         * symfile.c (set_objfile_default_section_offset): Remove struct
5315         keyword.
5316
5317 2018-07-14  Stafford Horne  <shorne@gmail.com>
5318
5319         * (Responsible Maintainers): Add myself as or1k maintainer.
5320
5321 2018-07-13  Tom Tromey  <tom@tromey.com>
5322
5323         * symfile.c (set_objfile_default_section_offset): Use extra braces
5324         around initializer.
5325
5326 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5327
5328         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5329         non-branching basr.
5330
5331 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5332
5333         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5334         unittests/cli-utils-selftests.c
5335         * unittests/cli-utils-selftests.c: New file.
5336
5337 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5338
5339         * NEWS: Mention new commands. Mention change to 'thread apply'.
5340
5341 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5342
5343         * thread.c (thr_try_catch_cmd): New function.
5344         (thread_apply_all_command): Handle qcs flags.
5345         (thread_apply_command): Handle qcs flags.
5346         (taas_command): New function.
5347         (tfaas_command): New function.
5348         (_initialize_thread): Update to setup the new commands 'taas
5349         and 'tfaas'. Change doc string for 'thread apply'.
5350
5351 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5352
5353         * stack.c: (trailing_outermost_frame): New function, mostly
5354         extracted from backtrace_command_1.
5355         (leading_innermost_frame): New function.
5356         (backtrace_command_1): Update to call trailing_outermost_frame.
5357         (frame_apply_command_count): New function.
5358         (frame_apply_level_command): New function.
5359         (frame_apply_all_command): New function.
5360         (frame_apply_command): New function.
5361         (faas_command): New function.
5362         (frame_cmd_list): New variable.
5363         (_initialize_stack): Update to setup the new commands 'frame apply'
5364         and 'faas'.
5365
5366 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5367
5368         * cli-utils.c (number_or_range_parser::get_number): Only handle
5369         numbers or convenience var as numbers.
5370         (parse_flags): New function.
5371         (parse_flags_qcs): New function.
5372         (number_or_range_parser::finished): Ensure parsing end is detected
5373         before end of string.
5374         * cli-utils.h (parse_flags): New function.
5375         (parse_flags_qcs): New function.
5376         (number_or_range_parser): Remove m_finished bool.
5377         (number_or_range_parser::skip_range): Set m_in_range to false.
5378
5379 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5380
5381         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5382         on Windows.
5383
5384 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5385             Jan Kratochvil  <jan.kratochvil@redhat.com>
5386             Paul Fertser  <fercerpav@gmail.com>
5387             Tsutomu Seki  <sekiriki@gmail.com>
5388             Pedro Alves  <palves@redhat.com>
5389
5390         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5391         'unittests/parse-connection-spec-selftests.c'.
5392         (COMMON_SFILES): Add 'common/netstuff.c'.
5393         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5394         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5395         * common/netstuff.c: New file.
5396         * common/netstuff.h: New file.
5397         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5398         (wait_for_connect): Update comment.  New parameter
5399         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5400         Use 'sock' directly instead of 'scb->fd'.
5401         (try_connect): New function, with code from 'net_open'.
5402         (net_open): Rewrite main loop to deal with multiple
5403         sockets/addresses.  Handle IPv6-style hostnames; implement
5404         support for IPv6 connections.
5405         * unittests/parse-connection-spec-selftests.c: New file.
5406
5407 2018-07-11  Pedro Alves  <palves@redhat.com>
5408
5409         PR gdb/23377
5410         * remote.c (remote_target::remote_detach_pid): Call
5411         set_current_process.
5412
5413 2018-07-11  Pedro Alves  <palves@redhat.com>
5414
5415         * h8300-tdep.c (h8300_gdbarch_init): Remove
5416         set_gdbarch_ecoff_reg_to_regnum calls.
5417
5418 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5419
5420         PR c++/23373
5421         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5422         offsets/sizes for static members of a class/struct.
5423
5424 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5425
5426         * target-descriptions.c (tdesc_register_bitsize): Rename.
5427         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5428         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5429         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5430
5431 2018-07-10  Tom Tromey  <tom@tromey.com>
5432
5433         * breakpoint.c (moribund_locations): Now static and a
5434         std::vector.
5435         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5436         (build_bpstat_chain, update_global_location_list)
5437         (breakpoint_retire_moribund): Update.
5438         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5439         VEC.
5440
5441 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5442
5443         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5444         (riscv_register_reggroup_p): Use new function, remove unneeded
5445         parenthesis.
5446         (riscv_push_dummy_call): Extend assert to compare against xlen or
5447         flen based on register type.
5448
5449 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5450
5451         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5452
5453 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5454
5455         * remote.c (show_hardware_watchpoint_limit): New function.
5456         (show_hardware_watchpoint_length_limit): New function.
5457         (show_hardware_breakpoint_limit): New function.
5458         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5459         where appropriate, update help text.
5460
5461 2018-07-09  Tom Tromey  <tom@tromey.com>
5462
5463         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5464         (CLIBS): Don't mention NAT_CLIBS.
5465
5466 2018-07-09  Tom Tromey  <tom@tromey.com>
5467
5468         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5469         (LIBGDB_OBS, clean mostlyclean): Update.
5470         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5471
5472 2018-07-09  Tom Tromey  <tom@tromey.com>
5473
5474         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5475         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5476         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5477
5478 2018-07-09  Tom Tromey  <tom@tromey.com>
5479
5480         * Makefile.in (ALLDEPFILES): Remove exec.c.
5481         (COMMON_OBS): Remove exec.o.
5482         (COMMON_SFILES): Add exec.c.
5483
5484 2018-07-09  Tom Tromey  <tom@tromey.com>
5485
5486         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5487
5488 2018-07-09  Tom Tromey  <tom@tromey.com>
5489
5490         * Makefile.in (clean mostlyclean): Remove stamp-version.
5491         (version.c): Depend on stamp-version.
5492         (stamp-version): New rule, from version.c rule.
5493
5494 2018-07-09  Tom Tromey  <tom@tromey.com>
5495
5496         * Makefile.in (init.c): Depend on stamp-init.
5497         (stamp-init): New rule, from init.c rule.
5498         (clean mostlyclean): Remove stamp-init.
5499
5500 2018-07-09  Tom Tromey  <tom@tromey.com>
5501
5502         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5503         SUBDIR_GCC_COMPILE_SRCS.
5504
5505 2018-07-09  Tom Tromey  <tom@tromey.com>
5506
5507         * Makefile.in (init.c): Remove some unused sed rules.
5508
5509 2018-07-09  Tom Tromey  <tom@tromey.com>
5510
5511         * Makefile.in (TSOBS): Remove.
5512         (INIT_FILES): Update.
5513         (LIBGDB_OBS): Update.
5514         (COMMON_SFILES): Add inflow.c.
5515         (SFILES): Remove inflow.c.
5516
5517 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5518
5519         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5520
5521 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5522
5523         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5524         get_saveloc_name, is_signal_frame_name, step_name,
5525         init_remote_name, create_addr_space_name,
5526         destroy_addr_space_name, search_unwind_table_name,
5527         find_dyn_list_name): Constify.
5528
5529 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5530
5531         * darwin-nat.c (darwin_pthread_kill): New function.
5532         (darwin_resume_thread): Use darwin_pthread_kill.
5533
5534 2018-07-05  Tom de Vries  <tdevries@suse.de>
5535
5536         * macroexp.c (macro_buffer) <operator=>: New member function.
5537
5538 2018-07-04  Tom Tromey  <tom@tromey.com>
5539
5540         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5541
5542 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5543
5544         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5545         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5546         * maint.c: Likewise.
5547         * top.c: Likewise.
5548
5549 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5550
5551         * NEWS: Create a new section for the next release branch.
5552         Rename the section of the current branch, now that it has
5553         been cut.
5554
5555 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5556
5557         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5558         * version.in: Bump version to 8.2.50.DATE-git.
5559
5560 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5561             Pedro Alves  <palves@redhat.com>
5562
5563         * linux-nat.c (linux_init_ptrace): Rename to ...
5564         (linux_init_ptrace_procfs): ... this.  Call
5565         linux_proc_init_warnings.
5566         (linux_nat_target::post_attach)
5567         (linux_nat_target::post_startup_inferior): Adjust.
5568         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5569         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5570
5571 2018-07-04  Tom de Vries  <tdevries@suse.de>
5572
5573         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5574         check ...
5575         (read_comp_unit_head): ... here.
5576
5577 2018-07-03  Tom Tromey  <tom@tromey.com>
5578
5579         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5580         (stop_tracing, tstatus_command)
5581         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5582         (print_one_static_tracepoint_marker): Update.
5583         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5584         std::vector.
5585         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5586         VEC.
5587         (all_tracepoints, static_tracepoints_here): Return std::vector.
5588
5589 2018-07-03  Tom Tromey  <tom@tromey.com>
5590
5591         * common/ptid.c (ptid_equal): Remove.
5592         * common/ptid.h (ptid_equal): Don't declare.
5593         * ada-tasks.c: Update.
5594         * breakpoint.c: Update.
5595         * common/agent.c: Update.
5596         * corelow.c: Update.
5597         * darwin-nat-info.c: Update.
5598         * darwin-nat.c: Update.
5599         * dcache.c: Update.
5600         * dtrace-probe.c: Update.
5601         * dummy-frame.c: Update.
5602         * fbsd-nat.c: Update.
5603         * frame.c: Update.
5604         * gdbthread.h: Update.
5605         * gnu-nat.c: Update.
5606         * go32-nat.c: Update.
5607         * inf-loop.c: Update.
5608         * inf-ptrace.c: Update.
5609         * infcall.c: Update.
5610         * infcmd.c: Update.
5611         * inflow.c: Update.
5612         * infrun.c: Update.
5613         * linux-fork.c: Update.
5614         * linux-nat.c: Update.
5615         * linux-thread-db.c: Update.
5616         * mi/mi-cmd-var.c: Update.
5617         * mi/mi-interp.c: Update.
5618         * mi/mi-main.c: Update.
5619         * nto-procfs.c: Update.
5620         * ppc-linux-tdep.c: Update.
5621         * procfs.c: Update.
5622         * python/py-inferior.c: Update.
5623         * python/py-record-btrace.c: Update.
5624         * python/py-record.c: Update.
5625         * ravenscar-thread.c: Update.
5626         * regcache.c: Update.
5627         * remote-sim.c: Update.
5628         * remote.c: Update.
5629         * sol-thread.c: Update.
5630         * solib.c: Update.
5631         * target.c: Update.
5632         * tui/tui-stack.c: Update.
5633         * varobj.c: Update.
5634         * windows-nat.c: Update.
5635         * windows-tdep.c: Update.
5636
5637 2018-07-03  Tom Tromey  <tom@tromey.com>
5638
5639         * common/ptid.c (ptid_match): Remove.
5640         * common/ptid.h (ptid_match): Don't declare.
5641         * fbsd-nat.c: Update.
5642         * infcmd.c: Update.
5643         * infrun.c: Update.
5644         * linux-nat.c: Update.
5645         * record-btrace.c: Update.
5646         * regcache.c: Update.
5647         * remote.c: Update.
5648
5649 2018-07-03  Tom Tromey  <tom@tromey.com>
5650
5651         * common/ptid.c (ptid_tid_p): Remove.
5652         * common/ptid.h (ptid_tid_p): Don't declare.
5653         * sol-thread.c: Update.
5654
5655 2018-07-03  Tom Tromey  <tom@tromey.com>
5656
5657         * common/ptid.c (ptid_lwp_p): Remove.
5658         * common/ptid.h (ptid_lwp_p): Don't declare.
5659         * fbsd-nat.c: Update.
5660         * linux-nat.c: Update.
5661         * nat/linux-procfs.c: Update.
5662         * nat/x86-linux-dregs.c: Update.
5663         * sol-thread.c: Update.
5664
5665 2018-07-03  Tom Tromey  <tom@tromey.com>
5666
5667         * common/ptid.c (ptid_is_pid): Remove.
5668         * common/ptid.h (ptid_is_pid): Don't declare.
5669         * infrun.c: Update.
5670         * linux-nat.c: Update.
5671         * mi/mi-interp.c: Update.
5672         * remote.c: Update.
5673         * thread.c: Update.
5674
5675 2018-07-03  Tom Tromey  <tom@tromey.com>
5676
5677         * common/ptid.c (ptid_get_tid): Remove.
5678         * common/ptid.h (ptid_get_tid): Don't declare.
5679         * ada-tasks.c: Update.
5680         * aix-thread.c: Update.
5681         * bsd-uthread.c: Update.
5682         * darwin-nat.c: Update.
5683         * fbsd-nat.c: Update.
5684         * i386-darwin-nat.c: Update.
5685         * infrun.c: Update.
5686         * linux-tdep.c: Update.
5687         * nto-procfs.c: Update.
5688         * ppc-ravenscar-thread.c: Update.
5689         * python/py-infthread.c: Update.
5690         * ravenscar-thread.c: Update.
5691         * sol-thread.c: Update.
5692         * sparc-ravenscar-thread.c: Update.
5693         * windows-nat.c: Update.
5694
5695 2018-07-03  Tom Tromey  <tom@tromey.com>
5696
5697         * common/ptid.c (ptid_get_lwp): Remove.
5698         * common/ptid.h (ptid_get_lwp): Don't declare.
5699         * aarch64-linux-nat.c: Update.
5700         * ada-tasks.c: Update.
5701         * aix-thread.c: Update.
5702         * amd64-linux-nat.c: Update.
5703         * arm-linux-nat.c: Update.
5704         * corelow.c: Update.
5705         * fbsd-nat.c: Update.
5706         * fbsd-tdep.c: Update.
5707         * gnu-nat.c: Update.
5708         * i386-cygwin-tdep.c: Update.
5709         * i386-gnu-nat.c: Update.
5710         * i386-linux-nat.c: Update.
5711         * ia64-linux-nat.c: Update.
5712         * inf-ptrace.c: Update.
5713         * infrun.c: Update.
5714         * linux-fork.c: Update.
5715         * linux-nat.c: Update.
5716         * linux-tdep.c: Update.
5717         * linux-thread-db.c: Update.
5718         * mips-linux-nat.c: Update.
5719         * nat/aarch64-linux-hw-point.c: Update.
5720         * nat/aarch64-linux.c: Update.
5721         * nat/linux-btrace.c: Update.
5722         * nat/linux-osdata.c: Update.
5723         * nat/linux-procfs.c: Update.
5724         * nat/x86-linux-dregs.c: Update.
5725         * obsd-nat.c: Update.
5726         * ppc-fbsd-nat.c: Update.
5727         * ppc-linux-nat.c: Update.
5728         * procfs.c: Update.
5729         * python/py-infthread.c: Update.
5730         * ravenscar-thread.c: Update.
5731         * remote.c: Update.
5732         * s390-linux-nat.c: Update.
5733         * sol-thread.c: Update.
5734         * sol2-tdep.c: Update.
5735         * spu-linux-nat.c: Update.
5736         * x86-linux-nat.c: Update.
5737         * xtensa-linux-nat.c: Update.
5738
5739 2018-07-03  Tom Tromey  <tom@tromey.com>
5740
5741         * common/ptid.c (ptid_get_pid): Remove.
5742         * common/ptid.h (ptid_get_pid): Don't declare.
5743         * aarch64-linux-nat.c: Update.
5744         * ada-lang.c: Update.
5745         * aix-thread.c: Update.
5746         * alpha-bsd-nat.c: Update.
5747         * amd64-fbsd-nat.c: Update.
5748         * amd64-linux-nat.c: Update.
5749         * arm-linux-nat.c: Update.
5750         * arm-nbsd-nat.c: Update.
5751         * auxv.c: Update.
5752         * break-catch-syscall.c: Update.
5753         * breakpoint.c: Update.
5754         * bsd-uthread.c: Update.
5755         * corelow.c: Update.
5756         * ctf.c: Update.
5757         * darwin-nat.c: Update.
5758         * fbsd-nat.c: Update.
5759         * fbsd-tdep.c: Update.
5760         * gcore.c: Update.
5761         * gnu-nat.c: Update.
5762         * hppa-nbsd-nat.c: Update.
5763         * hppa-obsd-nat.c: Update.
5764         * i386-fbsd-nat.c: Update.
5765         * ia64-linux-nat.c: Update.
5766         * inf-ptrace.c: Update.
5767         * infcmd.c: Update.
5768         * inferior.c: Update.
5769         * inferior.h: Update.
5770         * inflow.c: Update.
5771         * infrun.c: Update.
5772         * linux-fork.c: Update.
5773         * linux-nat.c: Update.
5774         * linux-tdep.c: Update.
5775         * linux-thread-db.c: Update.
5776         * m68k-bsd-nat.c: Update.
5777         * mi/mi-interp.c: Update.
5778         * mi/mi-main.c: Update.
5779         * mips-linux-nat.c: Update.
5780         * mips-nbsd-nat.c: Update.
5781         * mips64-obsd-nat.c: Update.
5782         * nat/aarch64-linux-hw-point.c: Update.
5783         * nat/aarch64-linux.c: Update.
5784         * nat/linux-btrace.c: Update.
5785         * nat/linux-osdata.c: Update.
5786         * nat/linux-procfs.c: Update.
5787         * nat/x86-linux-dregs.c: Update.
5788         * nto-procfs.c: Update.
5789         * obsd-nat.c: Update.
5790         * ppc-linux-nat.c: Update.
5791         * ppc-nbsd-nat.c: Update.
5792         * ppc-obsd-nat.c: Update.
5793         * proc-service.c: Update.
5794         * procfs.c: Update.
5795         * python/py-inferior.c: Update.
5796         * python/py-infthread.c: Update.
5797         * ravenscar-thread.c: Update.
5798         * record.c: Update.
5799         * remote-sim.c: Update.
5800         * remote.c: Update.
5801         * rs6000-nat.c: Update.
5802         * s390-linux-nat.c: Update.
5803         * sh-nbsd-nat.c: Update.
5804         * sol-thread.c: Update.
5805         * sparc-nat.c: Update.
5806         * sparc64-tdep.c: Update.
5807         * spu-linux-nat.c: Update.
5808         * spu-tdep.c: Update.
5809         * target-debug.h: Update.
5810         * target.c: Update.
5811         * thread.c: Update.
5812         * tid-parse.c: Update.
5813         * tracefile-tfile.c: Update.
5814         * vax-bsd-nat.c: Update.
5815         * windows-nat.c: Update.
5816         * x86-linux-nat.c: Update.
5817         * x86-nat.c: Update.
5818
5819 2018-07-03  Tom Tromey  <tom@tromey.com>
5820
5821         * common/ptid.c (pid_to_ptid): Remove.
5822         * common/ptid.h (pid_to_ptid): Don't declare.
5823         * aix-thread.c: Update.
5824         * arm-linux-nat.c: Update.
5825         * common/ptid.c: Update.
5826         * common/ptid.h: Update.
5827         * corelow.c: Update.
5828         * ctf.c: Update.
5829         * darwin-nat.c: Update.
5830         * fbsd-nat.c: Update.
5831         * fork-child.c: Update.
5832         * gnu-nat.c: Update.
5833         * go32-nat.c: Update.
5834         * inf-ptrace.c: Update.
5835         * infcmd.c: Update.
5836         * inferior.c: Update.
5837         * infrun.c: Update.
5838         * linux-fork.c: Update.
5839         * linux-nat.c: Update.
5840         * nat/aarch64-linux-hw-point.c: Update.
5841         * nat/fork-inferior.c: Update.
5842         * nat/x86-linux-dregs.c: Update.
5843         * nto-procfs.c: Update.
5844         * obsd-nat.c: Update.
5845         * procfs.c: Update.
5846         * progspace.c: Update.
5847         * remote.c: Update.
5848         * rs6000-nat.c: Update.
5849         * s390-linux-nat.c: Update.
5850         * sol-thread.c: Update.
5851         * spu-linux-nat.c: Update.
5852         * target.c: Update.
5853         * top.c: Update.
5854         * tracefile-tfile.c: Update.
5855         * windows-nat.c: Update.
5856
5857 2018-07-03  Tom Tromey  <tom@tromey.com>
5858
5859         * common/ptid.h (ptid_build): Don't declare.
5860         * common/ptid.c (ptid_build): Remove.
5861         * aix-thread.c: Update.
5862         * bsd-kvm.c: Update.
5863         * bsd-uthread.c: Update.
5864         * common/agent.c: Update.
5865         * common/ptid.c: Update.
5866         * common/ptid.h: Update.
5867         * corelow.c: Update.
5868         * darwin-nat.c: Update.
5869         * fbsd-nat.c: Update.
5870         * gnu-nat.c: Update.
5871         * linux-fork.c: Update.
5872         * linux-nat.c: Update.
5873         * linux-thread-db.c: Update.
5874         * nat/linux-osdata.c: Update.
5875         * nat/linux-procfs.c: Update.
5876         * nto-procfs.c: Update.
5877         * obsd-nat.c: Update.
5878         * proc-service.c: Update.
5879         * procfs.c: Update.
5880         * ravenscar-thread.c: Update.
5881         * remote-sim.c: Update.
5882         * remote.c: Update.
5883         * sol-thread.c: Update.
5884         * target.c: Update.
5885         * windows-nat.c: Update.
5886
5887 2018-07-03  Tom Tromey  <tom@tromey.com>
5888
5889         * infrun.c (follow_exec): Use exit_inferior_silent.
5890         * inferior.c (exit_inferior_num_silent): Remove.
5891         * inferior.h (exit_inferior_num_silent): Don't declare.
5892
5893 2018-07-03  Tom Tromey  <tom@tromey.com>
5894
5895         PR cli/23340:
5896         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5897         inferior_ptid on error.
5898
5899 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5900             Simon Marchi  <simon.marchi@polymtl.ca>
5901
5902         PR tdep/8282
5903         * disasm.h (gdb_disassembler): Add
5904         `m_disassembler_options_holder'. member
5905         * disasm.c (get_all_disassembler_options): New function.
5906         (gdb_disassembler::gdb_disassembler): Use it.
5907         (gdb_buffered_insn_length_init_dis): Likewise.
5908         (gdb_buffered_insn_length): Adjust accordingly.
5909         (set_disassembler_options): Handle options with arguments.
5910         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5911         line if showing options with descriptions.
5912         (disassembler_options_completer): Adapt to using the
5913         `disasm_options_and_args_t' structure.
5914         * mips-tdep.c (mips_disassembler_options): New variable.
5915         (mips_disassembler_options_o32): Likewise.
5916         (mips_disassembler_options_n32): Likewise.
5917         (mips_disassembler_options_n64): Likewise.
5918         (gdb_print_insn_mips): Don't set `disassembler_options'.
5919         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5920         functions.
5921         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5922         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5923         `gdbarch_disassembler_options_implicit' and
5924         `gdbarch_valid_disassembler_options'.
5925         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5926         `disasm_options_and_args_t' structure.
5927         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5928         method.
5929         (valid_disassembler_options): Switch from `disasm_options_t' to
5930         the `disasm_options_and_args_t' structure.
5931         * NEWS: Document `set disassembler-options' support for the MIPS
5932         target.
5933         * gdbarch.h: Regenerate.
5934         * gdbarch.c: Regenerate.
5935
5936 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5937
5938         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5939
5940 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5941
5942         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5943         parameter in call to amd64_target_description.
5944         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5945         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5946         (amd64fbsd_init_abi): Likewise.
5947         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5948         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5949         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5950         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5951
5952 2018-06-29  Pedro Alves  <palves@redhat.com>
5953
5954         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5955         "segments" parameter.
5956         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5957         (_initialize_amd64_tdep): Update call to
5958         amd64_create_target_description.
5959         (amd64_target_description): Add "segments" parameter.  Adjust
5960         the implementation to use it.
5961         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5962         call to amd64_create_target_description.
5963         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5964         * gdb/arch/amd64.h (amd64_create_target_description): Add
5965         "segments" register.
5966         * gdb/arch/amd64.c (amd64_create_target_description): Add
5967         "segments" parameter.  Call create_feature_i386_64bit_segments
5968         only if SEGMENTS is true.
5969         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5970         call to amd64_create_target_description.
5971
5972 2018-06-29  Pedro Alves  <palves@redhat.com>
5973
5974         * thread.c (thread_target_id_str): New, factored out from ...
5975         (print_thread_info_1): ... here.  Use it to compute the max
5976         "Target Id" column width.
5977
5978 2018-06-29  Pedro Alves  <palves@redhat.com>
5979
5980         * remote.c (remote_target::extra_thread_info): Delete
5981         'display_buf' and 'n' locals.  from the cache, regardless of
5982         packet mechanims is in use.  Use cache for qThreadExtra and qP
5983         methods too.
5984
5985 2018-06-29  Pedro Alves  <palves@redhat.com>
5986
5987         * blockframe.c (find_pc_sect_containing_function): New function.
5988         * breakpoint.c (print_breakpoint_location): Don't call
5989         find_pc_sect_function.
5990         * linespec.c (create_sals_line_offset): Record the location's
5991         symbol in the sal.
5992         * linespec.c (convert_address_location_to_sals): Fill in sal's
5993         symbol with find_pc_sect_containing_function.
5994         * symtab.c (find_function_start_sal): Rename to ...
5995         (find_function_start_sal_1): ... this.
5996         (find_function_start_sal): Reimplement as wrapper around
5997         find_function_start_sal_1, and use
5998         find_pc_sect_containing_function to fill in the sal's symbol.
5999         (find_function_start_sal(symbol*, bool)): Adjust.
6000         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
6001         comments.
6002         (find_pc_sect_containing_function): Declare.
6003
6004 2018-06-29  Pedro Alves  <palves@redhat.com>
6005
6006         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
6007         true if the the location has no symbol.
6008
6009 2018-06-28  Tom Tromey  <tom@tromey.com>
6010
6011         * NEWS: Mention --enable-codesign.
6012         * silent-rules.mk (ECHO_SIGN): New variable.
6013         * configure.ac: Add --enable-codesign.
6014         * configure: Rebuild.
6015         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
6016         (gdb$(EXEEXT)): Optionally invoke codesign.
6017
6018 2018-06-28  Pedro Alves  <palves@redhat.com>
6019
6020         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
6021         comments.
6022         (switch_to_thread_no_regs): Adjust comment.
6023         * infcmd.c (stop_pc): Delete.
6024         (post_create_inferior, info_program_command): Replace references
6025         to stop_pc with references to thread_info->suspend.stop_pc.
6026         * inferior.h (stop_pc): Delete declaration.
6027         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
6028         (handle_inferior_event_1, handle_signal_stop)
6029         (process_event_stop_test, keep_going_stepped_thread)
6030         (handle_step_into_function, handle_step_into_function_backward)
6031         (print_stop_location): Replace references to stop_pc with
6032         references to thread_info->suspend.stop_pc.
6033         (struct infcall_suspend_state) <stop_pc>: Delete field.
6034         (save_infcall_suspend_state, restore_infcall_suspend_state):
6035         Remove references to inf_stat->stop_pc.
6036         * linux-fork.c (fork_load_infrun_state): Likewise.
6037         * record-btrace.c (record_btrace_set_replay): Likewise.
6038         * record-full.c (record_full_goto_entry): Likewise.
6039         * remote.c (print_one_stopped_thread): Likewise.
6040         * target.c (target_resume): Extend comment.
6041         * thread.c (set_executing_thread): New.
6042         (set_executing): Use it.
6043         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
6044         Remove references to stop_pc.
6045
6046 2018-06-28  Pedro Alves  <palves@redhat.com>
6047
6048         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
6049         Moving fetching stop_pc until after ecs->event_thread is refreshed.
6050
6051 2018-06-28  Tom Tromey  <tom@tromey.com>
6052
6053         * coffread.c (coff_symfile_finish): Update.
6054         * xcoffread.c (xcoff_symfile_finish): Update.
6055         * elfread.c (elf_symfile_finish): Update.
6056         * symfile.h (dwarf2_free_objfile): Don't declare.
6057         * dwarf2read.c (_initialize_dwarf2_read): Use
6058         register_objfile_data_with_cleanup.
6059         (dwarf2_free_objfile): Now static.  Change signature.
6060
6061 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6062
6063         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
6064         option "-o" to add-symbol-file-load to add an offset to each
6065         section's load address.
6066         * symfile.c (set_objfile_default_section_offset): New function.
6067
6068 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6069
6070         * symfile.c (add_symbol_file_command): Make sure that sections
6071         with the same name are sorted in the same order.
6072
6073 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6074
6075         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6076         require the second argument.  If omitted, load sections at the
6077         addresses specified in the file.
6078
6079 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6080
6081         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6082         (_initialize_symfile): Add option "-o" to symbol-file to add an
6083         offset to each section of the symbol file.
6084
6085 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6086
6087         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6088
6089 2018-06-27  Tom Tromey  <tom@tromey.com>
6090
6091         * stack.c (_initialize_stack): Update "func" help text.
6092
6093 2018-06-27  Tom Tromey  <tom@tromey.com>
6094
6095         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6096         std::vector.
6097         (unwind_infopy_str, pyuw_create_unwind_info)
6098         (unwind_infopy_add_saved_register, pyuw_sniffer)
6099         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6100         Update.
6101         (struct saved_reg): Add constructor.
6102         <value>: Now a gdbpy_ref<>.
6103
6104 2018-06-27  Tom Tromey  <tom@tromey.com>
6105
6106         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6107
6108 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6109
6110         * gdb-gdb.py.in: Format using autopep8.
6111
6112 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6113
6114         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6115         (type_lookup_function): Recognize CORE_ADDR values.
6116
6117 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6118
6119         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6120         print tag_name.
6121
6122 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6123
6124         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6125         <__lt__>: Add.
6126
6127 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6128
6129         * gdb-gdb.py: Move to...
6130         * gdb-gdb.py.in: ... here.
6131         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6132         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6133         dependencies.
6134         (distclean): Remove gdb-gdb.py when cleaning.
6135         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6136         * configure: Re-generate.
6137
6138 2018-06-27  Pedro Alves  <palves@redhat.com>
6139
6140         * proc-service.c (get_ps_regcache): New.
6141         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6142         (ps_lsetfpregs): Use it.
6143
6144 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6145
6146         PR gdb/21695
6147         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6148         (dwarf_decode_lines_1): Adjust.
6149
6150 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6151
6152         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6153         override.
6154         <info_proc>: Likewise.
6155
6156 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6157
6158         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6159         to windows_fetch_one_register, and only handle the case of
6160         fetching one register.  Move the code that reloads the context
6161         and iterates over all registers if R is negative to...
6162         (windows_nat_target::fetch_registers): ... here.
6163         (do_windows_store_inferior_registers): Rename to
6164         windows_store_one_register, and only handle the case of storing
6165         one register.  Move the code that handles the case where r is
6166         negative to...
6167         (windows_nat_target::store_registers) ... here.
6168
6169 2018-06-26  Tom Tromey  <tom@tromey.com>
6170
6171         PR rust/22574:
6172         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6173         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6174         Update.
6175         (rust_internal_print_type): Add podata parameter.
6176         (rust_print_type): Update.
6177
6178 2018-06-26  Tom Tromey  <tom@tromey.com>
6179
6180         * typeprint.h (struct print_offset_data) <update, finish,
6181         maybe_print_hole>: New methods.
6182         <indentation>: New constant.
6183         * typeprint.c (print_offset_data::indentation): Define.
6184         (print_offset_data::maybe_print_hole, print_offset_data::update)
6185         (print_offset_data::finish): Move from c-typeprint.c and rename.
6186         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6187         (print_spaces_filtered_with_print_options): Update.
6188         (c_print_type_union_field_offset, maybe_print_hole)
6189         (c_print_type_struct_field_offset): Move to typeprint.c and
6190         rename.
6191         (c_type_print_base_struct_union): Update.
6192
6193 2018-06-25  Pedro Alves  <palves@redhat.com>
6194
6195         * gdbthread.h (thread_info_ref, delete_thread)
6196         (delete_thread_silent, first_thread_of_inferior)
6197         (any_thread_of_inferior, switch_to_thread)
6198         (enable_thread_stack_temporaries)
6199         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6200         (get_last_thread_stack_temporary)
6201         (value_in_thread_stack_temporaries, can_access_registers_thread):
6202         Spell out "struct thread_info" instead of just "thread_info".
6203         * inferior.h (notice_new_inferior): Likewise.
6204
6205 2018-06-25  Pedro Alves  <palves@redhat.com>
6206
6207         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6208         pass thread_info pointer to delete_thread.
6209         (windows_nat_target::detach): Pass inferior pointer to
6210         detach_inferior.
6211         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6212         delete_thread.
6213         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6214         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6215         and pass a thread_info pointer to delete_thread.
6216         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6217         pass thread_info pointer to delete_thread.
6218         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6219         delete_thread_silent call.
6220         * procfs.c (procfs_target::detach): Pass inferior pointer to
6221         detach_inferior.
6222         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6223         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6224         delete_thread_silent call.
6225         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6226         pass thread_info pointer to delete_thread.
6227         (windows_nat_target::detach): Pass inferior pointer to
6228         delete_inferior.
6229
6230 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6231
6232         * regcache.c (readable_regcache::read_part): Fix asserts.
6233         (reg_buffer::raw_collect_part): New function.
6234         (regcache::write_part): Fix asserts.
6235         (reg_buffer::raw_supply_part): New function.
6236         (regcache::transfer_regset_register): New helper function.
6237         (regcache::transfer_regset): Call new functions.
6238         (regcache_supply_regset): Use gdb_byte*.
6239         (regcache::supply_regset): Likewise.
6240         (regcache_collect_regset): Likewise.
6241         (regcache::collect_regset): Likewise.
6242         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6243         (reg_buffer::raw_supply_part): Likewise.
6244         (regcache::transfer_regset_register): Likewise.
6245         (regcache::transfer_regset): Use gdb_byte*.
6246
6247 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6248
6249         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6250
6251 2018-06-21  Pedro Alves  <palves@redhat.com>
6252
6253         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6254         instead of a ptid_t.  All callers adjusted.
6255         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6256         adjusted.
6257         (print_ada_task_info, display_current_task_id, task_command_1):
6258         Adjust.
6259         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6260         inferior_thread.
6261         (breakpoint_kind): Adjust.
6262         (remove_breakpoints_pid): Rename to ...
6263         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6264         pointer.  All callers adjusted.
6265         (bpstat_clear_actions): Use inferior_thread.
6266         (get_bpstat_thread): New.
6267         (bpstat_do_actions): Use it.
6268         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6269         to take a thread_info pointer.  All callers adjusted.
6270         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6271         (breakpoint_re_set_thread): Use inferior_thread.
6272         * breakpoint.h (struct inferior): Forward declare.
6273         (bpstat_stop_status): Update.
6274         (remove_breakpoints_pid): Delete.
6275         (remove_breakpoints_inf): New.
6276         * bsd-uthread.c (bsd_uthread_target::wait)
6277         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6278         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6279         (maint_btrace_packet_history_cmd)
6280         (maint_btrace_clear_packet_history_cmd): Adjust.
6281         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6282         inferior_thread.
6283         * cli/cli-interp.c: Include "inferior.h".
6284         * common/refcounted-object.h (struct
6285         refcounted_object_ref_policy): New.
6286         * compile/compile-object-load.c: Include gdbthread.h.
6287         (store_regs): Use inferior_thread.
6288         * corelow.c (core_target::close): Use current_inferior.
6289         (core_target_open): Adjust to use first_thread_of_inferior and use
6290         the current inferior.
6291         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6292         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6293         <thread>: ... this new field.  All references adjusted.
6294         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6295         Take a thread_info pointer instead of a ptid_t.
6296         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6297         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6298         thread_info pointer instead of a ptid_t.
6299         * elfread.c: Include "inferior.h".
6300         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6301         Use inferior_thread.
6302         * eval.c (evaluate_subexp): Likewise.
6303         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6304         inferior_thread.
6305         * gdb_proc_service.h (struct thread_info): Forward declare.
6306         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6307         <thread>: ... this new field.  All references adjusted.
6308         * gdbarch.h, gdbarch.c: Regenerate.
6309         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6310         'thread' parameter.  All implementations and callers adjusted.
6311         * gdbthread.h (thread_info) <set_running>: New method.
6312         (delete_thread, delete_thread_silent): Take a thread_info pointer
6313         instead of a ptid.
6314         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6315         (first_thread_of_process): Delete, replaced by ...
6316         (first_thread_of_inferior): ... this new function.  All callers
6317         adjusted.
6318         (any_live_thread_of_process): Delete, replaced by ...
6319         (any_live_thread_of_inferior): ... this new function.  All callers
6320         adjusted.
6321         (switch_to_thread, switch_to_no_thread): Declare.
6322         (is_executing): Delete.
6323         (enable_thread_stack_temporaries): Update comment.
6324         <enable_thread_stack_temporaries>: Take a thread_info pointer
6325         instead of a ptid_t.  Incref the thread.
6326         <~enable_thread_stack_temporaries>: Decref the thread.
6327         <m_ptid>: Delete
6328         <m_thr>: New.
6329         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6330         (get_last_thread_stack_temporary)
6331         (value_in_thread_stack_temporaries, can_access_registers_thread):
6332         Take a thread_info pointer instead of a ptid_t.  All callers
6333         adjusted.
6334         * infcall.c (get_call_return_value): Use inferior_thread.
6335         (run_inferior_call): Work with thread pointers instead of ptid_t.
6336         (call_function_by_hand_dummy): Work with thread pointers instead
6337         of ptid_t.  Use thread_info_ref.
6338         * infcmd.c (proceed_thread_callback): Access thread's state
6339         directly.
6340         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6341         access thread's state directly.
6342         (continue_command): Use inferior_thread.
6343         (info_program_command): Use find_thread_ptid and access thread
6344         state directly.
6345         (proceed_after_attach_callback): Use thread state directly.
6346         (notice_new_inferior): Take a thread_info pointer instead of a
6347         ptid_t.  All callers adjusted.
6348         (exit_inferior): Take an inferior pointer instead of a pid.  All
6349         callers adjusted.
6350         (exit_inferior_silent): New.
6351         (detach_inferior): Delete.
6352         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6353         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6354         (detach_inferior_command, kill_inferior_command): Use
6355         find_inferior_id instead of valid_gdb_inferior_id and
6356         gdb_inferior_id_to_pid.
6357         (inferior_command): Use inferior and thread pointers.
6358         * inferior.h (struct thread_info): Forward declare.
6359         (notice_new_inferior): Take a thread_info pointer instead of a
6360         ptid_t.  All callers adjusted.
6361         (detach_inferior): Delete declaration.
6362         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6363         instead of a pid.  All callers adjusted.
6364         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6365         (valid_gdb_inferior_id): Delete.
6366         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6367         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6368         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6369         ...
6370         <inf>: ... this new field.
6371         <step_ptid>: Delete, replaced by ...
6372         <step_thread>: ... this new field.
6373         (get_displaced_stepping_state): Take an inferior pointer instead
6374         of a pid.  All callers adjusted.
6375         (displaced_step_in_progress_any_inferior): Adjust.
6376         (displaced_step_in_progress_thread): Take a thread pointer instead
6377         of a ptid_t.  All callers adjusted.
6378         (displaced_step_in_progress, add_displaced_stepping_state): Take
6379         an inferior pointer instead of a pid.  All callers adjusted.
6380         (get_displaced_step_closure_by_addr): Adjust.
6381         (remove_displaced_stepping_state): Take an inferior pointer
6382         instead of a pid.  All callers adjusted.
6383         (displaced_step_prepare_throw, displaced_step_prepare)
6384         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6385         All callers adjusted.
6386         (start_step_over): Adjust.
6387         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6388         displaced step queue.
6389         (do_target_resume): Adjust.
6390         (fetch_inferior_event): Use inferior_thread.
6391         (context_switch, get_inferior_stop_soon): Take an
6392         execution_control_state pointer instead of a ptid_t.  All callers
6393         adjusted.
6394         (switch_to_thread_cleanup): Delete.
6395         (stop_all_threads): Use scoped_restore_current_thread.
6396         * inline-frame.c: Include "gdbthread.h".
6397         (inline_state) <inline_state>: Take a thread pointer instead of a
6398         ptid_t.  All callers adjusted.
6399         <ptid>: Delete, replaced by ...
6400         <thread>: ... this new field.
6401         (find_inline_frame_state): Take a thread pointer instead of a
6402         ptid_t.  All callers adjusted.
6403         (skip_inline_frames, step_into_inline_frame)
6404         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6405         pointer instead of a ptid_t.  All callers adjusted.
6406         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6407         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6408         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6409         pointers directly.
6410         * linux-nat.c (get_detach_signal): Likewise.
6411         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6412         (thread_db_notice_clone): Adjust.
6413         (thread_db_find_new_threads_silently)
6414         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6415         a thread pointer instead of a ptid_t.  All callers adjusted.
6416         * mi/mi-cmd-var.c: Include "inferior.h".
6417         (mi_cmd_var_update_iter): Update to use thread pointers.
6418         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6419         inferior directly.
6420         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6421         out to ...
6422         (mi_output_running): ... this new function.
6423         (mi_on_resume_1): Adjust to use it.
6424         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6425         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6426         directly.
6427         (interrupt_thread_callback): : Adjust to use thread and inferior
6428         pointers.
6429         * proc-service.c: Include "gdbthread.h".
6430         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6431         * progspace-and-thread.c: Include "inferior.h".
6432         * progspace.c: Include "inferior.h".
6433         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6434         hold a reference to an inferior_object.
6435         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6436         inferior_thread.
6437         * python/py-inferior.c (struct inferior_object): Give the type a
6438         tag name instead of a typedef.
6439         (python_on_normal_stop): No need to check if the current thread is
6440         listed.
6441         (inferior_to_inferior_object): Change return type to
6442         inferior_object.  All callers adjusted.
6443         (find_thread_object): Delete, bits factored out to ...
6444         (thread_to_thread_object): ... this new function.
6445         * python/py-infthread.c (create_thread_object): Use
6446         inferior_to_inferior_object.
6447         (thpy_is_stopped): Use thread pointer directly.
6448         (gdbpy_selected_thread): Use inferior_thread.
6449         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6450         field, replaced with ...
6451         <thread>: ... this new field.  All users adjusted.
6452         (btpy_insn_or_gap_new): Drop const.
6453         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6454         callers adjusted.
6455         * python/py-record.c: Include "gdbthread.h".
6456         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6457         a ptid_t.  All callers adjusted.
6458         (gdbpy_current_recording): Use inferior_thread.
6459         * python/py-record.h (recpy_record_object) <ptid>: Delete
6460         field, replaced with ...
6461         <thread>: ... this new field.  All users adjusted.
6462         (recpy_element_object) <ptid>: Delete
6463         field, replaced with ...
6464         <thread>: ... this new field.  All users adjusted.
6465         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6466         a ptid_t.  All callers adjusted.
6467         * python/py-threadevent.c: Include "gdbthread.h".
6468         (get_event_thread): Use thread_to_thread_object.
6469         * python/python-internal.h (struct inferior_object): Forward
6470         declare.
6471         (find_thread_object, find_inferior_object): Delete declarations.
6472         (thread_to_thread_object, inferior_to_inferior_object): New
6473         declarations.
6474         * record-btrace.c: Include "inferior.h".
6475         (require_btrace_thread): Use inferior_thread.
6476         (record_btrace_frame_sniffer)
6477         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6478         (get_thread_current_frame): Use scoped_restore_current_thread and
6479         switch_to_thread.
6480         (get_thread_current_frame): Use thread pointer directly.
6481         (record_btrace_replay_at_breakpoint): Use thread's inferior
6482         pointer directly.
6483         * record-full.c: Include "inferior.h".
6484         * regcache.c: Include "gdbthread.h".
6485         (get_thread_arch_regcache): Use the inferior's address space
6486         directly.
6487         (get_thread_regcache, registers_changed_thread): New.
6488         * regcache.h (get_thread_regcache(thread_info *thread)): New
6489         overload.
6490         (registers_changed_thread): New.
6491         (remote_target) <remote_detach_1>: Swap order of parameters.
6492         (remote_add_thread): <remote_add_thread>: Return the new thread.
6493         (get_remote_thread_info(ptid_t)): New overload.
6494         (remote_target::remote_notice_new_inferior): Use thread pointers
6495         directly.
6496         (remote_target::process_initial_stop_replies): Use
6497         thread_info::set_running.
6498         (remote_target::remote_detach_1, remote_target::detach)
6499         (extended_remote_target::detach): Adjust.
6500         * stack.c (frame_show_address): Use inferior_thread.
6501         * target-debug.h (target_debug_print_thread_info_pp): New.
6502         * target-delegates.c: Regenerate.
6503         * target.c (default_thread_address_space): Delete.
6504         (memory_xfer_partial_1): Use current_inferior.
6505         (target_detach): Use current_inferior.
6506         (target_thread_address_space): Delete.
6507         (generic_mourn_inferior): Use current_inferior.
6508         * target.h (struct target_ops) <thread_address_space>: Delete.
6509         (target_thread_address_space): Delete.
6510         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6511         pointers directly.
6512         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6513         thread pointer instead of a ptid_t.  Adjust all callers.
6514         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6515         (first_thread_of_process): Delete, replaced by ...
6516         (first_thread_of_inferior): ... this new function.  All callers
6517         adjusted.
6518         (any_thread_of_process): Rename to ...
6519         (any_thread_of_inferior): ... this, and take an inferior pointer.
6520         (any_live_thread_of_process): Rename to ...
6521         (any_live_thread_of_inferior): ... this, and take an inferior
6522         pointer.
6523         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6524         (value_in_thread_stack_temporaries)
6525         (get_last_thread_stack_temporary): Take a thread pointer instead
6526         of a ptid_t.  Adjust all callers.
6527         (thread_info::set_running): New.
6528         (validate_registers_access): Use inferior_thread.
6529         (can_access_registers_ptid): Rename to ...
6530         (can_access_registers_thread): ... this, and take a thread
6531         pointer.
6532         (print_thread_info_1): Adjust to compare thread pointers instead
6533         of ptids.
6534         (switch_to_no_thread, switch_to_thread): Make extern.
6535         (scoped_restore_current_thread::~scoped_restore_current_thread):
6536         Use m_thread pointer directly.
6537         (scoped_restore_current_thread::scoped_restore_current_thread):
6538         Use inferior_thread.
6539         (thread_command): Use thread pointer directly.
6540         (thread_num_make_value_helper): Use inferior_thread.
6541         * top.c (execute_command): Use inferior_thread.
6542         * tui/tui-interp.c: Include "inferior.h".
6543         * varobj.c (varobj_create): Use inferior_thread.
6544         (value_of_root_1): Use find_thread_global_id instead of
6545         global_thread_id_to_ptid.
6546
6547 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6548
6549         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6550         possible.
6551         (regcache::write_part): Likewise.
6552         (readable_regcache::cooked_read_part): Update comment.
6553         (readable_regcache::cooked_write_part): Likewise.
6554         * regcache.h: (readable_regcache::read_part): Likewise.
6555         (regcache::write_part): Likewise.
6556
6557 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6558             Dirk Schubert  <dirk.schubert@arm.com>
6559
6560         * aarch64-linux-nat.c (post_attach): New.
6561         (aarch64_linux_nat_target::post_attach): Override post_attach to
6562         record the number of hardware debug registers.
6563
6564 2018-06-20  Tom Tromey  <tom@tromey.com>
6565
6566         * python/py-param.c (add_setshow_generic): Make parameters const.
6567         (parmpy_init): Update.
6568
6569 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6570
6571         * regcache.h (regcache_cooked_read_ftype): Rename to...
6572         (register_read_ftype): ...this, change type to function_view.
6573         (class reg_buffer) <save>: Remove src parameter.
6574         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6575         parameter non-const in first overload.  Remove src parameter in
6576         second overload.
6577         * regcache.c (do_cooked_read): Remove.
6578         (readonly_detached_regcache::readonly_detached_regcache): Make
6579         parameter non-const, adjust call to other constructor.
6580         (reg_buffer::save): Remove src parameter.
6581         * frame.c (do_frame_register_read): Remove.
6582         (frame_save_as_regcache): Use lambda function.
6583         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6584         parameter to ppu2spu_data *.
6585         (ppu2spu_sniffer): Use lambda function.
6586
6587 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6588
6589         * record-full.c (record_full_target::insert_breakpoint): Remove
6590         "struct" keyword, add const.
6591
6592 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6593
6594         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6595         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6596         * configure.ac: Remove AC_PREREQ, add missing quoting.
6597         * gnulib/configure.ac: Modernize usage of
6598         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6599         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6600         (AUTOMAKE_VERSION): Bump to 1.15.1.
6601         * configure: Re-generate.
6602         * config.in: Re-generate.
6603         * aclocal.m4: Re-generate.
6604         * gnulib/aclocal.m4: Re-generate.
6605         * gnulib/config.in: Re-generate.
6606         * gnulib/configure: Re-generate.
6607         * gnulib/import/Makefile.in: Re-generate.
6608
6609 2018-06-19  Pedro Alves  <palves@redhat.com>
6610
6611         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6612         (lookup_minimal_symbol_by_pc_section): ... here with
6613         gdb_assert_not_reached added.
6614
6615 2018-06-19  Pedro Alves  <palves@redhat.com>
6616
6617         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6618         parameter with a block parameter.  Compare location's block symbol
6619         with the frame's block instead of addresses.
6620         (skip_inline_frames): Pass the current block instead of the
6621         frame's address.  Break out as soon as we determine the frame
6622         should not be skipped.
6623
6624 2018-06-18  Tom Tromey  <tom@tromey.com>
6625
6626         * solib-aix.c (solib_aix_get_section_offsets): Return
6627         unique_xmalloc_ptr.
6628         (solib_aix_solib_create_inferior_hook): Update.
6629
6630 2018-06-18  Tom Tromey  <tom@tromey.com>
6631
6632         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6633
6634 2018-06-18  Tom Tromey  <tom@tromey.com>
6635
6636         * solib-frv.c (frv_relocate_main_executable): Use
6637         unique_xmalloc_ptr.
6638         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6639         unique_xmalloc_ptr.
6640
6641 2018-06-18  Tom Tromey  <tom@tromey.com>
6642
6643         * objfiles.h (inhibit_section_map_updates): Update.
6644         (resume_section_map_updates, resume_section_map_updates_cleanup):
6645         Remove.
6646         * solib-svr4.c (svr4_handle_solib_event): Update.
6647         * objfiles.c (inhibit_section_map_updates): Return
6648         scoped_restore_tmpl<int>.
6649         (resume_section_map_updates, resume_section_map_updates_cleanup):
6650         Remove.
6651
6652 2018-06-18  Tom Tromey  <tom@tromey.com>
6653
6654         * valprint.h (read_string): Update.
6655         * valprint.c (read_string): Change type of "buffer".
6656         (val_print_string): Update.
6657         * python/py-value.c (valpy_string): Update.
6658         * language.h (struct language_defn) <la_get_string>: Change
6659         type of "buffer".
6660         (default_get_string, c_get_string): Update.
6661         * language.c (default_get_string): Change type of "buffer".
6662         * guile/scm-value.c (gdbscm_value_to_string): Update.
6663         * c-lang.c (c_get_string): Change type of "buffer".
6664
6665 2018-06-18  Tom Tromey  <tom@tromey.com>
6666
6667         * ser-mingw.c (struct pipe_state_destroyer): New.
6668         (pipe_state_up): New typedef.
6669         (cleanup_pipe_state): Remove.
6670         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6671
6672 2018-06-18  Tom Tromey  <tom@tromey.com>
6673
6674         * rust-lang.h (rust_yyerror): Don't declare.
6675         * rust-lang.c (rust_language_defn): Update.
6676         * rust-exp.y (yyerror): Now static.
6677         * parse.c (parse_exp_in_context_1): Update.
6678         * p-lang.h (p_yyerror): Don't declare.
6679         * p-lang.c (p_language_defn): Update.
6680         * p-exp.y (yyerror): Now static.
6681         * opencl-lang.c (opencl_language_defn): Update.
6682         * objc-lang.c (objc_language_defn): Update.
6683         * m2-lang.h (m2_yyerror): Don't declare.
6684         * m2-lang.c (m2_language_defn): Update.
6685         * m2-exp.y (yyerror): Now static.
6686         * language.h (struct language_defn) <la_error>: Remove.
6687         * language.c (unk_lang_error): Remove.
6688         (unknown_language_defn, auto_language_defn): Remove.
6689         * go-lang.h (go_yyerror): Don't declare.
6690         * go-lang.c (go_language_defn): Update.
6691         * go-exp.y (yyerror): Now static.
6692         * f-lang.h (f_yyerror): Don't declare.
6693         * f-lang.c (f_language_defn): Update.
6694         * f-exp.y (yyerror): Now static.
6695         * d-lang.h (d_yyerror): Don't declare.
6696         * d-lang.c (d_language_defn): Update.
6697         * d-exp.y (yyerror): Now static.
6698         * c-lang.h (c_yyerror): Don't declare.
6699         * c-lang.c (c_language_defn, cplus_language_defn)
6700         (asm_language_defn, minimal_language_defn): Update.
6701         * c-exp.y (yyerror): Now static.
6702         * ada-lang.h (ada_yyerror): Don't declare.
6703         * ada-lang.c (ada_language_defn): Update.
6704         * ada-exp.y (yyerror): Now static.
6705
6706 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6707
6708         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6709         (store_sveregs_to_thread): Likewise.
6710         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6711         (aarch64_linux_store_inferior_registers): Likewise.
6712         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6713         function.
6714         (aarch64_sve_regs_copy_to_regcache): Likewise.
6715         (aarch64_sve_regs_copy_from_regcache): Likewise.
6716         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6717         declaration.
6718         (aarch64_sve_regs_copy_to_regcache): Likewise.
6719         (aarch64_sve_regs_copy_from_regcache): Likewise.
6720         (sve_context): Structure from Linux headers.
6721         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6722         (SVE_SIG_ZREG_SIZE): Likewise.
6723         (SVE_SIG_PREG_SIZE): Likewise.
6724         (SVE_SIG_FFR_SIZE): Likewise.
6725         (SVE_SIG_REGS_OFFSET): Likewise.
6726         (SVE_SIG_ZREGS_OFFSET): Likewise.
6727         (SVE_SIG_ZREG_OFFSET): Likewise.
6728         (SVE_SIG_ZREGS_SIZE): Likewise.
6729         (SVE_SIG_PREGS_OFFSET): Likewise.
6730         (SVE_SIG_PREG_OFFSET): Likewise.
6731         (SVE_SIG_PREGS_SIZE): Likewise.
6732         (SVE_SIG_FFR_OFFSET): Likewise.
6733         (SVE_SIG_REGS_SIZE): Likewise.
6734         (SVE_SIG_CONTEXT_SIZE): Likewise.
6735         (SVE_PT_REGS_MASK): Likewise.
6736         (SVE_PT_REGS_FPSIMD): Likewise.
6737         (SVE_PT_REGS_SVE): Likewise.
6738         (SVE_PT_VL_INHERIT): Likewise.
6739         (SVE_PT_VL_ONEXEC): Likewise.
6740         (SVE_PT_REGS_OFFSET): Likewise.
6741         (SVE_PT_FPSIMD_OFFSET): Likewise.
6742         (SVE_PT_FPSIMD_SIZE): Likewise.
6743         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6744         (SVE_PT_SVE_PREG_SIZE): Likewise.
6745         (SVE_PT_SVE_FFR_SIZE): Likewise.
6746         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6747         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6748         (__SVE_SIG_TO_PT): Likewise.
6749         (SVE_PT_SVE_OFFSET): Likewise.
6750         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6751         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6752         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6753         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6754         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6755         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6756         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6757         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6758         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6759         (SVE_PT_SVE_SIZE): Likewise.
6760         (SVE_PT_SIZE): Likewise.
6761         (HAS_SVE_STATE): New define.
6762
6763 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6764
6765         * nat/aarch64-sve-linux-sigcontext.h: New file.
6766         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6767         new files.
6768         (SVE_VQ_MIN): Likewise.
6769         (SVE_VQ_MAX): Likewise.
6770         (SVE_VL_MIN): Likewise.
6771         (SVE_VL_MAX): Likewise.
6772         (SVE_NUM_ZREGS): Likewise.
6773         (SVE_NUM_PREGS): Likewise.
6774         (sve_vl_valid): Likewise.
6775         (struct user_sve_header): Likewise.
6776
6777 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6778             Richard Bunt <Richard.Bunt@arm.com>
6779
6780         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6781         was requested by GDB.
6782
6783 2018-06-15  Tom de Vries  <tdevries@suse.de>
6784
6785         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6786
6787 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6788
6789         * gnulib/update-gnulib.sh: Print expected versions of
6790         autoconf/aclocal.
6791
6792 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6793
6794         * arch-utils.c (default_type_align): Use type_length_units.
6795         * gdbtypes.c (type_align): Use type_length_units.
6796
6797 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6798
6799         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6800         of 'define' command.
6801
6802 2018-06-14  Tom de Vries  <tdevries@suse.de>
6803
6804         PR cli/22573
6805         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6806         get_no_prettyformat_print_options.
6807
6808 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6809
6810         * sparc-nat.h: Include target.h.
6811         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6812         <fetch_registers>: Remove this argument in function call.
6813         <store_registers>: Remove this argument in function call, remove
6814         extra semicolon.
6815         <low_forget_process>: Call sparc64_forget_process instead of
6816         sparc_forget_process.
6817
6818 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6819
6820         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6821         (procfs_target::make_corefile_notes): Adjust to new
6822         target_read_alloc return type.
6823
6824 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6825             Stephen Roberts  <stephen.roberts@arm.com>
6826
6827         PR gdb/22882
6828         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6829         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6830         Move should_notify_stop local into more inner scope.
6831
6832 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6833             Stephen Roberts  <stephen.roberts@arm.com>
6834
6835         PR gdb/22882
6836         * infrun.c (resume_1): Add call to mark_async_event_handler.
6837
6838 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6839
6840         * infrun.c (do_target_wait): Change old version of $pc printed.
6841
6842 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6843
6844         * dwarf2read.c (read_index_from_section): Rename to...
6845         (read_gdb_index_from_section): ... this, update all callers.
6846         (dwarf2_read_index): Rename to...
6847         (dwarf2_read_gdb_index): ... this, update all callers.
6848
6849 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6850
6851         * gdb/hppa-linux-nat.c
6852         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6853         hppa_linux_nat_target::fetch_registers.
6854
6855 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6856
6857         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6858         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6859         (AARCH64_DWARF_SVE_FFR): Likewise.
6860         (AARCH64_DWARF_SVE_P0): Likewise.
6861         (AARCH64_DWARF_SVE_Z0): Likewise.
6862
6863 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6864
6865         * common/common-regcache.h (raw_compare): New function.
6866         * regcache.c (regcache::raw_compare): Likewise.
6867         * regcache.h (regcache::raw_compare): New declaration.
6868
6869 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6870
6871         * common/common-regcache.h (reg_buffer_common): New structure.
6872         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6873         (reg_buffer::raw_supply): Likewise.
6874         (reg_buffer::raw_supply_integer): Likewise.
6875         (reg_buffer::raw_supply_zeroed): Likewise.
6876         (reg_buffer::raw_collect): Likewise.
6877         (reg_buffer::raw_collect_integer): Likewise.
6878         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6879         (reg_buffer::raw_supply): Likewise.
6880         (reg_buffer::raw_supply_integer): Likewise.
6881         (reg_buffer::raw_supply_zeroed): Likewise.
6882         (reg_buffer::raw_collect): Likewise.
6883         (reg_buffer::raw_collect_integer): Likewise.
6884
6885 2018-06-10  Tom Tromey  <tom@tromey.com>
6886
6887         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6888         (class remote_state) <stop_reply_queue>: Now std::vector.
6889         (remote_state::~remote_state)
6890         (remote_target::stop_reply_queue_length): Update.
6891         (struct queue_iter_param, remove_child_of_pending_fork)
6892         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6893         (check_pending_event_prevents_wildcard_vcont_callback)
6894         (remove_stop_reply_for_inferior)
6895         (remove_stop_reply_of_remote_state)
6896         (remote_notif_remove_once_on_match)
6897         (stop_reply_match_ptid_and_ws)
6898         (remote_kill_child_of_pending_fork): Remove.
6899         (remote_target::remove_new_fork_children)
6900         (remote_target::check_pending_events_prevent_wildcard_vcont)
6901         (remote_target::discard_pending_stop_replies)
6902         (remote_target::discard_pending_stop_replies_in_queue)
6903         (remote_target::remote_notif_remove_queued_reply)
6904         (remote_target::queued_stop_reply)
6905         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6906         (remote_target::wait, remote_target::kill_new_fork_children)
6907         (remote_target::async): Update.
6908
6909 2018-06-10  Tom Tromey  <tom@tromey.com>
6910
6911         * record-full.c (record_full_arch_list_cleanups): Remove.
6912         (record_full_message): Use try/catch.
6913         (record_full_wait_cleanups): Remove.
6914         (record_full_wait_1): Use try/catch.
6915         (record_full_restore): Likewise.
6916
6917 2018-06-10  Tom Tromey  <tom@tromey.com>
6918
6919         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6920         declare VEC.  Add constructor.
6921         <in_target_beneath>: Now bool.
6922         (record_full_breakpoints): Now a std::vector, static.
6923         (record_full_sync_record_breakpoints)
6924         (record_full_init_record_breakpoints)
6925         (record_full_target::insert_breakpoint)
6926         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6927
6928 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6929
6930         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6931         * serial.c (serial_interface_lookup): Remove struct keyword.
6932
6933 2018-06-10  Tom Tromey  <tom@tromey.com>
6934
6935         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6936         method.
6937         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6938         a method.
6939         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6940         method.
6941         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6942         "beneath" as a method.
6943         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6944         Use "beneath" as a method.
6945
6946 2018-06-10  Tom Tromey  <tom@tromey.com>
6947
6948         * tracefile.c (struct trace_file_writer_deleter): New.
6949         <operator()>: Rename from trace_file_writer_xfree.
6950         (trace_file_writer_up): New typedef.
6951         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6952
6953 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6954
6955         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6956         <m_registers, m_register_status>: Change type to
6957         std::unique_ptr.
6958         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6959         XCNEWVEC.
6960
6961 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6962
6963         * common/common-regcache.h (enum register_status): Add
6964         underlying type "signed char".
6965         * regcache.h (reg_buffer) <m_register_status>: Change type to
6966         register_status *.
6967         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6968         register_status instead of signed char.
6969         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6970         (reg_buffer::get_register_status): Remove cast.
6971         (readable_regcache::raw_read): Remove cast.
6972         (readable_regcache::cooked_read): Remove cast.
6973
6974 2018-06-09  Tom Tromey  <tom@tromey.com>
6975
6976         * source.c (reverse_search_command, forward_search_command): Use
6977         scoped_fd.
6978
6979 2018-06-09  Tom Tromey  <tom@tromey.com>
6980
6981         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6982         (serial_ops_list): Now static, std::vector.
6983         (serial_interface_lookup, serial_add_interface): Update.
6984
6985 2018-06-09  Tom Tromey  <tom@tromey.com>
6986
6987         * dwarf2read.c (process_cu_includes): Update.
6988         (process_full_comp_unit): Update.
6989         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6990         std::vector.
6991
6992 2018-06-08  Paul Koning  <paul_koning@dell.com>
6993
6994         PR gdb/23252
6995
6996         * python/python.c (do_start_initialization):
6997         Avoid call to internal Python API.
6998         (init__gdb_module): New function.
6999
7000 2018-06-08  Gary Benson <gbenson@redhat.com>
7001
7002         * linux-thread-db.c (valprint.h): New include.
7003         (struct check_thread_db_info): New structure.
7004         (check_thread_db_on_load, tdb_testinfo): New static globals.
7005         (check_thread_db, check_thread_db_callback): New functions.
7006         (try_thread_db_load_1): Run integrity checks if requested.
7007         (maintenance_check_libthread_db): New function.
7008         (_initialize_thread_db): Register "maint check libthread-db"
7009         and "maint set/show check-libthread-db".
7010         * NEWS: Mention the above new commands.
7011
7012 2018-06-08  Tom Tromey  <tom@tromey.com>
7013
7014         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
7015         now a method.
7016
7017 2018-06-08  Tom Tromey  <tom@tromey.com>
7018
7019         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
7020
7021 2018-06-08  Tom Tromey  <tom@tromey.com>
7022
7023         * common/btrace-common.h (struct btrace_data): Add constructor,
7024         destructor, move assignment operator.
7025         <empty, clear, fini>: New methods.
7026         <format>: Initialize.
7027         (btrace_data_init, btrace_data_fini, btrace_data_clear)
7028         (btrace_data_empty): Don't declare.
7029         * common/btrace-common.c (btrace_data_init): Remove.
7030         (btrace_data::fini): Rename from btrace_data_fini.
7031         (btrace_data::empty): Rename from btrace_data_empty.
7032         (btrace_data::clear): Rename from btrace_data_clear.  Return
7033         bool.
7034         * btrace.h (make_cleanup_btrace_data): Don't declare.
7035         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
7036         (parse_xml_btrace): Update.
7037         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
7038         (maint_btrace_clear_packet_history_cmd): Update.
7039
7040 2018-06-07  Pedro Alves  <palves@redhat.com>
7041
7042         * target.h (target_ops) <beneath>: Now a method.  All references
7043         updated.
7044         (class target_stack): New.
7045         * target.c (g_target_stack): New.
7046         (g_current_top_target): Delete.
7047         (current_top_target): Get the top target out of g_target_stack.
7048         (target_stack::push, target_stack::unpush): New.
7049         (push_target, unpush_target): Reimplement.
7050         (target_is_pushed): Reimplement in terms of g_target_stack.
7051         (target_ops::beneath, target_stack::find_beneath): New.
7052
7053 2018-06-07  Pedro Alves  <palves@redhat.com>
7054
7055         * target.h (find_target_beneath): Delete declaration.
7056         * target.c (find_target_beneath): Delete definition.
7057         * aix-thread.c: All callers of find_target_beneath adjusted to
7058         call target_ops::beneath instead.
7059         * bsd-uthread.c: Likewise.
7060         * linux-thread-db.c: Likewise.
7061         * ravenscar-thread.c: Likewise.
7062         * sol-thread.c: Likewise.
7063         * spu-multiarch.c: Likewise.
7064
7065 2018-06-07  Pedro Alves  <palves@redhat.com>
7066
7067         * target.h (target_ops) <beneath>: Now a method.  All references
7068         updated.
7069         (target_ops) <m_beneath>: New.
7070         * target.c (target_ops::beneath): New.
7071         * corelow.c: Adjust all references to target_ops::beneath.
7072         * linux-thread-db.c: Likewise.
7073         * make-target-delegates: Likewise.
7074         * record-btrace.c: Likewise.
7075         * record-full.c: Likewise.
7076         * remote.c: Likewise.
7077         * target.c: Likewise.
7078         * target-delegates.c: Regenerate.
7079
7080 2018-06-07  Pedro Alves  <palves@redhat.com>
7081
7082         * target.h (target_stack): Delete.
7083         (current_top_target): Declare function.
7084         * target.c (target_stack): Delete.
7085         (g_current_top_target): New.
7086         (current_top_target): New function.
7087         * auxv.c: Use current_top_target instead of target_stack
7088         throughout.
7089         * avr-tdep.c: Likewise.
7090         * breakpoint.c: Likewise.
7091         * corefile.c: Likewise.
7092         * elfread.c: Likewise.
7093         * eval.c: Likewise.
7094         * exceptions.c: Likewise.
7095         * frame.c: Likewise.
7096         * gdbarch-selftests.c: Likewise.
7097         * gnu-v3-abi.c: Likewise.
7098         * ia64-tdep.c: Likewise.
7099         * ia64-vms-tdep.c: Likewise.
7100         * infcall.c: Likewise.
7101         * infcmd.c: Likewise.
7102         * infrun.c: Likewise.
7103         * linespec.c: Likewise.
7104         * linux-tdep.c: Likewise.
7105         * minsyms.c: Likewise.
7106         * ppc-linux-nat.c: Likewise.
7107         * ppc-linux-tdep.c: Likewise.
7108         * procfs.c: Likewise.
7109         * regcache.c: Likewise.
7110         * remote.c: Likewise.
7111         * rs6000-tdep.c: Likewise.
7112         * s390-linux-nat.c: Likewise.
7113         * s390-tdep.c: Likewise.
7114         * solib-aix.c: Likewise.
7115         * solib-darwin.c: Likewise.
7116         * solib-dsbt.c: Likewise.
7117         * solib-spu.c: Likewise.
7118         * solib-svr4.c: Likewise.
7119         * solib-target.c: Likewise.
7120         * sparc-tdep.c: Likewise.
7121         * sparc64-tdep.c: Likewise.
7122         * spu-tdep.c: Likewise.
7123         * symfile.c: Likewise.
7124         * symtab.c: Likewise.
7125         * target-descriptions.c: Likewise.
7126         * target-memory.c: Likewise.
7127         * target.c: Likewise.
7128         * target.h: Likewise.
7129         * tracefile-tfile.c: Likewise.
7130         * tracepoint.c: Likewise.
7131         * valops.c: Likewise.
7132         * valprint.c: Likewise.
7133         * value.c: Likewise.
7134         * windows-tdep.c: Likewise.
7135         * mi/mi-main.c: Likewise.
7136
7137 2018-06-07  Tom Tromey  <tom@tromey.com>
7138
7139         * valprint.h (build_address_symbolic): Declare.
7140         * printcmd.c (print_address_symbolic): Update.
7141         (build_address_symbolic): Change "name" and "filename" to
7142         std::string.
7143         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7144         Update.
7145         * defs.h (build_address_symbolic): Remove declaration.
7146
7147 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7148
7149         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7150         (aarch64_vnv_type): Add function.
7151         (aarch64_pseudo_register_name): Add V regs for SVE.
7152         (aarch64_pseudo_register_type): Likewise.
7153         (aarch64_pseudo_register_reggroup_p): Likewise.
7154         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7155         (aarch64_pseudo_read_value): Add V regs for SVE.
7156         (aarch64_pseudo_write_2): Use V0 offset for SVE
7157         (aarch64_pseudo_write): Add V regs for SVE.
7158         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7159
7160 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7161
7162         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7163         (sve_vl_from_vq): Likewise.
7164
7165 2018-06-05  Tom Tromey  <tom@tromey.com>
7166
7167         * cli/cli-cmds.c (show_version): Update.
7168         * top.c (print_gdb_version): Add "interactive" parameter.
7169         Update.
7170         * main.c (captured_main_1): Update.
7171         * top.h (print_gdb_version): Add "interactive" parameter and a
7172         comment.
7173
7174 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7175
7176         * common/enum-flags.h: Add trailing semicolon to example in
7177         comment.
7178
7179 2018-06-05  Tom Tromey  <tom@tromey.com>
7180
7181         PR cli/12326:
7182         * NEWS: Add entry about pager.
7183         * utils.c (pagination_disabled_for_command): New global.
7184         (prompt_for_continue): Allow "c" response to prompt.
7185         (reinitialize_more_filter): Clear
7186         pagination_disabled_for_command.
7187         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7188
7189 2018-06-04  Tom Tromey  <tom@tromey.com>
7190
7191         * ada-lang.h (ada_lookup_symbol_list): Update.
7192         * ada-lang.c (resolve_subexp): Update.
7193         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7194         parameter.
7195         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7196         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7197         results parameter to std::vector.
7198         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7199         Update.
7200         * ada-exp.y (block_lookup): Update.
7201         (select_possible_type_sym): Change type of syms.  Remove nsyms
7202         parameter.
7203         (write_var_or_type, write_name_assoc): Update.
7204
7205 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7206
7207         * windows-nat.c (windows_nat_target::xfer_partial): Return
7208         TARGET_XFER_E_IO if we need to delegate to the target beneath
7209         but BENEATH is NULL.
7210
7211 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7212
7213         * Makefile.in (config.status): Add configure.nat as a
7214         dependency.
7215
7216 2018-06-04  Tom Tromey  <tom@tromey.com>
7217
7218         * cp-name-parser.y (cpname_state): Add method declarations.
7219         (HANDLE_QUAL): Update.
7220         (cpname_state::d_grab, cpname_state::fill_comp)
7221         (cpname_state::make_operator, cpname_state::make_dtor)
7222         (cpname_state::make_builtin_type, cpname_state::make_name)
7223         (cpname_state::d_qualify, cpname_state::d_int_type)
7224         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7225         (%union): Move earlier.
7226
7227 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7228
7229         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7230
7231 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7232
7233         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7234         (aarch64_pseudo_write_1): Likewise.
7235         (aarch64_pseudo_read_value): Use helper.
7236         (aarch64_pseudo_write): Likewise.
7237
7238 2018-06-04  Pedro Alves  <palves@redhat.com>
7239
7240         * darwin-nat.c (darwin_ops): Delete.
7241         (darwin_attach_pid): Use get_native_target.
7242
7243 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7244
7245         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7246         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7247
7248 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7249
7250         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7251         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7252         (aarch64_gdbarch_init): Check for SVE.
7253         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7254
7255 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7256
7257         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7258         * aarch64-tdep.h (aarch64_read_description): Likewise.
7259         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7260         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7261         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7262         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7263         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7264
7265 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7266
7267         * value.c (value_fetch_lazy_bitfield): New.
7268         (value_fetch_lazy_memory): New.
7269         (value_fetch_lazy_register): New.
7270         (value_fetch_lazy): Factor out to smaller functions.
7271
7272 2018-06-01  Tom Tromey  <tom@tromey.com>
7273
7274         * cp-name-parser.y (backslashable, represented): Now const.
7275
7276 2018-06-01  Tom Tromey  <tom@tromey.com>
7277
7278         * cp-name-parser.y: Include parser-defs.h.
7279         (parser_fprintf): Remove declaration.
7280
7281 2018-06-01  Tom Tromey  <tom@tromey.com>
7282
7283         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7284         %parse-param.
7285         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7286         (global_result): Remove globals.
7287         (struct cpname_state): New.
7288         (yyparse): Don't declare.
7289         (yylex, yyerror): Move declarations after %union.
7290         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7291         (make_name): Add state parameter.
7292         Update all callers.
7293         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7294         parameter.
7295         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7296         Update.
7297         (yylex): Add lvalp, state parameters.
7298         (yyerror): Add state parameter.
7299         (cp_demangled_name_to_comp): Update.
7300
7301 2018-06-01  Tom Tromey  <tom@tromey.com>
7302
7303         * cp-name-parser.y (parser_fprintf): Declare.
7304         (GDB_YY_REMAP_PREFIX): Define.
7305         Include yy-remap.h.  Don't redefine yy* identifiers.
7306
7307 2018-06-01  Tom Tromey  <tom@tromey.com>
7308
7309         * python/py-type.c (typy_legacy_template_argument): Update.
7310         * cp-support.h (cp_demangled_name_to_comp): Update.
7311         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7312         parameter to be a "std::string *".
7313         (main): Update.
7314
7315 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7316
7317         * ada-lex.l: Include "diagnostics.h" instead of
7318         "common/diagnostics.h".
7319         * unittests/environ-selftests.c: Likewise.
7320         * common/diagnostics.h: Moved to ../include.
7321
7322 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7323
7324         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7325         to language_mode_manual while calling breakpoint_re_set_one.
7326
7327 2018-06-01  Tom Tromey  <tom@tromey.com>
7328
7329         * valops.c (value_cast_structs, destructor_name_p): Update.
7330         * symtab.c (gdb_mangle_name): Update.
7331         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7332         Update.
7333         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7334         (pascal_object_print_value_fields, pascal_object_print_value):
7335         Update.
7336         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7337         * linespec.c (find_methods): Update.
7338         * gdbtypes.h (type_name_no_tag): Remove.
7339         (type_name_or_error): Rename from type_name_no_tag_or_error.
7340         * gdbtypes.c (type_name_no_tag): Remove.
7341         (type_name_or_error): Rename from type_name_no_tag_or_error.
7342         (lookup_struct_elt_type, check_typedef): Update.
7343         * expprint.c (print_subexp_standard): Update.
7344         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7345         * d-namespace.c (d_lookup_nested_symbol): Update.
7346         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7347         (cp_print_class_member): Update.
7348         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7349         * completer.c (add_struct_fields): Update.
7350         * c-typeprint.c (cp_type_print_derivation_info)
7351         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7352         Update.
7353         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7354         (ada_prefer_type, ada_is_exception_sym): Update.
7355
7356 2018-06-01  Tom Tromey  <tom@tromey.com>
7357
7358         * valops.c (enum_constant_from_type, value_namespace_elt)
7359         (value_maybe_namespace_elt): Update.
7360         * valarith.c (find_size_for_pointer_math): Update.
7361         * target-descriptions.c (make_gdb_type): Update.
7362         * symmisc.c (print_symbol): Update.
7363         * stabsread.c (define_symbol, read_type)
7364         (complain_about_struct_wipeout, add_undefined_type)
7365         (cleanup_undefined_types_1): Update.
7366         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7367         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7368         (rust_internal_print_type, rust_composite_type)
7369         (rust_evaluate_funcall, rust_evaluate_subexp)
7370         (rust_inclusive_range_type_p): Update.
7371         * python/py-type.c (typy_get_tag): Update.
7372         * p-typeprint.c (pascal_type_print_base): Update.
7373         * mdebugread.c (parse_symbol, parse_type): Update.
7374         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7375         Update.
7376         * guile/scm-type.c (gdbscm_type_tag): Update.
7377         * go-lang.c (sixg_string_p): Update.
7378         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7379         Update.
7380         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7381         (TYPE_TAG_NAME): Remove.
7382         * gdbtypes.c (type_name_no_tag): Simplify.
7383         (check_typedef, check_types_equal, recursive_dump_type)
7384         (copy_type_recursive, arch_composite_type): Update.
7385         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7386         in summary mode when needed.
7387         * eval.c (evaluate_funcall): Update.
7388         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7389         (process_structure_scope, read_enumeration_type)
7390         (read_namespace_type, read_module_type, determine_prefix): Update.
7391         * cp-support.c (inspect_type): Update.
7392         * coffread.c (process_coff_symbol, decode_base_type): Update.
7393         * c-varobj.c (c_is_path_expr_parent): Update.
7394         * c-typeprint.c (c_type_print_base_struct_union): Update.
7395         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7396         summary when using C language.
7397         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7398         (gen_maybe_namespace_elt): Update.
7399         * ada-lang.c (ada_type_name): Simplify.
7400         (empty_record, ada_template_to_fixed_record_type_1)
7401         (template_to_static_fixed_type)
7402         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7403
7404 2018-06-01  Tom Tromey  <tom@tromey.com>
7405
7406         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7407         c_print_type.
7408         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7409         (c_print_type): Update.
7410         (c_print_type): New overload.
7411         (c_type_print_varspec_prefix, c_type_print_args)
7412         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7413         (c_type_print_base_struct_union, c_type_print_base_1)
7414         (cp_type_print_method_args): Add "language" parameter.
7415         (c_type_print_base): Update.
7416         * c-lang.h (c_print_type): Add new overload.
7417
7418 2018-06-01  Tom Tromey  <tom@tromey.com>
7419
7420         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7421         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7422
7423 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7424
7425         * aarch64-tdep.c (aarch64_sve_register_names): New const
7426         var.
7427         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7428         (AARCH64_SVE_Z_REGS_NUM): New define.
7429         (AARCH64_SVE_P_REGS_NUM): Likewise.
7430         (AARCH64_SVE_NUM_REGS): Likewise.
7431
7432 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7433
7434         * nat/linux-ptrace.h [__alpha__]
7435         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7436         definitions.
7437
7438 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7439
7440         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7441         the endianness selected.
7442         * NEWS: Document `set endian auto' mode operation update.
7443
7444 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7445
7446         * Makefile.in: Add new header.
7447         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7448         (sve_vl_from_vg): Likewise.
7449         (sve_vq_from_vl): Likewise.
7450         (sve_vl_from_vq): Likewise.
7451         (sve_vq_from_vg): Likewise.
7452         (sve_vg_from_vq): Likewise.
7453         * configure.nat: Add new c file.
7454         * nat/aarch64-sve-linux-ptrace.c: New file.
7455         * nat/aarch64-sve-linux-ptrace.h: New file.
7456
7457 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7458
7459         * aarch64-linux-nat.c (aarch64_linux_read_description):
7460         Add parmeter zero.
7461         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7462         Likewise.
7463         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7464         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7465         (aarch64_gdbarch_init): Add parmeter zero.
7466         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7467         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7468         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7469         parmeter.
7470         * doc/gdb.texinfo: Describe SVE feature
7471         * features/aarch64-sve.c: New file.
7472
7473 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7474
7475         PR gdb/23210
7476         * gdbarch.sh (significant_addr_bit): Default to zero when
7477         not set by target architecture.
7478         * gdbarch.c: Re-generated.
7479         * utils.c (address_significant): Update.
7480
7481 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7482
7483         * stack.c (func_command): Remove trailing newline in call to error.
7484
7485 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7486
7487         * regcache.h (regcache_raw_collect): Remove, update callers to
7488         use regcache::raw_collect.
7489         * regcache.c (regcache_raw_collect): Remove.
7490
7491 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7492
7493         * regcache.h (regcache_raw_supply): Remove, update callers to
7494         use detached_regcache::raw_supply.
7495         * regcache.c (regcache_raw_supply): Remove.
7496
7497 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7498
7499         * regcache.h (regcache_cooked_write_part): Remove, update
7500         callers to use regcache::cooked_write_part.
7501         * regcache.c (regcache_cooked_write_part): Remove.
7502
7503 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7504
7505         * regcache.h (regcache_cooked_read_part): Remove, update callers
7506         to use readable_regcache::cooked_read_part.
7507         * regcache.c (regcache_cooked_read_part): Remove.
7508
7509 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7510
7511         * regcache.h (regcache_cooked_read_value): Remove, update
7512         callers to use readable_regcache::cooked_read_value.
7513         * regcache.c (regcache_cooked_read_value): Remove.
7514
7515 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7516
7517         * regcache.h (regcache_cooked_write): Remove, update callers to
7518         use regcache::cooked_write.
7519         * regcache.c (regcache_cooked_write): Remove.
7520
7521 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7522
7523         * regcache.h (regcache_invalidate): Remove, update callers to
7524         use detached_regcache::invalidate instead.
7525         * regcache.c (regcache_invalidate): Remove.
7526
7527 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7528
7529         * regcache.h (regcache_raw_write_part): Remove, update callers
7530         to use regcache::raw_write_part instead.
7531         * regcache.c (regcache_raw_write_part): Remove.
7532
7533 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7534
7535         * regcache.h (regcache_raw_read_part): Remove, update callers to
7536         use readable_regcache::raw_read_part instead.
7537         * regcache.c (regcache_raw_read_part): Remove.
7538
7539 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7540
7541         * regcache.h (regcache_cooked_read): Remove, update callers to
7542         use readable_regcache::cooked_read instead.
7543         * regcache.c (regcache_cooked_read): Remove.
7544
7545 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7546
7547         * regcache.h (regcache_raw_write): Remove, update callers to use
7548         regcache::raw_write instead.
7549         * regcache.c (regcache_raw_write): Remove.
7550
7551 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7552
7553         * regcache.h (regcache_raw_read): Remove, update callers to use
7554         readable_regcache::raw_read instead.
7555         * regcache.c (regcache_raw_read): Remove.
7556
7557 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7558
7559         * regcache.h (regcache_raw_update): Remove, update callers to
7560         use readable_regcache::raw_update instead.
7561         * regcache.c (regcache_raw_update): Remove.
7562
7563 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7564
7565         * regcache.h (regcache_register_status): Remove, update callers
7566         to use reg_buffer::get_register_status directly instead.
7567         * regcache.c (regcache_register_status): Remove.
7568
7569 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7570
7571         * regcache.h (regcache_get_ptid): Remove, update all callers to
7572         call regcache::ptid instead.
7573         * regcache.c (regcache_get_ptid): Remove.
7574
7575 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7576
7577         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7578
7579 2018-05-30  Pedro Alves  <palves@redhat.com>
7580
7581         * common/common-exceptions.h (exception_rethrow): Use
7582         ATTRIBUTE_NORETURN.
7583
7584 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7585
7586         * breakpoint.c (print_solib_event, check_status_catch_solib):
7587         Remove struct keyword in range-based for loops.
7588         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7589         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7590         Likewise.
7591         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7592         Likewise.
7593         * symfile.c (addr_info_make_relative): Likewise.
7594         * thread.c (value_in_thread_stack_temporaries): Likewise.
7595
7596 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7597
7598         PR gdb/16841
7599         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7600         aggregate type to get its real type before accessing it.
7601
7602 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7603
7604         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7605         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7606         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7607         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7608         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7609         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7610         * printcmd.c (info_address_command): Likewise.
7611
7612 2018-05-29  Tom Tromey  <tom@tromey.com>
7613
7614         * windows-nat.c (handle_exception): Update fall-through comment.
7615
7616 2018-05-29  Tom Tromey  <tom@tromey.com>
7617
7618         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7619         (struct program_space) <added_solibs>: Now a std::vector.
7620         * breakpoint.c (print_solib_event): Update.
7621         (check_status_catch_solib): Update.
7622         * progspace.c (clear_program_space_solib_cache): Update.
7623         * solib.c (update_solib_list): Update.
7624
7625 2018-05-29  Tom Tromey  <tom@tromey.com>
7626
7627         * python/py-type.c (typy_richcompare): Update.
7628         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7629         * gdbtypes.h (types_deeply_equal): Return bool.
7630         (types_equal): Likewise.
7631         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7632         declare VEC.
7633         (check_types_equal): Change worklist to std::vector.  Return
7634         bool.
7635         (struct type_equality_entry): Add constructor.
7636         (compare_maybe_null_strings): Return bool.
7637         (check_types_worklist): Return bool.  Change worklist to
7638         std::vector.
7639         (types_deeply_equal): Use std::vector.
7640         (types_equal): Return bool.
7641         (compare_maybe_null_strings): Simplify.
7642
7643 2018-05-29  Tom Tromey  <tom@tromey.com>
7644
7645         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7646
7647 2018-05-29  Tom Tromey  <tom@tromey.com>
7648
7649         * objc-lang.h: Don't include cp-support.h.
7650         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7651         declare VEC.
7652
7653 2018-05-27  Tom Tromey  <tom@tromey.com>
7654
7655         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7656
7657 2018-05-25  Tom Tromey  <tom@tromey.com>
7658
7659         * value.c (value::location): Initialize.
7660
7661 2018-05-25  Tom Tromey  <tom@tromey.com>
7662
7663         * dbxread.c (init_bincl_list): Remove.
7664         (bincl_list): Now a std::vector.
7665         (bincls_allocated, next_bincl): Remove.
7666         (free_bincl_list, do_free_bincl_list_cleanup)
7667         (make_cleanup_free_bincl_list): Remove.
7668         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7669         unique_xmalloc_ptr.
7670         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7671         (struct header_file_location): Add constructor.
7672         (add_bincl_to_list): Remove.
7673
7674 2018-05-25  Tom Tromey  <tom@tromey.com>
7675
7676         * tui/tui.c (tui_enable): Update.
7677         * mi/mi-interp.c (mi_interp::init): Update.
7678         * interps.h (class interp) <name>: New method.
7679         <m_name>: Rename from name.
7680         (~scoped_restore_interp): Update.
7681         * interps.c (interp::interp): Update.
7682         (interp_add, interp_set, interp_lookup_existing)
7683         (current_interp_named_p): Update.
7684
7685 2018-05-25  Tom Tromey  <tom@tromey.com>
7686
7687         * interps.c (interp_name): Remove.
7688         * mi/mi-interp.c (mi_interp::init): Update.
7689         * interps.h (interp_name): Remove.
7690         (~scoped_restore_interp): Update.
7691         * tui/tui.c (tui_enable): Update.
7692
7693 2018-05-25  Tom Tromey  <tom@tromey.com>
7694
7695         * utils.c (fputs_maybe_filtered): Update.
7696         * linespec.c (decode_line_full): Update.
7697         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7698         (mi_print_breakpoint_for_event, mi_solib_loaded)
7699         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7700         (mi_user_selected_context_changed): Update.
7701         * mi/mi-main.c (mi_execute_command): Update.
7702         * cli/cli-script.c (execute_control_command): Update.
7703         * python/python.c (execute_gdb_command): Update.
7704         * solib.c (info_sharedlibrary_command): Update.
7705         * interps.c (interp_ui_out): Remove.
7706         * interps.h (interp_ui_out): Remove.
7707
7708 2018-05-25  Tom Tromey  <tom@tromey.com>
7709
7710         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7711         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7712         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7713
7714 2018-05-25  Tom Tromey  <tom@tromey.com>
7715
7716         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7717         * interps.c (interp_exec): Use scoped_restore.
7718
7719 2018-05-25  Tom Tromey  <tom@tromey.com>
7720
7721         * remote.c (remote_target::remote_file_get): Use
7722         gdb::byte_vector.
7723         (remote_target::remote_file_put): Likewise.
7724
7725 2018-05-25  Tom Tromey  <tom@tromey.com>
7726
7727         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7728         a std::string.
7729         (get_pe_section_index, add_pe_exported_sym): Update.
7730         (read_pe_exported_syms): Use gdb::def_vector.
7731
7732 2018-05-25  Tom Tromey  <tom@tromey.com>
7733
7734         * frame.c (remove_prev_frame): Remove.
7735         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7736
7737 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7738
7739         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7740         Remove prototypes.
7741         * mips-linux-nat.c (supply_fpregset): Always call
7742         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7743         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7744         `mips_fill_fpregset'.
7745         * mips-linux-tdep.c (mips_supply_fpregset)
7746         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7747         (mips_fill_fpregset_wrapper): Remove functions.
7748         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7749         (mips_linux_fpregset): Remove variable.
7750         (mips_linux_iterate_over_regset_sections): Use
7751         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7752         (mips_linux_o32_sigframe_init): Remove comment.
7753
7754 2018-05-25  Pedro Alves  <palves@redhat.com>
7755
7756         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7757         (struct readahead_cache, struct packet_reg, struct
7758         remote_arch_state, class remote_state): Move higher up in the
7759         file.
7760         (remote_target::m_remote_state): Now an object instead of a pointer.
7761         (remote_target::get_remote_state): Adjust.
7762
7763 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7764
7765         * stack.c (select_and_print_frame): Delete.
7766         (struct function_bounds): Move struct within function.
7767         (func_command): Most content moved into new function
7768         find_frame_for_function, use new function, print result, add
7769         function comment.
7770         (find_frame_for_function): New function, now returns a result.
7771
7772 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7773
7774         * stack.c (iterate_over_block_arg_vars): Fix comment.
7775         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7776
7777 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7778
7779         PR gdb/23203
7780         * frame.c
7781         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7782         Define.
7783         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7784         Define.
7785         * frame.h (class scoped_restore_selected_frame): New class.
7786         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7787         of any exception, use scoped_restore_selected_frame to restore the
7788         frame instead.
7789
7790 2018-05-24  Pedro Alves  <palves@redhat.com>
7791
7792         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7793         override.
7794
7795 2018-05-23  Tom Tromey  <tom@tromey.com>
7796
7797         * complaints.c (struct complaints): Remove.
7798         (symfile_complaint_book): Remove.
7799         (series): New global.
7800         (complaint_internal): Update.
7801         (clear_complaints): Update.
7802
7803 2018-05-23  Tom Tromey  <tom@tromey.com>
7804
7805         * complaints.c (counters): New global.
7806         (struct complain): Remove.
7807         (struct complaints) <root>: Remove.
7808         (complaint_sentinel): Remove.
7809         (symfile_complaint_book): Update.
7810         (find_complaint) Remove.
7811         (complaint_internal, clear_complaints): Update.
7812
7813 2018-05-23  Tom Tromey  <tom@tromey.com>
7814
7815         * complaints.c (struct complain) <file, line>: Remove.
7816         (find_complaint): Remove file, line parameters.
7817         (complaint_internal): Update.
7818
7819 2018-05-23  Tom Tromey  <tom@tromey.com>
7820
7821         * complaints.c (vcomplaint): Remove.
7822         (complaint_internal) Merge in contents of vcomplaint.
7823
7824 2018-05-23  Tom Tromey  <tom@tromey.com>
7825
7826         * complaints.c (struct complaints) <explanation>: Remove.
7827         (symfile_explanations): Remove.
7828         (symfile_complaint_book): Update.
7829         (vcomplaint): Update.
7830         (struct explanation): Remove.
7831
7832 2018-05-23  Tom Tromey  <tom@tromey.com>
7833
7834         * complaints.c (symfile_complaints): Remove.
7835         (complaint_internal): Remove "complaints" parameter.
7836         (clear_complaints, vcomplaint): Remove "c" parameter.
7837         (get_complaints): Remove.
7838         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7839         (dwarf2_debug_line_missing_file_complaint)
7840         (dwarf2_debug_line_missing_end_sequence_complaint)
7841         (dwarf2_complex_location_expr_complaint)
7842         (dwarf2_const_value_length_mismatch_complaint)
7843         (dwarf2_section_buffer_overflow_complaint)
7844         (dwarf2_macro_malformed_definition_complaint)
7845         (dwarf2_invalid_attrib_class_complaint)
7846         (create_addrmap_from_index, dw2_symtab_iter_next)
7847         (dw2_expand_marked_cus)
7848         (dw2_debug_names_iterator::find_vec_in_debug_names)
7849         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7850         (create_debug_type_hash_table, init_cutu_and_read_dies)
7851         (partial_die_parent_scope, add_partial_enumeration)
7852         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7853         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7854         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7855         (create_cus_hash_table, create_dwp_hash_table)
7856         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7857         (dwarf2_rnglists_process, dwarf2_ranges_process)
7858         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7859         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7860         (handle_struct_member_die, process_structure_scope)
7861         (read_array_type, read_common_block, read_module_type)
7862         (read_tag_pointer_type, read_typedef, read_base_type)
7863         (read_subrange_type, load_partial_dies, partial_die_info::read)
7864         (partial_die_info::read, partial_die_info::read)
7865         (partial_die_info::read, read_checked_initial_length_and_offset)
7866         (dwarf2_string_attr, read_formatted_entries)
7867         (dwarf_decode_line_header)
7868         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7869         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7870         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7871         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7872         (get_signatured_type, get_DW_AT_signature_type)
7873         (decode_locdesc, file_file_name, consume_improper_spaces)
7874         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7875         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7876         (dwarf2_symbol_mark_computed, set_die_type)
7877         (read_attribute_value): Update.
7878         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7879         Update.
7880         * dbxread.c (unknown_symtype_complaint)
7881         (lbrac_mismatch_complaint, repeated_header_complaint)
7882         (set_namestring, function_outside_compilation_unit_complaint)
7883         (read_dbx_symtab, process_one_symbol): Update.
7884         * gdbtypes.c (stub_noname_complaint): Update.
7885         * windows-nat.c (handle_unload_dll): Update.
7886         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7887         (decode_base_type): Update.
7888         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7889         (eb_complaint, record_include_begin, record_include_end)
7890         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7891         (process_xcoff_symbol, read_symbol)
7892         (function_outside_compilation_unit_complaint)
7893         (scan_xcoff_symtab): Update.
7894         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7895         * buildsym.c (finish_block_internal, make_blockvector)
7896         (end_symtab_get_static_block, augment_type_symtab): Update.
7897         * dtrace-probe.c (dtrace_process_dof)
7898         (dtrace_static_probe_ops::get_probes): Update.
7899         * complaints.h (struct complaint): Don't declare.
7900         (symfile_complaints): Remove.
7901         (complaint_internal): Remove "complaints" parameter.
7902         (complaint): Likewise.
7903         (clear_complaints): Likewise.
7904         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7905         (reread_symbols): Update.
7906         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7907         (dwarf2_frame_cache, decode_frame_entry): Update.
7908         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7909         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7910         (info_selectors_command): Update.
7911         * macrotab.c (macro_include, check_for_redefinition)
7912         (macro_undef): Update.
7913         * objfiles.c (filter_overlapping_sections): Update.
7914         * stabsread.c (invalid_cpp_abbrev_complaint)
7915         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7916         (define_symbol, error_type, read_type, rs6000_builtin_type)
7917         (stabs_method_name_from_physname, read_member_functions)
7918         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7919         (attach_fields_to_type, complain_about_struct_wipeout)
7920         (read_range_type, read_args, common_block_start)
7921         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7922         Update.
7923         * mdebugread.c (index_complaint, unknown_ext_complaint)
7924         (basic_type_complaint, bad_tag_guess_complaint)
7925         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7926         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7927         (parse_procedure, parse_lines)
7928         (function_outside_compilation_unit_complaint)
7929         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7930         (bad_tag_guess_complaint, reg_value_complaint): Update.
7931         * cp-support.c (demangled_name_complaint): Update.
7932         * macroscope.c (sal_macro_scope): Update.
7933         * dwarf-index-write.c (class debug_names): Update.
7934
7935 2018-05-23  Tom Tromey  <tom@tromey.com>
7936
7937         * complaints.c (clear_complaints): Remove "noisy" parameter.
7938         * complaints.h (clear_complaints): Update.
7939         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7940         (reread_symbols): Update.
7941
7942 2018-05-23  Tom Tromey  <tom@tromey.com>
7943
7944         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7945         SUBSEQUENT_MESSAGE.
7946         (vcomplaint, clear_complaints): Update.
7947         (symfile_explanations): Remove some messages.
7948
7949 2018-05-23  Tom Tromey  <tom@tromey.com>
7950
7951         * complaints.c (internal_complaint): Remove.
7952         * complaints.h (internal_complaint): Remove.
7953
7954 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7955
7956         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7957
7958 2018-05-22  Pedro Alves  <palves@redhat.com>
7959
7960         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7961         (remote_fileio_badfd, remote_fileio_return_errno)
7962         (remote_fileio_return_success, remote_fileio_func_open)
7963         (remote_fileio_func_open, remote_fileio_func_close)
7964         (remote_fileio_func_read, remote_fileio_func_write)
7965         (remote_fileio_func_lseek, remote_fileio_func_rename)
7966         (remote_fileio_func_unlink, remote_fileio_func_stat)
7967         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7968         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7969         remote_target parameter.
7970         (remote_fio_func_map) <func>: Add remote_target parameter.
7971         (do_remote_fileio_request, remote_fileio_request):
7972         * remote-fileio.h (remote_fileio_request):
7973         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7974         remote_target parameter.
7975         (remote_notif_process, handle_notification): Adjust to pass down
7976         the remote.
7977         (remote_notif_state_allocate): Add remote_target parameter.  Save
7978         it.
7979         * remote-notif.h (struct remote_target): Forward declare.
7980         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7981         remote_target parameter.
7982         (struct remote_notif_state) <remote>: New field.
7983         (remote_notif_ack, remote_notif_parse): Add remote_target
7984         parameter.
7985         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7986         remote_target parameter.
7987         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7988         (threads_listing_context, rmt_thread_action, protocol_feature)
7989         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7990         (packet_result, struct threads_listing_context, remote_state):
7991         Move definitions and declarations higher up.
7992         (remote_target) <~remote_target>: Declare.
7993         (remote_download_command_source, remote_file_put, remote_file_get)
7994         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7995         (remote_hostio_pread_vFile, remote_hostio_send_command)
7996         (remote_hostio_set_filesystem, remote_hostio_open)
7997         (remote_hostio_close, remote_hostio_unlink, remote_state)
7998         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7999         (get_memory_write_packet_size, get_memory_read_packet_size)
8000         (append_pending_thread_resumptions, remote_detach_1)
8001         (append_resumption, remote_resume_with_vcont)
8002         (add_current_inferior_and_thread, wait_ns, wait_as)
8003         (process_stop_reply, remote_notice_new_inferior)
8004         (process_initial_stop_replies, remote_add_thread)
8005         (btrace_sync_conf, remote_btrace_maybe_reopen)
8006         (remove_new_fork_children, kill_new_fork_children)
8007         (discard_pending_stop_replies, stop_reply_queue_length)
8008         (check_pending_events_prevent_wildcard_vcont)
8009         (discard_pending_stop_replies_in_queue, stop_reply)
8010         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
8011         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
8012         (remote_interrupt_as, remote_interrupt_ns)
8013         (remote_get_noisy_reply, remote_query_attached)
8014         (remote_add_inferior, remote_current_thread, get_current_thread)
8015         (set_thread, set_general_thread, set_continue_thread)
8016         (set_general_process, write_ptid)
8017         (remote_unpack_thread_info_response, remote_get_threadinfo)
8018         (parse_threadlist_response, remote_get_threadlist)
8019         (remote_threadlist_iterator, remote_get_threads_with_ql)
8020         (remote_get_threads_with_qxfer)
8021         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
8022         (get_offsets, remote_check_symbols, remote_supported_packet)
8023         (remote_query_supported, remote_packet_size)
8024         (remote_serial_quit_handler, remote_detach_pid)
8025         (remote_vcont_probe, remote_resume_with_hc)
8026         (send_interrupt_sequence, interrupt_query)
8027         (remote_notif_get_pending_events, fetch_register_using_p)
8028         (send_g_packet, process_g_packet, fetch_registers_using_g)
8029         (store_register_using_P, store_registers_using_G)
8030         (set_remote_traceframe, check_binary_download)
8031         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
8032         (remote_xfer_live_readonly_partial, remote_read_bytes)
8033         (remote_send_printf, remote_flash_write, readchar)
8034         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
8035         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
8036         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
8037         (extended_remote_disable_randomization, extended_remote_run)
8038         (send_environment_packet, extended_remote_environment_support)
8039         (extended_remote_set_inferior_cwd, remote_write_qxfer)
8040         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
8041         (packet_command): Now methods of ...
8042         (remote_target): ... this class.
8043         (m_remote_state) <remote_target>: New field.
8044         (struct remote_state) <stop_reply_queue,
8045         remote_async_inferior_event_token, wait_forever_enabled_p>: New
8046         fields.
8047         (remote_state::remote_state): Allocate stop_reply_queue.
8048         (remote_state): Delete global.
8049         (get_remote_state_raw): Delete.
8050         (remote_target::get_remote_state): Allocate m_remote_state on
8051         demand.
8052         (get_current_remote_target): New.
8053         (remote_ops, extended_remote_ops): Delete.
8054         (wait_forever_enabled_p, remote_async_inferior_event_token):
8055         Delete, moved to struct remote_state.
8056         (remote_target::close): Delete self.  Destruction bits split to
8057         ...
8058         (remote_target::~remote_target): ... this.
8059         (show_memory_packet_size): Adjust to use
8060         get_current_remote_target.
8061         (struct protocol_feature) <func>: Add remote_target parameter.
8062         All callers adjusted.
8063         (curr_quit_handler_target): New.
8064         (remote_serial_quit_handler): Reimplement.
8065         (remote_target::open_1): Adjust to use get_current_remote_target.
8066         Heap-allocate remote_target/extended_remote_target instances.
8067         (vcont_builder::vcont_builder): Add remote_target parameter, and
8068         save it in m_remote.  All callers adjusted.
8069         (vcont_builder::m_remote): New field.
8070         (vcont_builder::restart, vcont_builder::flush)
8071         (vcont_builder::push_action): Use it.
8072         (remote_target::commit_resume): Use it.
8073         (struct queue_iter_param) <remote>: New field.
8074         (remote_target::remove_new_fork_children): Fill in 'remote' field.
8075         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8076         (check_pending_event_prevents_wildcard_vcont_callback)
8077         (remote_target::check_pending_events_prevent_wildcard_vcont)
8078         (remote_target::discard_pending_stop_replies)
8079         (remote_target::discard_pending_stop_replies_in_queue)
8080         (remote_target::remote_notif_remove_queued_reply): Fill in
8081         'remote' field.
8082         (remote_notif_get_pending_events): New.
8083         (remote_target::readchar, remote_target::remote_serial_write):
8084         Save/restore curr_quit_handler_target.
8085         (putpkt): New.
8086         (kill_new_fork_children): Fill in 'remote' field.
8087         (packet_command): Use get_current_remote_target, defer to
8088         remote_target method of same name.
8089         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8090         parameter, and save it in m_remote.  All callers adjusted.
8091         (scoped_remote_fd::release): Use m_remote.
8092         (scoped_remote_fd::m_remote): New field.
8093         (remote_file_put, remote_file_get, remote_file_delete): Use
8094         get_current_remote_target, defer to remote_target method of same
8095         name.
8096         (remote_btrace_reset): Add remote_state paremeter.  Update all
8097         callers.
8098         (remote_async_inferior_event_handler). Pass down 'data'.
8099         (remote_new_objfile): Use get_current_remote_target.
8100         (remote_target::vcont_r_supported): New.
8101         (set_range_stepping): Use get_current_remote_target and
8102         remote_target::vcont_r_supported.
8103         (_initialize_remote): Don't allocate 'remote_state' and
8104         'stop_reply_queue' globals.
8105         * remote.h (struct remote_target): Forward declare.
8106         (getpkt, putpkt, remote_notif_get_pending_events): Add
8107         'remote_target' parameter.
8108
8109 2018-05-22  Pedro Alves  <palves@redhat.com>
8110
8111         * remote.c (vcont_builder): Now a class.  Make all data members
8112         private.
8113         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8114         Declare methods.
8115         (vcont_builder_restart): Rename to ...
8116         (vcont_builder::restart): ... this.
8117         (vcont_builder_flush): Rename to ...
8118         (vcont_builder::flush): ... this.
8119         (vcont_builder_push_action): Rename to ...
8120         (vcont_builder::push_action): ... this.
8121         (remote_target::commit_resume): Adjust.
8122
8123 2018-05-22  Pedro Alves  <palves@redhat.com>
8124
8125         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8126         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8127         (get_fixed_memory_packet_size): New.
8128         (get_memory_packet_size): Use it.
8129         (set_memory_packet_size): Don't override the config size with
8130         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8131         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8132         Don't refer to get_memory_packet_size if not connected to a remote
8133         target.  Show "(default)" if configured size is 0.
8134
8135 2018-05-22  Pedro Alves  <palves@redhat.com>
8136
8137         * remote.c (remote_target::mourn_inferior): Move
8138         discard_pending_stop_replies call here from ...
8139         (_initialize_remote): ... here.
8140
8141 2018-05-22  Pedro Alves  <palves@redhat.com>
8142
8143         * remote.c (compare_section_command): Remove set_general_process
8144         call.
8145
8146 2018-05-22  Pedro Alves  <palves@redhat.com>
8147
8148         * remote.c (struct packet_reg, struct remote_arch_state):
8149         Move higher up in the file.
8150         (remote_state) <m_arch_states>: Store remote_arch_state values
8151         instead of remote_arch_state pointers.
8152         (remote_state::get_remote_arch_state): Adjust.
8153
8154 2018-05-22  Pedro Alves  <palves@redhat.com>
8155
8156         * remote.c: Include <unordered_map>.
8157         (remote_state): Now a class.
8158         (remote_state) <get_remote_arch_state>: Declare method.
8159         <get_remote_arch_state>: New field.
8160         (remote_arch_state) <remote_arch_state>: Declare ctor.
8161         <regs>: Now a unique_ptr.
8162         (remote_gdbarch_data_handle): Delete.
8163         (get_remote_arch_state): Delete.
8164         (remote_state::get_remote_arch_state): New.
8165         (get_remote_state): Adjust to call remote_state's
8166         get_remote_arch_state method.
8167         (init_remote_state): Delete, bits factored out to ...
8168         (remote_arch_state::remote_arch_state): ... this new method.
8169         (get_remote_packet_size, get_memory_packet_size)
8170         (process_g_packet, remote_target::fetch_registers)
8171         (remote_target::prepare_to_store, store_registers_using_G)
8172         (remote_target::store_registers, remote_target::get_trace_status):
8173         Adjust to call remote_state's method.
8174         (_initialize_remote): Remove reference to
8175         remote_gdbarch_data_handle.
8176
8177 2018-05-22  Pedro Alves  <palves@redhat.com>
8178
8179         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8180         pread>: New method declarations.
8181         (remote_target::open_1): Adjust.
8182         (readahead_cache_invalidate): Rename to ...
8183         (readahead_cache::invalidate): ... this, and adjust to be a class
8184         method.
8185         (readahead_cache_invalidate_fd): Rename to ...
8186         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8187         class method.
8188         (remote_hostio_pwrite): Adjust.
8189         (remote_hostio_pread_from_cache): Rename to ...
8190         (readahead_cache::pread): ... this, and adjust to be a class
8191         method.
8192         (remote_hostio_close): Adjust.
8193
8194 2018-05-22  Pedro Alves  <palves@redhat.com>
8195
8196         * remote.c (remote_hostio_close_cleanup): Delete.
8197         (class scoped_remote_fd): New.
8198         (remote_file_put, remote_file_get): Use it.
8199
8200 2018-05-22  Pedro Alves  <palves@redhat.com>
8201
8202         (struct vCont_action_support): Use bool and initialize all fields.
8203         (struct readahead_cache): Initialize all fields.
8204         (remote_state): Use bool and initialize all fields.
8205         (remote_state::remote_state, remote_state::~remote_state): New.
8206         (new_remote_state): Delete.
8207         (_initialize_remote): Use new to allocate remote_state.
8208
8209 2018-05-22  Pedro Alves  <palves@redhat.com>
8210             張俊芝  <zjz@zjz.name>
8211
8212         PR gdb/22973
8213         * c-exp.y: Include "c-support.h".
8214         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8215         of tolower.  Use c_ident_is_alpha to scan names.
8216         * c-lang.c: Include "c-support.h".
8217         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8218         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8219         * c-support.h: New file, with bits factored out from ...
8220         * cp-name-parser.y: ... this file.
8221         Include "c-support.h".
8222         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8223         c-support.h and renamed.
8224         (symbol_end, yylex): Adjust.
8225
8226 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8227
8228         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8229         parameter type to CORE_ADDR.
8230         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8231         parameter type in declaration to CORE_ADDR.
8232         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8233         target_auxv_search to get AT_HWCAP and use the result to get the
8234         target description.
8235         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8236         to CORE_ADDR. Remove the cast of the return value to unsigned
8237         long. Fix error predicate of target_auxv_search.
8238         (ppc_linux_nat_target::read_description): Change the type of the
8239         hwcap variable to CORE_ADDR.
8240
8241 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8242
8243         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8244         if the size of fpscr is larger than 32 bits.
8245
8246 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8247
8248         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8249         (ppc32_linux_vsxregmap): New global.
8250         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8251         regcache_supply_regset, and regcache_collect_regset.
8252         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8253         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8254         (fetch_vsx_register, store_vsx_register): Remove.
8255         (fetch_vsx_registers): Add regno parameter. Get regset using
8256         ppc_linux_vsxregset. Use regset to supply registers.
8257         (store_vsx_registers): Add regno parameter. Get regset using
8258         ppc_linux_vsxregset. Use regset to collect registers.
8259         (fetch_register): Call fetch_vsx_registers instead of
8260         fetch_vsx_register.
8261         (store_register): Call store_vsx_registers instead of
8262         store_vsx_register.
8263         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8264         new regno parameter.
8265         (store_ppc_registers): Call store_vsx_registers with -1 for the
8266         new regno parameter.
8267         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8268         (ppc_collect_vsxregset): Remove.
8269
8270 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8271
8272         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8273         offset fields.
8274         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8275         for vector register offset fields.
8276         (ppc64_fbsd_reg_offsets): Likewise.
8277         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8278         to vector register offset fields.
8279         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8280         to vector register offset fields.
8281         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8282         vector register offset fields.
8283         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8284         initializers for vector register offset fields.
8285         (rs6000_aix64_reg_offsets): Likewise.
8286         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8287         (ppc_supply_vrregset): Remove.
8288         (ppc_collect_vrregset): Remove.
8289         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8290         (ppc_linux_vrregset) : New function.
8291         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8292         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8293         (ppc32_linux_vrregset): Remove.
8294         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8295         and use result instead of ppc32_linux_vrregset.
8296         (ppc32_linux_reg_offsets): Remove initializers for vector register
8297         offset fields.
8298         (ppc64_linux_reg_offsets): Likewise.
8299         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8300         * ppc-linux-nat.c: Include regset.h.
8301         (gdb_vrregset_t): Adjust comment to account for little-endian
8302         mode.
8303         (supply_vrregset, fill_vrregset): Remove.
8304         (fetch_altivec_register, store_altivec_register): Remove.
8305         (fetch_altivec_registers): Add regno parameter. Get regset using
8306         ppc_linux_vrregset. Use regset to supply registers.
8307         (store_altivec_registers): Add regno parameter. Get regset using
8308         ppc_linux_vrregset. Use regset to collect registers.
8309         (fetch_register): Call fetch_altivec_registers instead of
8310         fetch_altivec_register.
8311         (store_register): Call store_altivec_registers instead of
8312         store_altivec_register.
8313         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8314         the new regno parameter.
8315         (store_ppc_registers): Call store_altivec_registers with -1 for
8316         the new regno parameter.
8317
8318 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8319
8320         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8321         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8322         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8323         (gdb_vrregset_t): Change array type size to
8324         PPC_LINUX_SIZEOF_VRREGSET.
8325         (gdb_vsxregset_t): Change array type size to
8326         PPC_LINUX_SIZEOF_VSXREGSET.
8327         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8328         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8329         PPC_LINUX_SIZEOF_VSXREGSET.
8330
8331 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8332
8333         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8334         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8335         nat/ppc-linux.c.
8336         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8337         ppc_linux_target_wordsize with tid.
8338         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8339         wordsize with tid.
8340         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8341         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8342         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8343         tid parameter. Remove static specifier.
8344         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8345         (ppc_linux_target_wordsize): New declaration.
8346
8347 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8348
8349         * arch/ppc-linux-common.c: New file.
8350         * arch/ppc-linux-common.h: New file.
8351         * arch/ppc-linux-tdesc.h: New file.
8352         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8353         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8354         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8355         arch/ppc-linux-tdesc.h.
8356         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8357         arch/ppc-linux-tdesc.h.
8358         (ppc_linux_nat_target::read_description): Remove target
8359         description matching code. Fill a ppc_linux_features struct and
8360         call ppc_linux_match_description with it. Move comment about ISA
8361         2.05 to ppc-linux-common.c.
8362         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8363         arch/ppc-linux-tdesc.h.
8364         (ppc_linux_core_read_description): Remove target description
8365         matching code. Fill a ppc_linux_features struct and call
8366         ppc_linux_match_description with it.
8367         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8368         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8369         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8370         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8371         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8372         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8373         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8374         (tdesc_powerpc_e500l): Remove.
8375
8376 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8377
8378         * ada-lang.c (catch_assert_command): Pass empty string instead
8379         of NULL for excep_string argument.
8380
8381 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8382
8383         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8384         the width of the requested register exceeds the width of the
8385         `ptrace' data type.
8386
8387 2018-05-21  Tom Tromey  <tom@tromey.com>
8388
8389         * printcmd.c (output_command): Remove.
8390         (output_command_const): Rename to output_command.
8391         * valprint.h (output_command): Rename from output_command_const.
8392         * tracepoint.c (trace_dump_actions): Call output_command.
8393
8394 2018-05-21  Tom Tromey  <tom@tromey.com>
8395
8396         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8397         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8398         * ada-lang.h (create_ada_exception_catchpoint): Update.
8399         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8400         std::string.
8401         (create_excep_cond_exprs, ~ada_catchpoint)
8402         (should_stop_exception, print_one_exception)
8403         (print_mention_exception, print_recreate_exception): Update.
8404         (ada_get_next_arg): Remove.
8405         (catch_ada_exception_command_split): Use std::string.  Change type
8406         of "excep_string", "cond_string".
8407         (catch_ada_exception_command): Update.
8408         (create_ada_exception_catchpoint): Change type of excep_string.
8409         (ada_exception_sal): Remove excep_string parameter.
8410         (~ada_catchpoint): Remove.
8411
8412 2018-05-21  Tom Tromey  <tom@tromey.com>
8413
8414         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8415         cleanup.
8416
8417 2018-05-21  Tom Tromey  <tom@tromey.com>
8418
8419         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8420         Return unique_xmalloc_ptr.
8421         (print_it_exception): Update.
8422
8423 2018-05-21  Tom Tromey  <tom@tromey.com>
8424
8425         * tracepoint.c (trace_dump_actions): Use std::string.
8426
8427 2018-05-21  Tom Tromey  <tom@tromey.com>
8428
8429         * symfile.c (reread_symbols): Use std::string for original_name.
8430
8431 2018-05-21  Tom Tromey  <tom@tromey.com>
8432
8433         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8434         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8435         constructor.
8436
8437 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8438
8439         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8440         instance to...
8441         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8442         * objfiles.c (get_objfile_bfd_data): Allocate
8443         objfile_per_bfd_storage with obstack_new when allocating on
8444         obstack.
8445
8446 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8447
8448         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8449         OBSTACK_ZALLOC.
8450         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8451         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8452         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8453         (add_pending): Likewise.
8454         (parse_symbol): Likewise.
8455         (parse_partial_symbols): Likewise.
8456         (psymtab_to_symtab_1): Likewise.
8457         (new_psymtab): Likewise.
8458         (elfmdebug_build_psymtabs): Likewise.
8459         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8460         * objfiles.c (get_objfile_bfd_data): Likewise.
8461         (objfile_register_static_link): Likewise.
8462         * psymtab.c (allocate_psymtab): Likewise.
8463         * stabsread.c (read_member_functions): Likewise.
8464         * xcoffread.c (xcoff_end_psymtab): Likewise.
8465
8466 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8467
8468         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8469         compiler supports std::is_trivially_constructible.
8470         * common/poison.h: Include obstack.h.
8471         (IsMallocable): Define to is_trivially_constructible if the
8472         compiler supports it, define to true_type otherwise.
8473         (xobnew): New.
8474         (XOBNEW): Redefine.
8475         (xobnewvec): New.
8476         (XOBNEWVEC): Redefine.
8477         * gdb_obstack.h (obstack_zalloc): New.
8478         (OBSTACK_ZALLOC): Redefine.
8479         (obstack_calloc): New.
8480         (OBSTACK_CALLOC): Redefine.
8481         (obstack_new): New.
8482         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8483         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8484         gdbarch.c.
8485         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8486         obstack_calloc/obstack_zalloc.
8487         (gdbarch_obstack_zalloc): Remove.
8488         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8489
8490 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8491
8492         * stack.c (backtrace_command_1): Remove useless variable int i.
8493
8494 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8495
8496         * stack.c (print_frame_info): Fix comment.
8497
8498 2018-05-18  Tom Tromey  <tom@tromey.com>
8499
8500         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8501         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8502         (~dwarf2_per_objfile): Update
8503         (dwarf2_get_dwz_file): Use new.
8504         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8505         unique_ptr.
8506
8507 2018-05-18  Tom Tromey  <tom@tromey.com>
8508
8509         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8510         unique_ptr.
8511         * dwarf2read.c (struct dwp_file): Add constructor and
8512         initializers.
8513         (open_and_init_dwp_file): Return a unique_ptr.
8514         (dwarf2_per_objfile, create_dwp_hash_table)
8515         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8516         (lookup_dwo_unit_in_dwp): Update.
8517         (open_and_init_dwp_file, get_dwp_file): Update.
8518
8519 2018-05-18  Tom Tromey  <tom@tromey.com>
8520
8521         * dwarf2read.c (dwarf2_per_objfile): Update.
8522         (struct mapped_index): Add initializers.
8523         (dwarf2_read_index): Use new.
8524         (dw2_symtab_iter_init): Update.
8525         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8526         unique_ptr.
8527
8528 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8529
8530         * dwarf2read.c (mapped_index) <total_size>: Remove.
8531
8532 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8533
8534         * unittests/format_pieces-selftests.c (test_format_specifier):
8535         Add ARI comments.
8536
8537 2018-05-18  Tom Tromey  <tom@tromey.com>
8538
8539         * c-typeprint.c (maybe_print_hole): New function.
8540         (c_print_type_struct_field_offset): Update.
8541         (c_type_print_base_struct_union): Call maybe_print_hole.
8542
8543 2018-05-17  Keith Seitz  <keiths@redhat.com>
8544
8545         * breakpoint.c (build_bpstat_chain): New function, moved from
8546         bpstat_stop_status.
8547         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8548         If no stop chain is passed, call build_bpstat_chain to build it.
8549         * breakpoint.h (build_bpstat_chain): Declare.
8550         (bpstat_stop_status): Move documentation here from breakpoint.c.
8551         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8552         build the stop chain and pass it to skip_inline_frames.
8553         Pass this stop chain to bpstat_stop_status.
8554         * inline-frame.c: Include breakpoint.h.
8555         (stopped_by_user_bp_inline_frame): New function.
8556         (skip_inline_frames): Add parameter `stop_chain'.
8557         Move documention to inline-frame.h.
8558         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8559         whether the frame should be elided.
8560         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8561         Add moved documentation and update for new parameter.
8562
8563 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8564
8565         PR cli/14975
8566         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8567         unittests/format_pieces-selftests.c.
8568         * common/format.h (format_piece) <operator==>: New.
8569         (format_pieces) <operator[]>: Remove.
8570         * common/format.c (format_pieces::format_pieces): Handle \e.
8571         * unittests/format_pieces-selftests.c: New.
8572
8573 2018-05-17  Tom Tromey  <tom@tromey.com>
8574
8575         PR symtab/23010:
8576         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8577         (dw2_instantiate_symtab): Add skip_partial parameter.
8578         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8579         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8580         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8581         (dw2_expand_symtabs_matching_one)
8582         (dw2_find_pc_sect_compunit_symtab)
8583         (dw2_debug_names_lookup_symbol)
8584         (dw2_debug_names_expand_symtabs_for_function): Update.
8585         (init_cutu_and_read_dies): Add skip_partial parameter.
8586         (process_psymtab_comp_unit, build_type_psymtabs_1)
8587         (process_skeletonless_type_unit, load_partial_comp_unit)
8588         (psymtab_to_symtab_1): Update.
8589         (load_full_comp_unit): Add skip_partial parameter.
8590         (process_imported_unit_die, dwarf2_read_addr_index)
8591         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8592         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8593         (read_signatured_type): Update.
8594
8595 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8596
8597         * value.c (release_value): Remove unused variable.
8598         (record_latest_value): Likewise.
8599         (access_value_history): Likewise.
8600         (preserve_values): Likewise.
8601
8602 2018-05-17  Tom Tromey  <tom@tromey.com>
8603
8604         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8605         Initialize.
8606
8607 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8608
8609         PR gdb/22286
8610         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8611         Also handle registers whose width is not a multiple of
8612         PTRACE_TYPE_RET.
8613         (linux_nat_trad_target::store_register): Likewise.
8614
8615 2018-05-16  Tom Tromey  <tom@tromey.com>
8616
8617         * gdbcore.h (core_bfd): Redefine.
8618         * corelow.c (core_target::close): Update.
8619         (core_target_open): Update.
8620         * progspace.h (struct program_space) <cbfd>: Now a
8621         gdb_bfd_ref_ptr.
8622
8623 2018-05-16  Tom Tromey  <tom@tromey.com>
8624
8625         PR cli/19551:
8626         * symfile-add-flags.h (enum symfile_add_flags)
8627         <SYMFILE_NOT_FILENAME>: New constant.
8628         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8629         objfile name from BFD.
8630         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8631         * minidebug.c (find_separate_debug_file_in_section): Put
8632         ".gnu_debugdata" into BFD's file name.
8633
8634 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8635
8636         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8637         Remove.
8638
8639 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8640
8641         PR binutils/21446
8642         * aarch64-tdep.c (aarch64_analyze_prologue,
8643         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8644         Indicate not interested in errors.
8645
8646 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8647
8648         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8649         Supply the MIPS_ZERO_REGNUM register.
8650
8651 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8652
8653         * mips-tdep.c (mask_address_var): Make variable static.
8654
8655 2018-05-14  Tom Tromey  <tom@tromey.com>
8656
8657         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8658
8659 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8660
8661         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8662         FXSAVE_ADDR for the mxcsr register.
8663
8664 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8665
8666         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8667
8668 2018-05-11  Pedro Alves  <palves@redhat.com>
8669
8670         * corelow.c (core_target) <core_target>: No longer inline.
8671         Initialize m_core_gdbarch, m_core_vec and build the section table
8672         here.
8673         <~core_target>: New.
8674         <core_gdbarch, get_core_register_section>: New methods.
8675         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8676         factored out from ...
8677         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8678         (core_ops): Delete.
8679         (sniff_core_bfd): Add gdbarch parameter.
8680         (core_close): Delete, merged into ...
8681         (core_target::close): ... here.  Delete self.
8682         (core_close_cleanup): Delete.
8683         (core_target_open): Allocate a core_target on the heap.  Use a
8684         unique_ptr instead of a cleanup.  Bits moved into the core_target
8685         ctor.  Adjust to use core_target methods instead of globals.
8686         (get_core_register_section): Rename to ...
8687         (core_target::get_core_register_section): ... this and adjust.
8688         (struct get_core_registers_cb_data): New.
8689         (get_core_registers_cb): Use it.  Use bool.
8690         (core_target::fetch_registers, core_target::files_info)
8691         (core_target::xfer_partial, core_target::read_description)
8692         (core_target::pid_to, core_target::thread_name): Adjust to
8693         reference class fields instead of globals.
8694         * target.h (struct target_ops_deleter, target_ops_up): New.
8695
8696 2018-05-11  Pedro Alves  <palves@redhat.com>
8697
8698         * corefile.c (core_file_command): Move to corelow.c.
8699         * corelow.c (the_core_target): Delete.
8700         (core_file_command): Moved from corefile.c.  Check exec_bfd
8701         instead of the_core_target.  Use target_detach instead of calling
8702         into the_core_target directly.
8703         (maybe_say_no_core_file_now): New.
8704         (core_target::detach): Use it.
8705         (_initialize_corelow): Remove references to the_core_target.
8706         * gdbcore.h (the_core_target): Delete.
8707
8708 2018-05-11  Tom Tromey  <tromey@redhat.com>
8709             Pedro Alves  <palves@redhat.com>
8710
8711         * corefile.c (core_bfd): Remove.
8712         * gdbcore.h (core_bfd): Now a macro.
8713         * progspace.h (struct program_space) <cbfd>: New field.
8714
8715 2018-05-11  Tom Tromey  <tom@tromey.com>
8716
8717         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8718         gdb::def_vector.
8719
8720 2018-05-10  Tom Tromey  <tom@tromey.com>
8721
8722         * configure: Rebuild.
8723         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8724
8725 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8726
8727         PR server/23158:
8728         * regformats/regdat.sh: Adjust script, following the addition
8729         of the new expedite_regs parameter to init_target_desc.
8730
8731 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8732     
8733         PR gdb/23127
8734         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8735         set_gdbarch_significant_addr_bit.
8736         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8737         set_gdbarch_significant_addr_bit.
8738         * utils.c (address_significant): Update to sign extend addr.
8739
8740 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8741
8742         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8743         (xtensa_linux_init_abi): Limit tdep->num_regs by
8744         tdep->num_nopriv_regs.
8745         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8746         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8747         not initialized.
8748
8749 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8750
8751         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8752
8753 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8754
8755         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8756         (I387_MXCSR_INIT_VAL): New constant.
8757         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8758         buffer if it was supplied by the inferior.
8759         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8760         (i387_xsave_get_clear_bv): New function.
8761         (i387_supply_xsave): Only read x87 control registers from the
8762         xsave buffer if the feature is enabled, and the state will have
8763         been written, otherwise, provide a suitable default.
8764         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8765         including x87 control registers.  Update control registers if they
8766         have changed from the default value, and mark features as enabled
8767         as required.
8768         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8769
8770 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8771
8772         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8773
8774 2018-05-07  Tom Tromey  <tom@tromey.com>
8775
8776         * configure: Rebuild.
8777         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8778
8779 2018-05-07  Tom Tromey  <tom@tromey.com>
8780
8781         PR tdep/20362:
8782         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8783         bit.  Use correct value for VDIV.
8784
8785 2018-05-04  Tom Tromey  <tom@tromey.com>
8786
8787         * configure: Rebuild.
8788         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8789
8790 2018-05-04  Tom Tromey  <tom@tromey.com>
8791
8792         * linux-record.c (record_linux_system_call) <case
8793         RECORD_SYS_RECVFROM>: Add "break".
8794
8795 2018-05-04  Tom Tromey  <tom@tromey.com>
8796
8797         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8798         Add missing "break".
8799         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8800         Add missing "break".
8801
8802 2018-05-04  Tom Tromey  <tom@tromey.com>
8803
8804         * rs6000-tdep.c (ppc_process_record_op4)
8805         (ppc_process_record_op63): Add fall-through comment.
8806
8807 2018-05-04  Tom Tromey  <tom@tromey.com>
8808
8809         * i386-tdep.c (i386_process_record): Add fall-through comment.
8810
8811 2018-05-04  Tom Tromey  <tom@tromey.com>
8812
8813         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8814         comment.
8815
8816 2018-05-04  Tom Tromey  <tom@tromey.com>
8817
8818         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8819         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8820         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8821         comment.
8822         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8823         comment.
8824         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8825         comment.
8826
8827 2018-05-04  Tom Tromey  <tom@tromey.com>
8828
8829         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8830
8831 2018-05-04  Tom Tromey  <tom@tromey.com>
8832
8833         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8834         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8835         * symfile.c (section_is_mapped): Fix fall-through comment.
8836         * stabsread.c (define_symbol, read_member_functions): Fix
8837         fall-through comment.
8838         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8839         comment.
8840         * remote.c (remote_wait_as): Fix fall-through comment.
8841         * p-exp.y (yylex): Fix fall-through comment.
8842         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8843         comment.
8844         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8845         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8846         * jv-exp.y (yylex): Fix fall-through comment.
8847         * go-exp.y (lex_one_token): Fix fall-through comment.
8848         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8849         fall-through comment.
8850         * f-exp.y (yylex): Fix fall-through comment.
8851         * dwarf2read.c (process_die): Fix fall-through comments.
8852         * dbxread.c (process_one_symbol): Fix fall-through comment.
8853         * d-exp.y (lex_one_token): Fix fall-through comment.
8854         * cp-name-parser.y (yylex): Fix fall-through comment.
8855         * coffread.c (coff_symtab_read): Fix fall-through comment.
8856         * c-exp.y (lex_one_token): Fix fall-through comment.
8857         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8858         comment.
8859         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8860         comment.
8861
8862 2018-05-04  Tom Tromey  <tom@tromey.com>
8863
8864         PR python/22730:
8865         * NEWS: Mention gdb.execute change.
8866         * gdbcmd.h (execute_control_command): Don't declare.
8867         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8868         execute_control_commands, execute_control_commands_to_string.
8869         * cli/cli-script.h (execute_control_commands)
8870         (execute_control_commands_to_string): Declare.
8871         (execute_control_command): Add from_tty parameter.
8872         * cli/cli-script.c (execute_control_commands)
8873         (execute_control_commands_to_string): New functions.
8874         (execute_user_command): Use execute_control_commands.
8875         (execute_control_command_1): Add "from_tty" parameter.  Update.
8876         (execute_control_command): Likewise.
8877
8878 2018-05-04  Tom Tromey  <tom@tromey.com>
8879
8880         PR python/22731:
8881         * NEWS: Mention that breakpoint commands are writable.
8882         * python/py-breakpoint.c (bppy_set_commands): New function.
8883         (breakpoint_object_getset) <"commands">: Use it.
8884
8885 2018-05-04  Tom Tromey  <tom@tromey.com>
8886
8887         * tracepoint.c (actions_command): Update.
8888         * mi/mi-cmd-break.c (mi_command_line_array)
8889         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8890         (mi_read_next_line): Remove.
8891         (mi_cmd_break_commands): Update.
8892         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8893         function_view.
8894         * cli/cli-script.c (get_command_line): Update.
8895         (process_next_line): Use function_view.  Constify.
8896         (recurse_read_control_structure, read_command_lines)
8897         (read_command_lines_1): Change argument types to function_view.
8898         (do_define_command, document_command): Update.
8899         * breakpoint.h (check_tracepoint_command): Don't declare.
8900         * breakpoint.c (check_tracepoint_command): Remove.
8901         (commands_command_1, create_tracepoint_from_upload): Update.
8902
8903 2018-05-04  Tom Tromey  <tom@tromey.com>
8904
8905         PR gdb/11750:
8906         * cli/cli-script.h (enum command_control_type) <define_control>:
8907         New constant.
8908         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8909         (build_command_line, execute_control_command_1)
8910         (process_next_line): Likewise.
8911         (do_define_command): New function, extracted from define_command.
8912         (define_command): Use it.
8913
8914 2018-05-04  Tom Tromey  <tom@tromey.com>
8915
8916         * tracepoint.c (actions_command): Update.
8917         * cli/cli-script.h (read_command_lines): Update.
8918         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8919         (MAX_TMPBUF): Remove define.
8920         (define_command): Use string_printf.
8921         (document_command): Likewise.
8922         * breakpoint.c (commands_command_1): Update.
8923
8924 2018-05-04  Tom Tromey  <tom@tromey.com>
8925
8926         * top.c (execute_command): Update.
8927         * cli/cli-script.h (print_command_lines): Now varargs.
8928         * cli/cli-script.c (print_command_lines): Now varargs.
8929         (execute_control_command_1) <case while_control, case if_control>:
8930         Update.
8931
8932 2018-05-04  Tom Tromey  <tom@tromey.com>
8933
8934         * tracepoint.c (all_tracepoint_actions): Rename from
8935         all_tracepoint_actions_and_cleanup.  Change return type.
8936         (actions_command, encode_actions_1, encode_actions)
8937         (trace_dump_actions, tdump_command): Update.
8938         * remote.c (remote_download_command_source): Update.
8939         * python/python.c (gdbpy_eval_from_control_command)
8940         (python_command, python_interactive_command): Update.
8941         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8942         * guile/guile.c (guile_command)
8943         (gdbscm_eval_from_control_command, guile_command): Update.
8944         * compile/compile.c (compile_code_command)
8945         (compile_print_command, compile_to_object): Update.
8946         * cli/cli-script.h (struct command_lines_deleter): New.
8947         (counted_command_line): New typedef.
8948         (struct command_line): Add constructor, destructor.
8949         <body_list>: Remove.
8950         <body_list_0, body_list_1>: New members.
8951         (command_line_up): Remove typedef.
8952         (read_command_lines, read_command_lines_1, get_command_line):
8953         Update.
8954         (copy_command_lines): Don't declare.
8955         * cli/cli-script.c (build_command_line): Use "new".
8956         (get_command_line): Return counted_command_line.
8957         (print_command_lines, execute_user_command)
8958         (execute_control_command_1, while_command, if_command): Update.
8959         (realloc_body_list): Remove.
8960         (process_next_line, recurse_read_control_structure): Update.
8961         (read_command_lines, read_command_lines_1): Return counted_command_line.
8962         (free_command_lines): Use "delete".
8963         (copy_command_lines): Remove.
8964         (define_command, document_command, show_user_1): Update.
8965         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8966         a counted_command_line.
8967         * breakpoint.h (counted_command_line): Remove typedef.
8968         (breakpoint_set_commands): Update.
8969         * breakpoint.c (check_no_tracepoint_commands)
8970         (validate_commands_for_breakpoint): Update.
8971         (breakpoint_set_commands): Change commands to be a
8972         counted_command_line.
8973         (commands_command_1, update_dprintf_command_list)
8974         (create_tracepoint_from_upload): Update.
8975
8976 2018-05-04  Tom Tromey  <tom@tromey.com>
8977
8978         * cli/cli-decode.h (cmd_list_element): New constructor.
8979         (~cmd_list_element): New destructor.
8980         (struct cmd_list_element): Add initializers.
8981         * cli/cli-decode.c (do_add_cmd): Use "new".
8982         (delete_cmd): Use "delete".
8983
8984 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8985             Pedro Alves <palves@redhat.com>
8986
8987         PR breakpoints/19806 and support for PR external/20207.
8988         * NEWS: Mention Aarch64 watchpoint improvements.
8989         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8990         watchpoints and PR external/20207 watchpoints.
8991         * nat/aarch64-linux-hw-point.c
8992         (kernel_supports_any_contiguous_range): New.
8993         (aarch64_watchpoint_offset): New.
8994         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8995         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8996         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8997         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8998         next_addr_orig_p.  Support PR external/20207 watchpoints.
8999         (aarch64_downgrade_regs): New.
9000         (aarch64_dr_state_insert_one_point): New parameters offset and
9001         addr_orig.
9002         (aarch64_dr_state_remove_one_point): Likewise.
9003         (aarch64_handle_breakpoint): Update caller.
9004         (aarch64_handle_aligned_watchpoint): Likewise.
9005         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
9006         aligned_offset.
9007         (aarch64_linux_set_debug_regs): Remove const from state.  Call
9008         aarch64_downgrade_regs.
9009         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
9010         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
9011         (DR_CONTROL_MASK): ... this.
9012         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
9013         (unsigned int aarch64_watchpoint_offset): New prototype.
9014         (aarch64_linux_set_debug_regs): Remove const from state.
9015         * utils.c (align_up, align_down): Move to ...
9016         * common/common-utils.c (align_up, align_down): ... here.
9017         * utils.h (align_up, align_down): Move to ...
9018         * common/common-utils.h (align_up, align_down): ... here.
9019
9020 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
9021
9022         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
9023         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
9024         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
9025         Re-implement to match the ABI as summarized in GCC's
9026         gcc/config/sparc/sparc.c.  All callers updated.
9027         (sparc32_store_arguments): Remove assertion.
9028
9029 2018-05-04  Tom Tromey  <tom@tromey.com>
9030
9031         * printcmd.c: Don't include tui.h.
9032         (decode_format): Use skip_spaces.
9033
9034 2018-05-04  Tom Tromey  <tom@tromey.com>
9035
9036         PR gdb/22619:
9037         * printcmd.c (last_count): New global.
9038         (x_command): Use saved count when repeating.
9039
9040 2018-05-04  Tom Tromey  <tom@tromey.com>
9041
9042         * nto-procfs.c (do_closedir_cleanup): Remove.
9043         (procfs_pidlist): Use gdb_dir_up.
9044         * procfs.c (do_closedir_cleanup): Remove.
9045         (proc_update_threads): Use gdb_dir_up.
9046         * common/filestuff.h (struct gdb_dir_deleter): New.
9047         (gdb_dir_up): New typedef.
9048
9049 2018-05-04  Tom Tromey  <tom@tromey.com>
9050
9051         * ada-lang.c (print_mention_exception): Use std::string.
9052
9053 2018-05-04  Tom Tromey  <tom@tromey.com>
9054
9055         * ada-lang.c (create_excep_cond_exprs): Update.
9056         (ada_exception_catchpoint_cond_string): Use std::string.
9057
9058 2018-05-04  Tom Tromey  <tom@tromey.com>
9059
9060         * ada-lang.c (xget_renaming_scope): Return std::string.
9061         (old_renaming_is_invisible): Update.
9062
9063 2018-05-04  Tom Tromey  <tom@tromey.com>
9064
9065         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
9066         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
9067
9068 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
9069
9070         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
9071
9072 2018-05-04  Tom Tromey  <tom@tromey.com>
9073
9074         * remote.c (remote_query_supported_append): Change type.
9075         (remote_check_symbols): Update.
9076
9077 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9078
9079         PR gdb/11420
9080         * configure.ac: Prepend libpython.
9081         * python/python-config.py: Likewise.
9082         * configure: Regenerate.
9083
9084 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9085
9086         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9087
9088 2018-05-03  Pedro Alves  <palves@redhat.com>
9089
9090         * s390-linux-nat.c
9091         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9092         override.  Write 'true' instead of '1'.
9093         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9094         declaration.
9095
9096 2018-05-02  Pedro Alves  <palves@redhat.com>
9097
9098         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9099         add_inf_child_target.
9100         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9101         add_inf_child_target.
9102         * aix-thread.c (aix_thread_target_info): New.
9103         (aix_thread_target) <shortname, longname, doc>: Delete.
9104         <info>: New.
9105         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9106         add_inf_child_target.
9107         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9108         add_inf_child_target.
9109         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9110         add_inf_child_target.
9111         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9112         add_inf_child_target.
9113         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9114         add_inf_child_target.
9115         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9116         add_inf_child_target.
9117         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9118         add_inf_child_target.
9119         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9120         add_inf_child_target.
9121         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9122         add_inf_child_target.
9123         * bfd-target.c (target_bfd_target_info): New.
9124         (target_bfd) <shortname, longname, doc>: Delete.
9125         <info>: New.
9126         * bsd-kvm.c (bsd_kvm_target_info): New.
9127         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9128         <info>: New.
9129         (bsd_kvm_target::open): Rename to ...
9130         (bsd_kvm_target_open): ... this.  Adjust.
9131         * bsd-uthread.c (bsd_uthread_target_info): New.
9132         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9133         <info>: New.
9134         * corefile.c (core_file_command): Adjust.
9135         * corelow.c (core_target_info): New.
9136         (core_target) <shortname, longname, doc>: Delete.
9137         <info>: New.
9138         (core_target::open): Rename to ...
9139         (core_target_open): ... this.  Adjust.
9140         * ctf.c (ctf_target_info): New.
9141         (ctf_target) <shortname, longname, doc>: Delete.
9142         <info>: New.
9143         (ctf_target::open): Rename to ...
9144         (ctf_target_open): ... this.
9145         (_initialize_ctf): Adjust.
9146         * exec.c (exec_target_info): New.
9147         (exec_target) <shortname, longname, doc>: Delete.
9148         <info>: New.
9149         (exec_target::open): Rename to ...
9150         (exec_target_open): ... this.
9151         * gdbcore.h (core_target_open): Declare.
9152         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9153         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9154         add_inf_child_target.
9155         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9156         add_inf_child_target.
9157         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9158         add_inf_child_target.
9159         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9160         add_inf_child_target.
9161         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9162         add_inf_child_target.
9163         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9164         add_inf_child_target.
9165         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9166         add_inf_child_target.
9167         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9168         add_inf_child_target.
9169         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9170         add_inf_child_target.
9171         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9172         add_inf_child_target.
9173         * inf-child.c (inf_child_target_info): New.
9174         (inf_child_target::info): New.
9175         (inf_child_open_target): Remove 'target' parameter.  Use
9176         get_native_target instead.
9177         (inf_child_target::open): Delete.
9178         (add_inf_child_target): New.
9179         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9180         Delete.
9181         <info>: New.
9182         (add_inf_child_target): Declare.
9183         (inf_child_open_target): Declare.
9184         * linux-thread-db.c (thread_db_target_info): New.
9185         (thread_db_target) <shortname, longname, doc>: Delete.
9186         <info>: New.
9187         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9188         add_inf_child_target.
9189         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9190         add_inf_child_target.
9191         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9192         add_inf_child_target.
9193         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9194         add_inf_child_target.
9195         * make-target-delegates (print_class): Adjust.
9196         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9197         add_inf_child_target.
9198         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9199         add_inf_child_target.
9200         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9201         add_inf_child_target.
9202         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9203         add_inf_child_target.
9204         * nto-procfs.c (nto_native_target_info): New.
9205         (nto_procfs_target_native) <shortname, longname, doc>:
9206         Delete.
9207         <info>: New.
9208         (nto_procfs_target_info): New.
9209         (nto_procfs_target_procfs) <shortname, longname, doc>:
9210         Delete.
9211         <info>: New.
9212         (init_procfs_targets): Adjust.
9213         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9214         add_inf_child_target.
9215         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9216         add_inf_child_target.
9217         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9218         add_inf_child_target.
9219         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9220         add_inf_child_target.
9221         * ravenscar-thread.c (ravenscar_target_info): New.
9222         (ravenscar_thread_target) <shortname, longname, doc>:
9223         Delete.
9224         <info>: New.
9225         * record-btrace.c (record_btrace_target_info):
9226         (record_btrace_target) <shortname, longname, doc>: Delete.
9227         <info>: New.
9228         (record_btrace_target::open): Rename to ...
9229         (record_btrace_target_open): ... this.  Adjust.
9230         * record-full.c (record_longname, record_doc): New.
9231         (record_full_base_target) <shortname, longname, doc>: Delete.
9232         <info>: New.
9233         (record_full_target_info): New.
9234         (record_full_target): <shortname>: Delete.
9235         <info>: New.
9236         (record_full_core_open_1, record_full_open_1): Update comments.
9237         (record_full_base_target::open): Rename to ...
9238         (record_full_open): ... this.
9239         (cmd_record_full_restore): Update.
9240         (_initialize_record_full): Update.
9241         * remote-sim.c (remote_sim_target_info): New.
9242         (gdbsim_target) <shortname, longname, doc>: Delete.
9243         <info>: New.
9244         (gdbsim_target::open): Rename to ...
9245         (gdbsim_target_open): ... this.
9246         (_initialize_remote_sim): Adjust.
9247         * remote.c (remote_doc): New.
9248         (remote_target_info): New.
9249         (remote_target) <shortname, longname, doc>: Delete.
9250         <info>: New.
9251         (extended_remote_target_info): New.
9252         (extended_remote_target) <shortname, longname, doc>: Delete.
9253         <info>: New.
9254         (remote_target::open_1): Make static.  Adjust.
9255         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9256         * s390-linux-nat.c (_initialize_s390_nat): Use
9257         add_inf_child_target.
9258         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9259         add_inf_child_target.
9260         * sol-thread.c (thread_db_target_info): New.
9261         (sol_thread_target) <shortname, longname, doc>: Delete.
9262         <info>: New.
9263         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9264         add_inf_child_target.
9265         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9266         add_inf_child_target.
9267         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9268         add_inf_child_target.
9269         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9270         add_inf_child_target.
9271         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9272         add_inf_child_target.
9273         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9274         add_inf_child_target.
9275         * spu-linux-nat.c (_initialize_spu_nat): Use
9276         add_inf_child_target.
9277         * spu-multiarch.c (spu_multiarch_target_info): New.
9278         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9279         <info>: New.
9280         * target-delegates.c: Regenerate.
9281         * target.c: Include <unordered_map>.
9282         (target_ops_p): Delete.
9283         (DEF_VEC_P(target_ops_p)): Delete.
9284         (target_factories): New.
9285         (test_target_info): New.
9286         (test_target_ops::info): New.
9287         (open_target): Adjust to use target_factories.
9288         (add_target_with_completer): Rename to ...
9289         (add_target): ... this.  Change prototype.  Register target_info
9290         and open callback in target_factories.  Register target_info in
9291         command context instead of target_ops.
9292         (add_target): Delete old implementation.
9293         (add_deprecated_target_alias): Change prototype.  Adjust.
9294         (the_native_target): New.
9295         (set_native_target, get_native_target): New.
9296         (find_default_run_target): Use the_native_target.
9297         (find_attach_target, find_run_target): Simplify.
9298         (target_ops::open): Delete.
9299         (dummy_target_info): New.
9300         (dummy_target::shortname, dummy_target::longname)
9301         (dummy_target::doc): Delete.
9302         (dummy_target::info): New.
9303         (debug_target::shortname, debug_target::longname)
9304         (debug_target::doc): Delete.
9305         (debug_target::info): New.
9306         * target.h (struct target_info): New.
9307         (target_ops::~target_ops): Add comment.
9308         (target_ops::info): New.
9309         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9310         longer virtual.  Implement in terms of target_info.
9311         (set_native_target, get_native_target): Declare.
9312         (target_open_ftype): New.
9313         (add_target, add_target_with_completer)
9314         (add_deprecated_target_alias): Change prototype.
9315         (test_target) <shortname, longname, doc>: Delete.
9316         <info>: New.
9317         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9318         add_inf_child_target.
9319         * tracefile-tfile.c (tfile_target_info): New.
9320         (tfile_target) <shortname, longname, doc>: Delete.
9321         <info>: New.
9322         (tfile_target::open): Rename to ...
9323         (tfile_target_open): ... this.
9324         (_initialize_tracefile_tfile): Adjust.
9325         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9326         add_inf_child_target.
9327         * windows-nat.c (_initialize_windows_nat): Use
9328         add_inf_child_target.
9329         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9330         add_inf_child_target.
9331
9332 2018-05-02  Pedro Alves  <palves@redhat.com>
9333
9334         * linux-nat.h (linux_nat_target) <low_new_thread,
9335         low_delete_thread, low_new_fork, low_forget_process,
9336         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9337         New virtual methods.
9338         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9339         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9340         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9341         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9342         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9343         Delete.
9344         * linux-fork.c (delete_fork): Adjust to call low method.
9345         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9346         (linux_nat_new_fork, linux_nat_forget_process_hook)
9347         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9348         (linux_nat_status_is_event):
9349         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9350         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9351         to call low method.
9352         (sigtrap_is_event): Rename to ...
9353         (linux_nat_target::low_status_is_event): ... this.
9354         (linux_nat_set_status_is_event): Delete.
9355         (save_stop_reason, linux_nat_wait_1)
9356         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9357         low methods.
9358         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9359         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9360         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9361         (linux_nat_set_prepare_to_resume): Delete.
9362         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9363         low virtual methods.
9364         * amd64-linux-nat.c: Likewise.
9365         * arm-linux-nat.c: Likewise.
9366         * i386-linux-nat.c: Likewise.
9367         * ia64-linux-nat.c: Likewise.
9368         * mips-linux-nat.c: Likewise.
9369         * ppc-linux-nat.c: Likewise.
9370         * s390-linux-nat.c: Likewise.
9371         * sparc64-linux-nat.c: Likewise.
9372         * x86-linux-nat.c: Likewise.
9373         * x86-linux-nat.h: Include "nat/x86-linux.h".
9374         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9375         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9376         Override methods.
9377
9378 2018-05-02  Pedro Alves  <palves@redhat.com>
9379
9380         * target.h (target_ops)
9381         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9382         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9383         stopped_by_watchpoint, have_continuable_watchpoint,
9384         stopped_data_address, watchpoint_addr_within_range,
9385         can_accel_watchpoint_condition, can_run, thread_alive,
9386         has_all_memory, has_memory, has_stack, has_registers,
9387         has_execution, can_async_p, is_async_p, supports_non_stop,
9388         always_non_stop_p, can_execute_reverse, supports_multi_process,
9389         supports_enable_disable_tracepoint,
9390         supports_disable_randomization, supports_string_tracing,
9391         supports_evaluation_of_breakpoint_conditions,
9392         can_run_breakpoint_commands, filesystem_is_local,
9393         can_download_tracepoint, get_trace_state_variable_value,
9394         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9395         record_is_replaying, record_will_replay,
9396         augmented_libraries_svr4_read>: Adjust to return bool.
9397         * aarch64-linux-nat.c: All implementations adjusted.
9398         * aix-thread.c: All implementations adjusted.
9399         * arm-linux-nat.c: All implementations adjusted.
9400         * breakpoint.c: All implementations adjusted.
9401         * bsd-kvm.c: All implementations adjusted.
9402         * bsd-uthread.c: All implementations adjusted.
9403         * corelow.c: All implementations adjusted.
9404         * ctf.c: All implementations adjusted.
9405         * darwin-nat.c: All implementations adjusted.
9406         * darwin-nat.h: All implementations adjusted.
9407         * exec.c: All implementations adjusted.
9408         * fbsd-nat.c: All implementations adjusted.
9409         * fbsd-nat.h: All implementations adjusted.
9410         * gnu-nat.c: All implementations adjusted.
9411         * gnu-nat.h: All implementations adjusted.
9412         * go32-nat.c: All implementations adjusted.
9413         * ia64-linux-nat.c: All implementations adjusted.
9414         * inf-child.c: All implementations adjusted.
9415         * inf-child.h: All implementations adjusted.
9416         * inf-ptrace.c: All implementations adjusted.
9417         * inf-ptrace.h: All implementations adjusted.
9418         * linux-nat.c: All implementations adjusted.
9419         * linux-nat.h: All implementations adjusted.
9420         * mips-linux-nat.c: All implementations adjusted.
9421         * nto-procfs.c: All implementations adjusted.
9422         * ppc-linux-nat.c: All implementations adjusted.
9423         * procfs.c: All implementations adjusted.
9424         * ravenscar-thread.c: All implementations adjusted.
9425         * record-btrace.c: All implementations adjusted.
9426         * record-full.c: All implementations adjusted.
9427         * remote-sim.c: All implementations adjusted.
9428         * remote.c: All implementations adjusted.
9429         * s390-linux-nat.c: All implementations adjusted.
9430         * sol-thread.c: All implementations adjusted.
9431         * spu-multiarch.c: All implementations adjusted.
9432         * target-delegates.c: All implementations adjusted.
9433         * target.c: All implementations adjusted.
9434         * target.h: All implementations adjusted.
9435         * tracefile-tfile.c: All implementations adjusted.
9436         * tracefile.c: All implementations adjusted.
9437         * tracefile.h: All implementations adjusted.
9438         * windows-nat.c: All implementations adjusted.
9439         * x86-linux-nat.h: All implementations adjusted.
9440         * x86-nat.h: All implementations adjusted.
9441
9442 2018-05-02  Pedro Alves  <palves@redhat.com>
9443
9444         * make-target-delegates (scan_target_h): Don't trim lines here.
9445         Replace sequences of tabs and/or whitespace with a single
9446         whitespace.
9447         (top level, parsing methods): Trim each line before processing it
9448         here.
9449
9450 2018-05-02  Pedro Alves  <palves@redhat.com>
9451             John Baldwin  <jhb@freebsd.org>
9452
9453         * target.h (enum strata) <debug_stratum>: New.
9454         (struct target_ops) <all delegation methods>: Replace by C++
9455         virtual methods, and drop "to_" prefix.  All references updated
9456         throughout.
9457         <to_shortname, to_longname, to_doc, to_data,
9458         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9459         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9460         virtual methods.  All references updated throughout.
9461         <can_attach, supports_terminal_ours, can_create_inferior,
9462         get_thread_control_capabilities, attach_no_wait>: New
9463         virtual methods.
9464         <insert_breakpoint, remove_breakpoint>: Now
9465         TARGET_DEFAULT_NORETURN methods.
9466         <info_proc>: Now returns bool.
9467         <to_magic>: Delete.
9468         (OPS_MAGIC): Delete.
9469         (current_target): Delete.  All references replaced by references
9470         to ...
9471         (target_stack): ... this.  New.
9472         (target_shortname, target_longname): Adjust.
9473         (target_can_run): Now a function declaration.
9474         (default_child_has_all_memory, default_child_has_memory)
9475         (default_child_has_stack, default_child_has_registers)
9476         (default_child_has_execution): Remove target_ops parameter.
9477         (complete_target_initialization): Delete.
9478         (memory_breakpoint_target): New template class.
9479         (test_target_ops): Refactor as a C++ class with virtual methods.
9480         * make-target-delegates (NAME_PART): Tighten.
9481         (POINTER_PART, CP_SYMBOL): New.
9482         (SIMPLE_RETURN_PART): Reimplement.
9483         (VEC_RETURN_PART): Expect less.
9484         (RETURN_PART, VIRTUAL_PART): New.
9485         (METHOD): Adjust to C++ virtual methods.
9486         (scan_target_h): Remove reference to C99.
9487         (dname): Output "target_ops::" prefix.
9488         (write_function_header): Adjust to output a C++ class method.
9489         (write_declaration): New.
9490         (write_delegator): Adjust to output a C++ class method.
9491         (tdname): Output "dummy_target::" prefix.
9492         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9493         method.
9494         (tdefault_names, debug_names): Delete.
9495         (return_types, tdefaults, styles, argtypes_array): New.
9496         (top level): All methods are delegators.
9497         (print_class): New.
9498         (top level): Print dummy_target and debug_target classes.
9499         * target-delegates.c: Regenerate.
9500         * target-debug.h (target_debug_print_enum_info_proc_what)
9501         (target_debug_print_thread_control_capabilities)
9502         (target_debug_print_thread_info_p): New.
9503         * target.c (dummy_target): Delete.
9504         (the_dummy_target, the_debug_target): New.
9505         (target_stack): Now extern.
9506         (set_targetdebug): Push/unpush debug target.
9507         (default_child_has_all_memory, default_child_has_memory)
9508         (default_child_has_stack, default_child_has_registers)
9509         (default_child_has_execution): Remove target_ops parameter.
9510         (complete_target_initialization): Delete.
9511         (add_target_with_completer): No longer call
9512         complete_target_initialization.
9513         (target_supports_terminal_ours): Use regular delegation.
9514         (update_current_target): Delete.
9515         (push_target): No longer check magic number.  Don't call
9516         update_current_target.
9517         (unpush_target): Don't call update_current_target.
9518         (target_is_pushed): No longer check magic number.
9519         (target_require_runnable): Skip for all stratums over
9520         process_stratum.
9521         (target_ops::info_proc): New.
9522         (target_info_proc): Use find_target_at and
9523         find_default_run_target.
9524         (target_supports_disable_randomization): Use regular delegation.
9525         (target_get_osdata): Use find_target_at.
9526         (target_ops::open, target_ops::close, target_ops::can_attach)
9527         (target_ops::attach, target_ops::can_create_inferior)
9528         (target_ops::create_inferior, target_ops::can_run)
9529         (target_can_run): New.
9530         (default_fileio_target): Use regular delegation.
9531         (target_ops::fileio_open, target_ops::fileio_pwrite)
9532         (target_ops::fileio_pread, target_ops::fileio_fstat)
9533         (target_ops::fileio_close, target_ops::fileio_unlink)
9534         (target_ops::fileio_readlink): New.
9535         (target_fileio_open_1, target_fileio_unlink)
9536         (target_fileio_readlink): Always call the target method.  Handle
9537         FILEIO_ENOSYS.
9538         (return_zero, return_zero_has_execution): Delete.
9539         (init_dummy_target): Delete.
9540         (dummy_target::dummy_target, dummy_target::shortname)
9541         (dummy_target::longname, dummy_target::doc)
9542         (debug_target::debug_target, debug_target::shortname)
9543         (debug_target::longname, debug_target::doc): New.
9544         (target_supports_delete_record): Use regular delegation.
9545         (setup_target_debug): Delete.
9546         (maintenance_print_target_stack): Skip debug_stratum.
9547         (initialize_targets): Instantiate the_dummy_target and
9548         the_debug_target.
9549         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9550         use target_stack.
9551         (target_auxv_search, fprint_target_auxv): Adjust.
9552         (info_auxv_command): Adjust to use target_stack.
9553         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9554         * exceptions.c (print_flush): Handle a NULL target_stack.
9555         * regcache.c (target_ops_no_register): Refactor as class with
9556         virtual methods.
9557
9558         * exec.c (exec_target): New class.
9559         (exec_ops): Now an exec_target.
9560         (exec_open, exec_close_1, exec_get_section_table)
9561         (exec_xfer_partial, exec_files_info, exec_has_memory)
9562         (exec_make_note_section): Refactor as exec_target methods.
9563         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9564         Delete.
9565         (exec_target::find_memory_regions): New.
9566         (_initialize_exec): Don't call init_exec_ops.
9567         * gdbcore.h (exec_file_clear): Delete.
9568
9569         * corefile.c (core_target): Delete.
9570         (core_file_command): Adjust.
9571         * corelow.c (core_target): New class.
9572         (the_core_target): New.
9573         (core_close): Remove target_ops parameter.
9574         (core_close_cleanup): Adjust.
9575         (core_target::close): New.
9576         (core_open, core_detach, get_core_registers, core_files_info)
9577         (core_xfer_partial, core_thread_alive, core_read_description)
9578         (core_pid_to_str, core_thread_name, core_has_memory)
9579         (core_has_stack, core_has_registers, core_info_proc): Rework as
9580         core_target methods.
9581         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9582         (_initialize_corelow): Initialize the_core_target.
9583         * gdbcore.h (core_target): Delete.
9584         (the_core_target): New.
9585
9586         * ctf.c: (ctf_target): New class.
9587         (ctf_ops): Now a ctf_target.
9588         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9589         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9590         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9591         methods.
9592         (init_ctf_ops): Delete.
9593         (_initialize_ctf): Don't call it.
9594         * tracefile-tfile.c (tfile_target): New class.
9595         (tfile_ops): Now a tfile_target.
9596         (tfile_open, tfile_close, tfile_files_info)
9597         (tfile_get_tracepoint_status, tfile_trace_find)
9598         (tfile_fetch_registers, tfile_xfer_partial)
9599         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9600         Refactor as tfile_target methods.
9601         (tfile_xfer_partial_features): Remove target_ops parameter.
9602         (init_tfile_ops): Delete.
9603         (_initialize_tracefile_tfile): Don't call it.
9604         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9605         (tracefile_has_stack, tracefile_has_registers)
9606         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9607         tracefile_target methods.
9608         (init_tracefile_ops): Delete.
9609         (tracefile_target::tracefile_target): New.
9610         * tracefile.h: Include "target.h".
9611         (tracefile_target): New class.
9612         (init_tracefile_ops): Delete.
9613
9614         * spu-multiarch.c (spu_multiarch_target): New class.
9615         (spu_ops): Now a spu_multiarch_target.
9616         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9617         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9618         (spu_search_memory, spu_mourn_inferior): Refactor as
9619         spu_multiarch_target methods.
9620         (init_spu_ops): Delete.
9621         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9622         complete_target_initialization.
9623
9624         * ravenscar-thread.c (ravenscar_thread_target): New class.
9625         (ravenscar_ops): Now a ravenscar_thread_target.
9626         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9627         (ravenscar_thread_alive, ravenscar_pid_to_str)
9628         (ravenscar_fetch_registers, ravenscar_store_registers)
9629         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9630         (ravenscar_stopped_by_hw_breakpoint)
9631         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9632         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9633         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9634         methods.
9635         (init_ravenscar_thread_ops): Delete.
9636         (_initialize_ravenscar): Remove references to
9637         init_ravenscar_thread_ops and complete_target_initialization.
9638
9639         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9640         (bsd_uthread_target): New class.
9641         (bsd_uthread_ops): Now a bsd_uthread_target.
9642         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9643         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9644         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9645         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9646         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9647         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9648         (bsd_uthread_target): Delete function.
9649         (_initialize_bsd_uthread): Remove reference to
9650         complete_target_initialization.
9651
9652         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9653         (target_bfd): ... this new class.
9654         (target_bfd_xfer_partial, target_bfd_get_section_table)
9655         (target_bfd_close): Refactor as target_bfd methods.
9656         (target_bfd::~target_bfd): New.
9657         (target_bfd_reopen): Adjust.
9658         (target_bfd::close): New.
9659
9660         * record-btrace.c (record_btrace_target): New class.
9661         (record_btrace_ops): Now a record_btrace_target.
9662         (record_btrace_open, record_btrace_stop_recording)
9663         (record_btrace_disconnect, record_btrace_close)
9664         (record_btrace_async, record_btrace_info)
9665         (record_btrace_insn_history, record_btrace_insn_history_range)
9666         (record_btrace_insn_history_from, record_btrace_call_history)
9667         (record_btrace_call_history_range)
9668         (record_btrace_call_history_from, record_btrace_record_method)
9669         (record_btrace_is_replaying, record_btrace_will_replay)
9670         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9671         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9672         (record_btrace_store_registers, record_btrace_prepare_to_store)
9673         (record_btrace_to_get_unwinder)
9674         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9675         (record_btrace_commit_resume, record_btrace_wait)
9676         (record_btrace_stop, record_btrace_can_execute_reverse)
9677         (record_btrace_stopped_by_sw_breakpoint)
9678         (record_btrace_supports_stopped_by_sw_breakpoint)
9679         (record_btrace_stopped_by_hw_breakpoint)
9680         (record_btrace_supports_stopped_by_hw_breakpoint)
9681         (record_btrace_update_thread_list, record_btrace_thread_alive)
9682         (record_btrace_goto_begin, record_btrace_goto_end)
9683         (record_btrace_goto, record_btrace_stop_replaying_all)
9684         (record_btrace_execution_direction)
9685         (record_btrace_prepare_to_generate_core)
9686         (record_btrace_done_generating_core): Refactor as
9687         record_btrace_target methods.
9688         (init_record_btrace_ops): Delete.
9689         (_initialize_record_btrace): Remove reference to
9690         init_record_btrace_ops.
9691         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9692         the execution_direction global.
9693         (record_full_base_target, record_full_target)
9694         (record_full_core_target): New classes.
9695         (record_full_ops): Now a record_full_target.
9696         (record_full_core_ops): Now a record_full_core_target.
9697         (record_full_target::detach, record_full_target::disconnect)
9698         (record_full_core_target::disconnect)
9699         (record_full_target::mourn_inferior, record_full_target::kill):
9700         New.
9701         (record_full_open, record_full_close, record_full_async): Refactor
9702         as methods of the record_full_base_target class.
9703         (record_full_resume, record_full_commit_resume): Refactor
9704         as methods of the record_full_target class.
9705         (record_full_wait, record_full_stopped_by_watchpoint)
9706         (record_full_stopped_data_address)
9707         (record_full_stopped_by_sw_breakpoint)
9708         (record_full_supports_stopped_by_sw_breakpoint)
9709         (record_full_stopped_by_hw_breakpoint)
9710         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9711         methods of the record_full_base_target class.
9712         (record_full_store_registers, record_full_xfer_partial)
9713         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9714         Refactor as methods of the record_full_target class.
9715         (record_full_can_execute_reverse, record_full_get_bookmark)
9716         (record_full_goto_bookmark, record_full_execution_direction)
9717         (record_full_record_method, record_full_info, record_full_delete)
9718         (record_full_is_replaying, record_full_will_replay)
9719         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9720         (record_full_stop_replaying): Refactor as methods of the
9721         record_full_base_target class.
9722         (record_full_core_resume, record_full_core_kill)
9723         (record_full_core_fetch_registers)
9724         (record_full_core_prepare_to_store)
9725         (record_full_core_store_registers, record_full_core_xfer_partial)
9726         (record_full_core_insert_breakpoint)
9727         (record_full_core_remove_breakpoint)
9728         (record_full_core_has_execution): Refactor
9729         as methods of the record_full_core_target class.
9730         (record_full_base_target::supports_delete_record): New.
9731         (init_record_full_ops): Delete.
9732         (init_record_full_core_ops): Delete.
9733         (record_full_save): Refactor as method of the
9734         record_full_base_target class.
9735         (_initialize_record_full): Remove references to
9736         init_record_full_ops and init_record_full_core_ops.
9737
9738         * remote.c (remote_target, extended_remote_target): New classes.
9739         (remote_ops): Now a remote_target.
9740         (extended_remote_ops): Now an extended_remote_target.
9741         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9742         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9743         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9744         (remote_pass_signals, remote_set_syscall_catchpoint)
9745         (remote_program_signals, )
9746         (remote_thread_always_alive): Remove target_ops parameter.
9747         (remote_thread_alive, remote_thread_name)
9748         (remote_update_thread_list, remote_threads_extra_info)
9749         (remote_static_tracepoint_marker_at)
9750         (remote_static_tracepoint_markers_by_strid)
9751         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9752         (remote_open): Refactor as methods of remote_target.
9753         (extended_remote_open, extended_remote_detach)
9754         (extended_remote_attach, extended_remote_post_attach):
9755         (extended_remote_supports_disable_randomization)
9756         (extended_remote_create_inferior): : Refactor as method of
9757         extended_remote_target.
9758         (remote_set_permissions, remote_open_1, remote_detach)
9759         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9760         (remote_resume, remote_commit_resume, remote_stop)
9761         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9762         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9763         (remote_prepare_to_store, remote_store_registers)
9764         (remote_flash_erase, remote_flash_done, remote_files_info)
9765         (remote_kill, remote_mourn, remote_insert_breakpoint)
9766         (remote_remove_breakpoint, remote_insert_watchpoint)
9767         (remote_watchpoint_addr_within_range)
9768         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9769         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9770         (remote_supports_stopped_by_sw_breakpoint)
9771         (remote_stopped_by_hw_breakpoint)
9772         (remote_supports_stopped_by_hw_breakpoint)
9773         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9774         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9775         (remote_verify_memory): Refactor as methods of remote_target.
9776         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9777         parameter.
9778         (remote_xfer_partial, remote_get_memory_xfer_limit)
9779         (remote_search_memory, remote_rcmd, remote_memory_map)
9780         (remote_pid_to_str, remote_get_thread_local_address)
9781         (remote_get_tib_address, remote_read_description): Refactor as
9782         methods of remote_target.
9783         (remote_target::fileio_open, remote_target::fileio_pwrite)
9784         (remote_target::fileio_pread, remote_target::fileio_close): New.
9785         (remote_hostio_readlink, remote_hostio_fstat)
9786         (remote_filesystem_is_local, remote_can_execute_reverse)
9787         (remote_supports_non_stop, remote_supports_disable_randomization)
9788         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9789         (remote_supports_enable_disable_tracepoint)
9790         (remote_supports_string_tracing)
9791         (remote_can_run_breakpoint_commands, remote_trace_init)
9792         (remote_download_tracepoint, remote_can_download_tracepoint)
9793         (remote_download_trace_state_variable, remote_enable_tracepoint)
9794         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9795         (remote_trace_start, remote_get_trace_status)
9796         (remote_get_tracepoint_status, remote_trace_stop)
9797         (remote_trace_find, remote_get_trace_state_variable_value)
9798         (remote_save_trace_data, remote_get_raw_trace_data)
9799         (remote_set_disconnected_tracing, remote_core_of_thread)
9800         (remote_set_circular_trace_buffer, remote_traceframe_info)
9801         (remote_get_min_fast_tracepoint_insn_len)
9802         (remote_set_trace_buffer_size, remote_set_trace_notes)
9803         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9804         (remote_disable_btrace, remote_teardown_btrace)
9805         (remote_read_btrace, remote_btrace_conf)
9806         (remote_augmented_libraries_svr4_read, remote_load)
9807         (remote_pid_to_exec_file, remote_can_do_single_step)
9808         (remote_execution_direction, remote_thread_handle_to_thread_info):
9809         Refactor as methods of remote_target.
9810         (init_remote_ops, init_extended_remote_ops): Delete.
9811         (remote_can_async_p, remote_is_async_p, remote_async)
9812         (remote_thread_events, remote_upload_tracepoints)
9813         (remote_upload_trace_state_variables): Refactor as methods of
9814         remote_target.
9815         (_initialize_remote): Remove references to init_remote_ops and
9816         init_extended_remote_ops.
9817
9818         * remote-sim.c (gdbsim_target): New class.
9819         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9820         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9821         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9822         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9823         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9824         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9825         Refactor as methods of gdbsim_target.
9826         (gdbsim_ops): Now a gdbsim_target.
9827         (init_gdbsim_ops): Delete.
9828         (gdbsim_cntrl_c): Adjust.
9829         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9830
9831         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9832         (the_amd64_linux_nat_target): New.
9833         (amd64_linux_fetch_inferior_registers)
9834         (amd64_linux_store_inferior_registers): Refactor as methods of
9835         amd64_linux_nat_target.
9836         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9837         * i386-linux-nat.c: Don't include "linux-nat.h".
9838         (i386_linux_nat_target): New class.
9839         (the_i386_linux_nat_target): New.
9840         (i386_linux_fetch_inferior_registers)
9841         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9842         as methods of i386_linux_nat_target.
9843         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9844         * inf-child.c (inf_child_ops): Delete.
9845         (inf_child_fetch_inferior_registers)
9846         (inf_child_store_inferior_registers): Delete.
9847         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9848         methods of inf_child_target.
9849         (inf_child_target::supports_terminal_ours)
9850         (inf_child_target::terminal_init)
9851         (inf_child_target::terminal_inferior)
9852         (inf_child_target::terminal_ours_for_output)
9853         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9854         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9855         New.
9856         (inf_child_open, inf_child_disconnect, inf_child_close)
9857         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9858         (inf_child_post_startup_inferior, inf_child_can_run)
9859         (inf_child_pid_to_exec_file): Refactor as methods of
9860         inf_child_target.
9861         (inf_child_follow_fork): Delete.
9862         (inf_child_target::can_create_inferior)
9863         (inf_child_target::can_attach): New.
9864         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9865         (inf_child_target::has_stack, inf_child_target::has_registers)
9866         (inf_child_target::has_execution): New.
9867         (inf_child_fileio_open, inf_child_fileio_pwrite)
9868         (inf_child_fileio_pread, inf_child_fileio_fstat)
9869         (inf_child_fileio_close, inf_child_fileio_unlink)
9870         (inf_child_fileio_readlink, inf_child_use_agent)
9871         (inf_child_can_use_agent): Refactor as methods of
9872         inf_child_target.
9873         (return_zero, inf_child_target): Delete.
9874         (inf_child_target::inf_child_target): New.
9875         * inf-child.h: Include "target.h".
9876         (inf_child_target): Delete function prototype.
9877         (inf_child_target): New class.
9878         (inf_child_open_target, inf_child_mourn_inferior)
9879         (inf_child_maybe_unpush_target): Delete.
9880         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9881         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9882         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9883         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9884         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9885         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9886         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9887         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9888         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9889         methods of inf_ptrace_target.
9890         (inf_ptrace_target): Delete function.
9891         * inf-ptrace.h: Include "inf-child.h".
9892         (inf_ptrace_target): Delete function declaration.
9893         (inf_ptrace_target): New class.
9894         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9895         * linux-nat.c (linux_target): New.
9896         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9897         (linux_nat_target::~linux_nat_target): New.
9898         (linux_child_post_attach, linux_child_post_startup_inferior)
9899         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9900         (linux_child_remove_fork_catchpoint)
9901         (linux_child_insert_vfork_catchpoint)
9902         (linux_child_remove_vfork_catchpoint)
9903         (linux_child_insert_exec_catchpoint)
9904         (linux_child_remove_exec_catchpoint)
9905         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9906         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9907         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9908         (linux_nat_stopped_data_address)
9909         (linux_nat_stopped_by_sw_breakpoint)
9910         (linux_nat_supports_stopped_by_sw_breakpoint)
9911         (linux_nat_stopped_by_hw_breakpoint)
9912         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9913         (linux_nat_kill, linux_nat_mourn_inferior)
9914         (linux_nat_xfer_partial, linux_nat_thread_alive)
9915         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9916         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9917         (linux_child_static_tracepoint_markers_by_strid)
9918         (linux_nat_is_async_p, linux_nat_can_async_p)
9919         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9920         (linux_nat_supports_multi_process)
9921         (linux_nat_supports_disable_randomization, linux_nat_async)
9922         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9923         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9924         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9925         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9926         methods of linux_nat_target.
9927         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9928         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9929         parameter.
9930         (check_stopped_by_watchpoint): Adjust.
9931         (linux_xfer_partial): Delete.
9932         (linux_target_install_ops, linux_target, linux_nat_add_target):
9933         Delete.
9934         (linux_nat_target::linux_nat_target): New.
9935         * linux-nat.h: Include "inf-ptrace.h".
9936         (linux_nat_target): New.
9937         (linux_target, linux_target_install_ops, linux_nat_add_target):
9938         Delete function declarations.
9939         (linux_target): Declare global.
9940         * linux-thread-db.c (thread_db_target): New.
9941         (thread_db_target::thread_db_target): New.
9942         (thread_db_ops): Delete.
9943         (the_thread_db_target): New.
9944         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9945         (thread_db_update_thread_list, thread_db_pid_to_str)
9946         (thread_db_extra_thread_info)
9947         (thread_db_thread_handle_to_thread_info)
9948         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9949         (thread_db_resume): Refactor as methods of thread_db_target.
9950         (init_thread_db_ops): Delete.
9951         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9952         * x86-linux-nat.c: Don't include "linux-nat.h".
9953         (super_post_startup_inferior): Delete.
9954         (x86_linux_nat_target::~x86_linux_nat_target): New.
9955         (x86_linux_child_post_startup_inferior)
9956         (x86_linux_read_description, x86_linux_enable_btrace)
9957         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9958         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9959         methods of x86_linux_nat_target.
9960         (x86_linux_create_target): Delete.  Bits folded ...
9961         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9962         pointer.
9963         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9964         (x86_linux_nat_target): New class.
9965         (x86_linux_create_target): Delete.
9966         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9967         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9968         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9969         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9970         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9971         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9972         make extern.
9973         (x86_use_watchpoints): Delete.
9974         * x86-nat.h: Include "breakpoint.h" and "target.h".
9975         (x86_use_watchpoints): Delete.
9976         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9977         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9978         (x86_insert_watchpoint, x86_remove_watchpoint)
9979         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9980         (x86_stopped_by_hw_breakpoint): New declarations.
9981         (x86_nat_target): New template class.
9982
9983         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9984         (the_ppc_linux_nat_target): New.
9985         (ppc_linux_fetch_inferior_registers)
9986         (ppc_linux_can_use_hw_breakpoint)
9987         (ppc_linux_region_ok_for_hw_watchpoint)
9988         (ppc_linux_ranged_break_num_registers)
9989         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9990         (ppc_linux_insert_mask_watchpoint)
9991         (ppc_linux_remove_mask_watchpoint)
9992         (ppc_linux_can_accel_watchpoint_condition)
9993         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9994         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9995         (ppc_linux_watchpoint_addr_within_range)
9996         (ppc_linux_masked_watch_num_registers)
9997         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9998         (ppc_linux_read_description): Refactor as methods of
9999         ppc_linux_nat_target.
10000         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
10001
10002         * procfs.c (procfs_xfer_partial): Delete forward declaration.
10003         (procfs_target): New class.
10004         (the_procfs_target): New.
10005         (procfs_target): Delete function.
10006         (procfs_auxv_parse, procfs_attach, procfs_detach)
10007         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
10008         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
10009         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
10010         (procfs_create_inferior, procfs_update_thread_list)
10011         (procfs_thread_alive, procfs_pid_to_str)
10012         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
10013         (procfs_stopped_data_address, procfs_insert_watchpoint)
10014         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
10015         (proc_find_memory_regions, procfs_info_proc)
10016         (procfs_make_note_section): Refactor as methods of procfs_target.
10017         (_initialize_procfs): Adjust.
10018         * sol-thread.c (sol_thread_target): New class.
10019         (sol_thread_ops): Now a sol_thread_target.
10020         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
10021         (sol_thread_fetch_registers, sol_thread_store_registers)
10022         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
10023         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
10024         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
10025         (init_sol_thread_ops): Delete.
10026         (_initialize_sol_thread): Adjust.  Remove references to
10027         init_sol_thread_ops and complete_target_initialization.
10028
10029         * windows-nat.c (windows_nat_target): New class.
10030         (windows_fetch_inferior_registers)
10031         (windows_store_inferior_registers, windows_resume, windows_wait)
10032         (windows_attach, windows_detach, windows_pid_to_exec_file)
10033         (windows_files_info, windows_create_inferior)
10034         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
10035         (windows_close, windows_pid_to_str, windows_xfer_partial)
10036         (windows_get_tib_address, windows_get_ada_task_ptid)
10037         (windows_thread_name, windows_thread_alive): Refactor as
10038         windows_nat_target methods.
10039         (do_initial_windows_stuff): Adjust.
10040         (windows_target): Delete function.
10041         (_initialize_windows_nat): Adjust.
10042
10043         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
10044         (darwin_mourn_inferior, darwin_kill_inferior)
10045         (darwin_create_inferior, darwin_attach, darwin_detach)
10046         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
10047         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
10048         (darwin_supports_multi_process): Refactor as darwin_nat_target
10049         methods.
10050         (darwin_resume_to, darwin_files_info): Delete.
10051         (_initialize_darwin_inferior): Rename to ...
10052         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
10053         * darwin-nat.h: Include "inf-child.h".
10054         (darwin_nat_target): New class.
10055         (darwin_complete_target): Delete.
10056         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
10057         (darwin_target): New.
10058         (i386_darwin_fetch_inferior_registers)
10059         (i386_darwin_store_inferior_registers): Refactor as methods of
10060         darwin_nat_target.
10061         (darwin_complete_target): Delete, with ...
10062         (_initialize_i386_darwin_nat): ... bits factored out here.
10063
10064         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
10065         (the_alpha_linux_nat_target): New.
10066         (alpha_linux_register_u_offset): Refactor as
10067         alpha_linux_nat_target method.
10068         (_initialize_alpha_linux_nat): Adjust.
10069         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
10070         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10071         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
10072         methods of linux_nat_trad_target.
10073         (linux_trad_target): Delete.
10074         * linux-nat-trad.h (linux_trad_target): Delete function.
10075         (linux_nat_trad_target): New class.
10076         * mips-linux-nat.c (mips_linux_nat_target): New class.
10077         (super_fetch_registers, super_store_registers, super_close):
10078         Delete.
10079         (the_mips_linux_nat_target): New.
10080         (mips64_linux_regsets_fetch_registers)
10081         (mips64_linux_regsets_store_registers)
10082         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10083         (mips_linux_register_u_offset, mips_linux_read_description)
10084         (mips_linux_can_use_hw_breakpoint)
10085         (mips_linux_stopped_by_watchpoint)
10086         (mips_linux_stopped_data_address)
10087         (mips_linux_region_ok_for_hw_watchpoint)
10088         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10089         (mips_linux_close): Refactor as methods of mips_linux_nat.
10090         (_initialize_mips_linux_nat): Adjust to C++ification.
10091
10092         * aix-thread.c (aix_thread_target): New class.
10093         (aix_thread_ops): Now an aix_thread_target.
10094         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10095         (aix_thread_fetch_registers, aix_thread_store_registers)
10096         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10097         (aix_thread_thread_alive, aix_thread_pid_to_str)
10098         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10099         Refactor as methods of aix_thread_target.
10100         (init_aix_thread_ops): Delete.
10101         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10102         and complete_target_initialization.
10103         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10104         (rs6000_nat_target): New class.
10105         (the_rs6000_nat_target): New.
10106         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10107         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10108         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10109         (super_create_inferior): Delete.
10110         (_initialize_rs6000_nat): Adjust to C++ification.
10111
10112         * arm-linux-nat.c (arm_linux_nat_target): New class.
10113         (the_arm_linux_nat_target): New.
10114         (arm_linux_fetch_inferior_registers)
10115         (arm_linux_store_inferior_registers, arm_linux_read_description)
10116         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10117         (arm_linux_remove_hw_breakpoint)
10118         (arm_linux_region_ok_for_hw_watchpoint)
10119         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10120         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10121         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10122         arm_linux_nat_target.
10123         (_initialize_arm_linux_nat): Adjust to C++ification.
10124
10125         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10126         (the_aarch64_linux_nat_target): New.
10127         (aarch64_linux_fetch_inferior_registers)
10128         (aarch64_linux_store_inferior_registers)
10129         (aarch64_linux_child_post_startup_inferior)
10130         (aarch64_linux_read_description)
10131         (aarch64_linux_can_use_hw_breakpoint)
10132         (aarch64_linux_insert_hw_breakpoint)
10133         (aarch64_linux_remove_hw_breakpoint)
10134         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10135         (aarch64_linux_region_ok_for_hw_watchpoint)
10136         (aarch64_linux_stopped_data_address)
10137         (aarch64_linux_stopped_by_watchpoint)
10138         (aarch64_linux_watchpoint_addr_within_range)
10139         (aarch64_linux_can_do_single_step): Refactor as methods of
10140         aarch64_linux_nat_target.
10141         (super_post_startup_inferior): Delete.
10142         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10143
10144         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10145         (the_hppa_linux_nat_target): New.
10146         (hppa_linux_fetch_inferior_registers)
10147         (hppa_linux_store_inferior_registers): Refactor as methods of
10148         hppa_linux_nat_target.
10149         (_initialize_hppa_linux_nat): Adjust to C++ification.
10150
10151         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10152         (the_ia64_linux_nat_target): New.
10153         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10154         (ia64_linux_stopped_data_address)
10155         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10156         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10157         ia64_linux_nat_target methods.
10158         (super_xfer_partial): Delete.
10159         (_initialize_ia64_linux_nat): Adjust to C++ification.
10160
10161         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10162         (the_m32r_linux_nat_target): New.
10163         (m32r_linux_fetch_inferior_registers)
10164         (m32r_linux_store_inferior_registers): Refactor as
10165         m32r_linux_nat_target methods.
10166         (_initialize_m32r_linux_nat): Adjust to C++ification.
10167
10168         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10169         (the_m68k_linux_nat_target): New.
10170         (m68k_linux_fetch_inferior_registers)
10171         (m68k_linux_store_inferior_registers): Refactor as
10172         m68k_linux_nat_target methods.
10173         (_initialize_m68k_linux_nat): Adjust to C++ification.
10174
10175         * s390-linux-nat.c (s390_linux_nat_target): New class.
10176         (the_s390_linux_nat_target): New.
10177         (s390_linux_fetch_inferior_registers)
10178         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10179         (s390_insert_watchpoint, s390_remove_watchpoint)
10180         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10181         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10182         (s390_auxv_parse, s390_read_description): Refactor as methods of
10183         s390_linux_nat_target.
10184         (_initialize_s390_nat): Adjust to C++ification.
10185
10186         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10187         (the_sparc_linux_nat_target): New.
10188         (_initialize_sparc_linux_nat): Adjust to C++ification.
10189         * sparc-nat.c (sparc_fetch_inferior_registers)
10190         (sparc_store_inferior_registers): Remove target_ops parameter.
10191         * sparc-nat.h (sparc_fetch_inferior_registers)
10192         (sparc_store_inferior_registers): Remove target_ops parameter.
10193         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10194         (the_sparc64_linux_nat_target): New.
10195         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10196
10197         * spu-linux-nat.c (spu_linux_nat_target): New class.
10198         (the_spu_linux_nat_target): New.
10199         (spu_child_post_startup_inferior, spu_child_post_attach)
10200         (spu_child_wait, spu_fetch_inferior_registers)
10201         (spu_store_inferior_registers, spu_xfer_partial)
10202         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10203         methods.
10204         (_initialize_spu_nat): Adjust to C++ification.
10205
10206         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10207         (the_tilegx_linux_nat_target): New.
10208         (fetch_inferior_registers, store_inferior_registers):
10209         Refactor as methods.
10210         (_initialize_tile_linux_nat): Adjust to C++ification.
10211
10212         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10213         (the_xtensa_linux_nat_target): New.
10214         (xtensa_linux_fetch_inferior_registers)
10215         (xtensa_linux_store_inferior_registers): Refactor as
10216         xtensa_linux_nat_target methods.
10217         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10218
10219         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10220         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10221         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10222         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10223         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10224         (fbsd_stopped_by_sw_breakpoint)
10225         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10226         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10227         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10228         (fbsd_post_startup_inferior, fbsd_post_attach)
10229         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10230         (fbsd_set_syscall_catchpoint)
10231         (super_xfer_partial, super_resume, super_wait)
10232         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10233         (fbsd_handle_debug_trap): Remove target_ops parameter.
10234         (fbsd_nat_add_target): Delete.
10235         * fbsd-nat.h: Include "inf-ptrace.h".
10236         (fbsd_nat_add_target): Delete.
10237         (USE_SIGTRAP_SIGINFO): Define.
10238         (fbsd_nat_target): New class.
10239
10240         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10241         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10242         (amd64bsd_target): Delete.
10243         * amd64-bsd-nat.h: New file.
10244         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10245         "x86-bsd-nat.h".
10246         (amd64_fbsd_nat_target): New class.
10247         (the_amd64_fbsd_nat_target): New.
10248         (amd64fbsd_read_description): Refactor as method of
10249         amd64_fbsd_nat_target.
10250         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10251         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10252         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10253         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10254         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10255         (i386bsd_target): Delete.
10256         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10257         (i386bsd_fetch_inferior_registers)
10258         (i386bsd_store_inferior_registers): Declare.
10259         (i386_bsd_nat_target): New class.
10260         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10261         (the_i386_fbsd_nat_target): New.
10262         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10263         i386_fbsd_nat_target methods.
10264         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10265         (_initialize_i386fbsd_nat): Adjust to C++ification.
10266         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10267         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10268         (_initialize_x86_bsd_nat): Adjust to C++ification.
10269         * x86-bsd-nat.h: Include "x86-nat.h".
10270         (x86bsd_target): Delete declaration.
10271         (x86bsd_nat_target): New class.
10272
10273         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10274         (the_aarch64_fbsd_nat_target): New.
10275         (aarch64_fbsd_fetch_inferior_registers)
10276         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10277         aarch64_fbsd_nat_target.
10278         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10279         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10280         (the_alpha_bsd_nat_target): New.
10281         (alphabsd_fetch_inferior_registers)
10282         (alphabsd_store_inferior_registers): Refactor as
10283         alpha_bsd_nat_target methods.
10284         (_initialize_alphabsd_nat): Refactor as methods of
10285         alpha_bsd_nat_target.
10286         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10287         (the_amd64_nbsd_nat_target): New.
10288         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10289         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10290         (the_amd64_obsd_nat_target): New.
10291         (_initialize_amd64obsd_nat): Adjust to C++ification.
10292         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10293         (the_arm_fbsd_nat_target): New.
10294         (arm_fbsd_fetch_inferior_registers)
10295         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10296         (_initialize_arm_fbsd_nat): Refactor as methods of
10297         arm_fbsd_nat_target.
10298         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10299         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10300         (the_arm_netbsd_nat_target): New.
10301         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10302         arm_netbsd_nat_target.
10303         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10304         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10305         (the_hppa_nbsd_nat_target): New.
10306         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10307         hppa_nbsd_nat_target methods.
10308         (_initialize_hppanbsd_nat): Adjust to C++ification.
10309         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10310         (the_hppa_obsd_nat_target): New.
10311         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10312         methods of hppa_obsd_nat_target.
10313         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10314         add_target.
10315         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10316         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10317         add_target.
10318         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10319         (_initialize_i386obsd_nat): Use add_target.
10320         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10321         (the_m68k_bsd_nat_target): New.
10322         (m68kbsd_fetch_inferior_registers)
10323         (m68kbsd_store_inferior_registers): Refactor as methods of
10324         m68k_bsd_nat_target.
10325         (_initialize_m68kbsd_nat): Adjust to C++ification.
10326         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10327         (the_mips_fbsd_nat_target): New.
10328         (mips_fbsd_fetch_inferior_registers)
10329         (mips_fbsd_store_inferior_registers): Refactor as methods of
10330         mips_fbsd_nat_target.
10331         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10332         add_target.
10333         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10334         (the_mips_nbsd_nat_target): New.
10335         (mipsnbsd_fetch_inferior_registers)
10336         (mipsnbsd_store_inferior_registers): Refactor as methods of
10337         mips_nbsd_nat_target.
10338         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10339         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10340         (the_mips64_obsd_nat_target): New.
10341         (mips64obsd_fetch_inferior_registers)
10342         (mips64obsd_store_inferior_registers): Refactor as methods of
10343         mips64_obsd_nat_target.
10344         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10345         add_target.
10346         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10347         nbsd_nat_target.
10348         * nbsd-nat.h: Include "inf-ptrace.h".
10349         (nbsd_nat_target): New class.
10350         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10351         (obsd_wait): Refactor as methods of obsd_nat_target.
10352         (obsd_add_target): Delete.
10353         * obsd-nat.h: Include "inf-ptrace.h".
10354         (obsd_nat_target): New class.
10355         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10356         (the_ppc_fbsd_nat_target): New.
10357         (ppcfbsd_fetch_inferior_registers)
10358         (ppcfbsd_store_inferior_registers): Refactor as methods of
10359         ppc_fbsd_nat_target.
10360         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10361         add_target.
10362         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10363         (the_ppc_nbsd_nat_target): New.
10364         (ppcnbsd_fetch_inferior_registers)
10365         (ppcnbsd_store_inferior_registers): Refactor as methods of
10366         ppc_nbsd_nat_target.
10367         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10368         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10369         (the_ppc_obsd_nat_target): New.
10370         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10371         methods of ppc_obsd_nat_target.
10372         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10373         add_target.
10374         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10375         (the_sh_nbsd_nat_target): New.
10376         (shnbsd_fetch_inferior_registers)
10377         (shnbsd_store_inferior_registers): Refactor as methods of
10378         sh_nbsd_nat_target.
10379         (_initialize_shnbsd_nat): Adjust to C++ification.
10380         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10381         (inf_ptrace_xfer_partial): Delete.
10382         (sparc_xfer_partial, sparc_target): Delete.
10383         * sparc-nat.h (sparc_fetch_inferior_registers)
10384         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10385         (sparc_target): Delete function declaration.
10386         (sparc_target): New template class.
10387         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10388         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10389         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10390         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10391         add_target.
10392         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10393         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10394         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10395         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10396         add_target.
10397         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10398         (the_vax_bsd_nat_target): New.
10399         (vaxbsd_fetch_inferior_registers)
10400         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10401         methods.
10402         (_initialize_vaxbsd_nat): Adjust to C++ification.
10403
10404         * bsd-kvm.c (bsd_kvm_target): New class.
10405         (bsd_kvm_ops): Now a bsd_kvm_target.
10406         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10407         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10408         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10409         bsd_kvm_target.
10410         (bsd_kvm_return_one): Delete.
10411         (bsd_kvm_add_target): Adjust to C++ification.
10412
10413         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10414         (nto_procfs_target_procfs): New classes.
10415         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10416         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10417         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10418         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10419         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10420         (procfs_remove_hw_breakpoint, procfs_resume)
10421         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10422         (procfs_kill_inferior, procfs_store_registers)
10423         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10424         as methods of nto_procfs_target.
10425         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10426         (nto_native_ops): Delete.
10427         (procfs_open, procfs_native_open): Delete.
10428         (nto_native_ops): Now an nto_procfs_target_native.
10429         (init_procfs_targets): Adjust to C++ification.
10430         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10431         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10432         Refactor as methods of nto_procfs_target.
10433
10434         * go32-nat.c (go32_nat_target): New class.
10435         (the_go32_nat_target): New.
10436         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10437         (go32_store_registers, go32_xfer_partial, go32_files_info)
10438         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10439         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10440         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10441         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10442         (go32_target): Delete.
10443         (_initialize_go32_nat): Adjust to C++ification.
10444
10445         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10446         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10447         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10448         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10449         gnu_nat_target.
10450         (gnu_target): Delete.
10451         * gnu-nat.h (gnu_target): Delete.
10452         (gnu_nat_target): New class.
10453         * i386-gnu-nat.c (gnu_base_target): New.
10454         (i386_gnu_nat_target): New class.
10455         (the_i386_gnu_nat_target): New.
10456         (_initialize_i386gnu_nat): Adjust to C++ification.
10457
10458 2018-05-02  Pedro Alves  <palves@redhat.com>
10459
10460         * bfd-target.c (target_bfd_xclose): Rename to ...
10461         (target_bfd_close): ... this.
10462         (target_bfd_reopen): Adjust.
10463         * target.c (target_close): Remove references to to_xclose.
10464         * target.h (target_ops::to_xclose): Delete.
10465         (target_ops::to_close): Update comments.
10466
10467 2018-05-02  Pedro Alves  <palves@redhat.com>
10468
10469         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10470         "linux-nat.h".
10471         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10472         * inf-ptrace.c (inf_ptrace_register_u_offset)
10473         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10474         (inf_ptrace_store_register, inf_ptrace_store_registers)
10475         (inf_ptrace_trad_target): Move to ...
10476         * linux-nat-trad.c: ... this new file.
10477         * linux-nat-trad.h: New file.
10478         * linux-nat.c (linux_target_install_ops): Make extern.
10479         (linux_trad_target): Delete.
10480         * linux-nat.h (linux_trad_target): Delete declaration.
10481         (linux_target_install_ops): Declare.
10482         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10483         "linux-nat.h".
10484
10485 2018-05-02  Pedro Alves  <palves@redhat.com>
10486
10487         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10488         procfs_target/add_target here.
10489         * procfs.c (procfs_target): Make static.
10490         (_initialize_procfs): Call add_target here.
10491         * procfs.h (struct target_ops): Remove forward declaration.
10492         (procfs_target): Remove declaration.
10493         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10494
10495 2018-05-02  Pedro Alves  <palves@redhat.com>
10496
10497         * procfs.c (procfs_stopped_by_watchpoint)
10498         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10499         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10500         Forward declare.
10501         (procfs_use_watchpoints): Delete, move contents...
10502         (procfs_target): ... here.
10503         * procfs.h (procfs_use_watchpoints): Delete declaration.
10504         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10505         procfs_use_watchpoints.
10506         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10507         procfs_use_watchpoints.
10508
10509 2018-05-02  Tom Tromey  <tom@tromey.com>
10510
10511         PR python/20084:
10512         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10513         and var_zuinteger_unlimited.
10514         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10515         and PARAM_ZUINTEGER_UNLIMITED.
10516         (set_parameter_value): Handle var_zuinteger and
10517         var_zuinteger_unlimited.
10518         (add_setshow_generic): Likewise.
10519         (parmpy_init): Likewise.
10520
10521 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10522
10523         PR rust/23124
10524         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10525         pointer is not null before dereferencing it.
10526
10527 2018-04-30  Tom Tromey  <tom@tromey.com>
10528
10529         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10530         is_mi_like_p.
10531
10532 2018-04-30  Tom Tromey  <tom@tromey.com>
10533
10534         * breakpoint.c (mention): Remove use of is_mi_like_p.
10535         (print_mention_ranged_breakpoint): Likewise.
10536         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10537         of is_mi_like_p.
10538
10539 2018-04-30  Tom Tromey  <tom@tromey.com>
10540
10541         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10542
10543 2018-04-30  Tom Tromey  <tom@tromey.com>
10544
10545         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10546         (info_spu_event_command): Remove some uses of is_mi_like_p.
10547
10548 2018-04-30  Tom Tromey  <tom@tromey.com>
10549
10550         * python/py-framefilter.c (py_print_single_arg)
10551         (enumerate_locals, py_print_args, py_print_frame): Remove some
10552         uses of is_mi_like_p.
10553
10554 2018-04-30  Tom Tromey  <tom@tromey.com>
10555
10556         * ui-out.c: Update.
10557         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10558         * ui-out.h (ui_out::is_mi_like_p): Now const.
10559         (ui_out::do_is_mi_like_p): Now const.
10560         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10561
10562 2018-04-30  Tom Tromey  <tom@tromey.com>
10563
10564         * varobj.c (varobj_set_visualizer): Use new_reference.
10565         * python/python.c (gdbpy_decode_line): Use new_reference.
10566         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10567         new_reference.
10568
10569 2018-04-30  Tom Tromey  <tom@tromey.com>
10570
10571         * varobj.c (install_new_value): Use new_reference.
10572         * value.h (value_incref): Return void.  Swap intro comment with
10573         value_decref.
10574         * value.c (set_value_parent): Use new_reference.
10575         (value_incref): Return void.  Update intro comment.
10576         (release_value): Use new_reference.
10577         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10578
10579 2018-04-30  Tom Tromey  <tom@tromey.com>
10580
10581         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10582         * gdb_bfd.h (new_bfd_ref): Remove.
10583         (gdb_bfd_open): Update comment.
10584         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10585         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10586         (gdb_bfd_fdopenr): Use new_reference.
10587         * exec.c (exec_file_attach): Use new_reference.
10588
10589 2018-04-30  Tom Tromey  <tom@tromey.com>
10590
10591         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10592         method.
10593
10594 2018-04-30  Tom Tromey  <tom@tromey.com>
10595
10596         * jit.c (jit_read_code_entry): Use type_align.
10597         * i386-tdep.c (i386_gdbarch_init): Don't call
10598         set_gdbarch_long_long_align_bit.
10599         * gdbarch.sh: Remove long_long_align_bit.
10600         * gdbarch.c, gdbarch.h: Rebuild.
10601         * arc-tdep.c (arc_type_align): New function.
10602         (arc_gdbarch_init): Use arc_type_align.  Don't call
10603         set_gdbarch_long_long_align_bit.
10604
10605 2018-04-30  Tom Tromey  <tom@tromey.com>
10606
10607         * rust-lang.c (rust_type_alignment): Remove.
10608         (rust_composite_type): Use type_align.
10609
10610 2018-04-30  Tom Tromey  <tom@tromey.com>
10611
10612         * NEWS: Mention Type.align.
10613         * python/py-type.c (typy_get_alignof): New function.
10614         (type_object_getset): Add "alignof".
10615
10616 2018-04-30  Tom Tromey  <tom@tromey.com>
10617
10618         PR exp/17095:
10619         * NEWS: Update.
10620         * std-operator.def (UNOP_ALIGNOF): New operator.
10621         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10622         New.
10623         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10624         * c-lang.c (c_op_print_tab): Add alignof.
10625         * c-exp.y (ALIGNOF): New token.
10626         (exp): Add "ALIGNOF" production.
10627         (ident_tokens): Add _Alignof and alignof.
10628
10629 2018-04-30  Tom Tromey  <tom@tromey.com>
10630
10631         * i386-tdep.c (i386_type_align): New function.
10632         (i386_gdbarch_init): Update.
10633         * gdbarch.sh (type_align): New method.
10634         * gdbarch.c, gdbarch.h: Rebuild.
10635         * arch-utils.h (default_type_align): Declare.
10636         * arch-utils.c (default_type_align): New function.
10637         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10638         (struct type) <align_log2>: New field.
10639         <instance_flags>: Now a bitfield.
10640         (TYPE_RAW_ALIGN): New macro.
10641         (type_align, type_raw_align, set_type_align): Declare.
10642         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10643         functions.
10644         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10645         (get_alignment, maybe_set_alignment): New functions.
10646         (read_structure_type, read_enumeration_type, read_array_type)
10647         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10648         (read_subrange_type, read_base_type): Set type alignment.
10649
10650 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10651
10652         * dwarf2read.c (read_index_from_section): Use bool.
10653
10654 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10655
10656         PR gdb/22950
10657         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10658         with #ifdef.
10659
10660 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10661
10662         PR build/22873
10663         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10664         last step, and do it atomically.
10665
10666 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10667
10668         * compile/compile-c-types.c (convert_int, convert_float):
10669         Update for C FE v1.
10670
10671 2018-04-27  Tom Tromey  <tom@tromey.com>
10672
10673         PR rust/22545:
10674         * rust-lang.c (rust_inclusive_range_type_p): New function.
10675         (rust_range): Handle inclusive ranges.
10676         (rust_compute_range): Likewise.
10677         * rust-exp.y (struct rust_op) <inclusive>: New field.
10678         (DOTDOTEQ): New constant.
10679         (range_expr): Add "..=" productions.
10680         (operator_tokens): Add "..=" token.
10681         (ast_range): Add "inclusive" parameter.
10682         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10683         ranges.
10684         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10685         bounds values.
10686         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10687         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10688         Update comments.
10689         * expprint.c (print_subexp_standard): Handle new bounds values.
10690         (dump_subexp_body_standard): Likewise.
10691
10692 2018-04-27  Tom Tromey  <tom@tromey.com>
10693
10694         * configure: Rebuild.
10695         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10696         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10697         "OVERRIDE".
10698         (class symbol_needs_eval_context): Likewise.
10699         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10700         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10701         "virtual".
10702         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10703         "override".
10704         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10705         * aarch64-tdep.c (instruction_reader::read): Use "override".
10706         (instruction_reader_test::read): Likewise.
10707         * arm-tdep.c (instruction_reader::read): Use "override".
10708         (instruction_reader_thumb::read): Likewise.
10709
10710 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10711
10712         PR remote/9665
10713         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10714         instead of remote_send.
10715         (remote_send): Remove.
10716
10717 2018-04-26  Pedro Alves  <palves@redhat.com>
10718
10719         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10720         find_function_start_sal instead of find_pc_line.
10721
10722 2018-04-26  Pedro Alves  <palves@redhat.com>
10723
10724         * breakpoint.c (set_breakpoint_location_function): Handle
10725         mst_data_gnu_ifunc.
10726         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10727         * elfread.c (elf_symtab_read): Give data symbols with
10728         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10729         (elf_rel_plt_read): Update comment.
10730         * linespec.c (convert_linespec_to_sals): Handle
10731         mst_data_gnu_ifunc.
10732         (minsym_found): Handle mst_data_gnu_ifunc.
10733         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10734         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10735         * parse.c (find_minsym_type_and_address): Handle
10736         mst_data_gnu_ifunc.
10737         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10738         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10739         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10740         comment.
10741         <mst_data_gnu_ifunc>: New enumerator.
10742
10743 2018-04-26  Pedro Alves  <palves@redhat.com>
10744
10745         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10746         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10747         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10748         Handle it.
10749         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10750         (lookup_minimal_symbol_by_pc): Adjust.
10751         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10752         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10753         * minsyms.h (lookup_msym_prefer): New enum.
10754         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10755         parameter by a lookup_msym_prefer parameter.
10756
10757 2018-04-26  Pedro Alves  <palves@redhat.com>
10758
10759         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10760         ends in "@plt" instead of looking at the symbol's section.
10761
10762 2018-04-26  Pedro Alves  <palves@redhat.com>
10763
10764         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10765         all references.
10766         (find_pc_partial_function_gnu_ifunc): Rename to ...
10767         (find_pc_partial_function): ... this, and remove references to
10768         'is_gnu_ifunc_p'.
10769         (find_pc_partial_function): Delete old implementation.
10770         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10771
10772 2018-04-26  Pedro Alves  <palves@redhat.com>
10773
10774         * linespec.c (struct bound_minimal_symbol_search_key): New.
10775         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10776         skip first line if we found a GNU ifunc minimal symbol by name.
10777         (compare_msymbols): Change parameters to work with a destructured
10778         lhs minsym.
10779         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10780         functions.
10781
10782 2018-04-26  Pedro Alves  <palves@redhat.com>
10783
10784         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10785         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10786         address/name.
10787         (add_location_to_breakpoint): Store the minsym and the objfile in
10788         the breakpoint location.
10789         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10790         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10791         Record the minsym in the sal.
10792         * symtab.h (symtab_and_line) <msymbol>: New field.
10793
10794 2018-04-26  Pedro Alves  <palves@redhat.com>
10795
10796         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10797         unless we actually resolved the ifunc.
10798
10799 2018-04-26  Pedro Alves  <palves@redhat.com>
10800
10801         * c-exp.y (variable production): Prefer ifunc minsyms over
10802         regular function symbols.
10803         * symtab.c (find_gnu_ifunc): New function.
10804         * minsyms.h (lookup_msym_prefer): New enum.
10805         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10806         parameter by a lookup_msym_prefer parameter.
10807         * symtab.h (find_gnu_ifunc): New declaration.
10808
10809 2018-04-26  Pedro Alves  <palves@redhat.com>
10810
10811         * blockframe.c (find_gnu_ifunc_target_type): New function.
10812         (find_function_type): New.
10813         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10814         return a value with a memory address.
10815         (eval_call): For calls to GNU ifunc functions, try to find the
10816         type of the target function from the type that the resolver
10817         returns.
10818         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10819         symbols.
10820         * infcall.c (find_function_return_type): Delete.
10821         (find_function_addr): Add 'function_type' parameter.  For calls to
10822         GNU ifunc functions, try to find the type of the target function
10823         from the type that the resolver returns, and return it via
10824         FUNCTION_TYPE.
10825         (call_function_by_hand_dummy): Adjust to use the function type
10826         returned by find_function_addr.
10827         (find_function_addr): Add 'function_type' parameter and move
10828         description here.
10829         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10830         declarations.
10831
10832 2018-04-26  Pedro Alves  <palves@redhat.com>
10833
10834         * c-exp.y (variable production): Skip finding an alias for ifunc
10835         symbols.
10836
10837 2018-04-26  Pedro Alves  <palves@redhat.com>
10838
10839         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10840
10841 2018-04-25  Pedro Alves  <palves@redhat.com>
10842
10843         * infcmd.c (kill_command): Print the pid as string, not the whole
10844         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10845         message.
10846         * remote.c (remote_detach_1): Print the pid as string, not the
10847         whole thread's ptid.
10848
10849 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10850             Sergio Durigan Junior  <sergiodj@redhat.com>
10851             Pedro Alves  <palves@redhat.com>
10852
10853         * infcmd.c (kill_command): Print message when inferior has
10854         been killed.
10855         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10856         '1'.
10857         (add_inferior): Improve message printed when
10858         'print_inferior_events' is on.
10859         (exit_inferior): Remove message printed when
10860         'print_inferior_events' is on.
10861         (detach_inferior): Improve message printed when
10862         'print_inferior_events' is on.
10863         (initialize_inferiors): Use 'add_inferior_silent' to set
10864         'current_inferior_'.
10865         * inferior.h (print_inferior_events): Declare here as
10866         'extern'.
10867         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10868         '[Detaching...]' messages when 'print_inferior_events' is on.
10869         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10870         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10871         'Detaching after fork from child...', replace it by '... from
10872         parent...'.
10873         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10874         prefix/suffix when printing 'Detaching...' messages.  Print
10875         them when 'print_inferior_events' is on.
10876         * remote.c (remote_detach_1): Print message when detaching
10877         from inferior and '!is_fork_parent'.
10878
10879 2018-04-24  Tom Tromey  <tom@tromey.com>
10880
10881         * cli-out.h: Reindent.
10882
10883 2018-04-24  Tom Tromey  <tom@tromey.com>
10884
10885         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10886         (cli_ui_out::do_field_string): Use fputs_filtered.
10887         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10888
10889 2018-04-23  Tom Tromey  <tom@tromey.com>
10890
10891         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10892         gdb::unique_xmalloc_ptr.
10893
10894 2018-04-23  Tom Tromey  <tom@tromey.com>
10895
10896         * configure: Rebuild.
10897
10898 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10899
10900         PR gdb/23095
10901         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10902         prepare_for_testing.  Set normal_bp to r_debug_state if target
10903         is bsd.
10904
10905 2018-04-21  Pedro Alves  <palves@redhat.com>
10906             Rajendra SY  <rajendra.sy@gmail.com>
10907
10908         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10909         * remote.c (extended_remote_attach): In all-stop mode, mark the
10910         thread as executing.
10911
10912 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10913
10914         * thread.c (thread_apply_all_command): Fix comment.
10915         (thread_command): Fix comment.
10916
10917 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10918
10919         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10920         parameter.
10921         * features/aarch64-core.c (create_feature_aarch64_core):
10922         Regenerate.
10923         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10924         Likewise.
10925         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10926         Likewise.
10927         * features/i386/32bit-avx512.c
10928         (create_feature_i386_32bit_avx512): Likewise.
10929         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10930         Likewise.
10931         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10932         Likewise.
10933         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10934         Likewise.
10935         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10936         Likewise.
10937         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10938         Likewise.
10939         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10940         Likewise.
10941         * features/i386/64bit-avx512.c
10942         (create_feature_i386_64bit_avx512): Likewise.
10943         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10944         Likewise.
10945         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10946         Likewise.
10947         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10948         Likewise.
10949         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10950         Likewise.
10951         * features/i386/64bit-segments.c
10952         (create_feature_i386_64bit_segments): Likewise.
10953         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10954         Likewise.
10955         * features/i386/x32-core.c
10956         (create_feature_i386_x32_core): Likewise.
10957         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10958         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10959         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10960         * target-descriptions.c: In generated code, don't pass xml
10961         filename.
10962
10963 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10964
10965         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10966         (print_xml_feature::visit_post): Likewise.
10967         (print_xml_feature::visit): Likewise.
10968         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10969         (print_xml_feature): Add new class.
10970         * regformats/regdat.sh: Null xmltarget on feature targets.
10971         * target-descriptions.c (struct target_desc): Add xmltarget.
10972         (maintenance_check_tdesc_xml_convert): Add unittest function.
10973         (tdesc_get_features_xml): Add function to get xml.
10974         (maintenance_check_xml_descriptions): Test xml generation.
10975         * xml-tdesc.c (string_read_description_xml): Add function.
10976         * xml-tdesc.h (string_read_description_xml): Add declaration.
10977
10978 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10979
10980         * features/Makefile: Add feature marker to targets with new style
10981         target descriptions.
10982         * regformats/aarch64.dat: Regenerate.
10983         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10984         * regformats/i386/amd64-avx-linux.dat: Likewise.
10985         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10986         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10987         * regformats/i386/amd64-linux.dat: Likewise.
10988         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10989         * regformats/i386/amd64.dat: Likewise.
10990         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10991         * regformats/i386/i386-avx-linux.dat: Likewise.
10992         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10993         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10994         * regformats/i386/i386-linux.dat: Likewise.
10995         * regformats/i386/i386-mmx-linux.dat: Likewise.
10996         * regformats/i386/i386-mpx-linux.dat: Likewise.
10997         * regformats/i386/i386.dat: Likewise.
10998         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10999         * regformats/i386/x32-avx-linux.dat: Likewise.
11000         * regformats/i386/x32-linux.dat: Likewise.
11001         * regformats/tic6x-c62x-linux.dat: Likewise.
11002         * regformats/tic6x-c64x-linux.dat: Likewise.
11003         * regformats/tic6x-c64xp-linux.dat: Likewise.
11004         * regformats/regdat.sh: Parse feature marker.
11005
11006 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11007
11008         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
11009         (tdesc_osabi_name): Likewise.
11010         * target-descriptions.c (tdesc_architecture_name): Add new
11011         function.
11012         (tdesc_osabi_name): Likewise.
11013
11014 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11015
11016         * common/tdesc.c (tdesc_predefined_type): Move to here.
11017         (tdesc_named_type): Likewise.
11018         (tdesc_create_vector): Likewise.
11019         (tdesc_create_struct): Likewise.
11020         (tdesc_set_struct_size): Likewise.
11021         (tdesc_create_union): Likewise.
11022         (tdesc_create_flags): Likewise.
11023         (tdesc_create_enum): Likewise.
11024         (tdesc_add_field): Likewise.
11025         (tdesc_add_typed_bitfield): Likewise.
11026         (tdesc_add_bitfield): Likewise.
11027         (tdesc_add_flag): Likewise.
11028         (tdesc_add_enum_value): Likewise.
11029         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
11030         (struct tdesc_type_vector): Likewise.
11031         (struct tdesc_type_field): Likewise.
11032         (struct tdesc_type_with_fields): Likewise.
11033         (tdesc_create_enum): Add declaration.
11034         (tdesc_add_typed_bitfield): Likewise.
11035         (tdesc_add_enum_value): Likewise.
11036         * target-descriptions.c (tdesc_type_field): Move from here.
11037         (tdesc_type_builtin): Likewise.
11038         (tdesc_type_vector): Likewise.
11039         (tdesc_type_with_fields): Likewise.
11040         (tdesc_predefined_types): Likewise.
11041         (tdesc_named_type): Likewise.
11042         (tdesc_create_vector): Likewise.
11043         (tdesc_create_struct): Likewise.
11044         (tdesc_set_struct_size): Likewise.
11045         (tdesc_create_union): Likewise.
11046         (tdesc_create_flags): Likewise.
11047         (tdesc_create_enum): Likewise.
11048         (tdesc_add_field): Likewise.
11049         (tdesc_add_typed_bitfield): Likewise.
11050         (tdesc_add_bitfield): Likewise.
11051         (tdesc_add_flag): Likewise.
11052         (tdesc_add_enum_value): Likewise.
11053         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
11054         (tdesc_add_typed_bitfield): Likewise.
11055         (tdesc_add_enum_value): Likewise.
11056
11057 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11058
11059         * common/tdesc.c (tdesc_feature::accept): Move to here.
11060         (tdesc_feature::operator==): Likewise.
11061         (tdesc_create_reg): Likewise.
11062         * common/tdesc.h (tdesc_type_kind): Likewise.
11063         (struct tdesc_type): Likewise.
11064         (struct tdesc_feature): Likewise.
11065         * regformats/regdat.sh: Create a feature.
11066         * target-descriptions.c (tdesc_type_kind): Move from here.
11067         (tdesc_type): Likewise.
11068         (tdesc_type_up): Likewise.
11069         (tdesc_feature): Likewise.
11070         (tdesc_create_reg): Likewise.
11071
11072 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
11073
11074         * Makefile.in: Add arch/tdesc.c
11075         * common/tdesc.c: New file.
11076         * common/tdesc.h (tdesc_element_visitor): Move to here.
11077         (tdesc_element): Likewise.
11078         (tdesc_reg): Likewise.
11079         (tdesc_reg_up): Likewise.
11080         * regformats/regdef.h (reg): Add offset to constructors.
11081         * target-descriptions.c (tdesc_element_visitor): Move from here.
11082         (tdesc_element): Likewise.
11083         (tdesc_reg): Likewise.
11084         (tdesc_reg_up): Likewise.
11085
11086 2018-04-17  Tom Tromey  <tom@tromey.com>
11087
11088         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11089         discriminant field.
11090
11091 2018-04-17  Tom Tromey  <tom@tromey.com>
11092
11093         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11094
11095 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11096
11097         * symtab.c (print_symbol_info): Skip printing filename and line
11098         number when `last' is NULL.
11099         (symtab_symbol_info): Use empty string instead of NULL for first
11100         invocation of print_symbol_info.
11101         (rbreak_command): Pass NULL to `last' parameter of
11102         print_symbol_info.
11103
11104 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11105
11106         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11107         instead of nullptr.
11108
11109 2018-04-16  Pedro Alves  <palves@redhat.com>
11110
11111         * MAINTAINERS (sh): Remove.
11112         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11113         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11114         (ALLDEPFILES): Remove sh64-tdep.c.
11115         * NEWS: Mentions that support for SH-5/SH64 is removed.
11116         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11117         (sh*-*-openbsd*): Ditto.
11118         (sh64-*-elf*): Remove.
11119         (sh*): Remove.
11120         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11121         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11122         * sh-tdep.c: No longer include "sh64-tdep.h".
11123         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11124         * sh64-tdep.c, sh64-tdep.h: Remove files.
11125
11126 2018-04-16  Pedro Alves  <palves@redhat.com>
11127
11128         * MAINTAINERS: Remove m88k.
11129         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11130         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11131         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11132         * NEWS: Mention that support for m88k was removed.
11133         * configure.host (m88*-*-*): Remove support.
11134         * configure.nat (m88k-*-*): Remove support.
11135         * configure.tgt (m88*-*-openbsd*): Remove.
11136         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11137
11138 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11139
11140         * configure.tgt (x86_tobjs): New variable.
11141         (amd64_tobjs, i386_tobjs): Use it.
11142
11143 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11144
11145         * symtab.c (print_symbol_info): Precede the symbol definition by
11146         the line number when available.
11147         * NEWS: Advertise this enhancement.
11148
11149 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11150
11151         * NEWS (New options): announce set/show record btrace cpu.
11152         * btrace.c: Include record-btrace.h.
11153         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11154         the vendor is unknown.
11155         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11156         Maybe overwrite the btrace configuration's cpu.
11157         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11158         (btrace_fetch): Add cpu parameter.  Update callers.
11159         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11160         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11161         errata workarounds if the vendor is unknown.
11162         * python/py-record-btrace.c: Include record-btrace.h.
11163         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11164         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11165         * record-btrace.c (record_btrace_cpu_state_kind): New.
11166         (record_btrace_cpu): New.
11167         (set_record_btrace_cpu_cmdlist): New.
11168         (record_btrace_get_cpu): New.
11169         (require_btrace_thread, record_btrace_info)
11170         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11171         (cmd_set_record_btrace_cpu_none): New.
11172         (cmd_set_record_btrace_cpu_auto): New.
11173         (cmd_set_record_btrace_cpu): New.
11174         (cmd_show_record_btrace_cpu): New.
11175         (_initialize_record_btrace): Initialize set/show record btrace cpu
11176         commands.
11177         * record-btrace.h (record_btrace_get_cpu): New.
11178
11179 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11180
11181         * record.c (set_record_command): Fix typo in message.
11182
11183 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11184
11185         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11186
11187 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11188
11189         * infrun.c (process_event_stop_test): Call
11190         gdbarch_in_indirect_branch_thunk.
11191         * gdbarch.sh (in_indirect_branch_thunk): New.
11192         * gdbarch.c: Regenerated.
11193         * gdbarch.h: Regenerated.
11194         * x86-tdep.h: New.
11195         * x86-tdep.c: New.
11196         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11197         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11198         (ALLDEPFILES): Add x86-tdep.c.
11199         * arch-utils.h (default_in_indirect_branch_thunk): New.
11200         * arch-utils.c (default_in_indirect_branch_thunk): New.
11201         * i386-tdep: Include x86-tdep.h.
11202         (i386_in_indirect_branch_thunk): New.
11203         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11204         function.
11205         * amd64-tdep: Include x86-tdep.h.
11206         (amd64_in_indirect_branch_thunk): New.
11207         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11208
11209 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11210
11211         PR gdb/23053
11212         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11213         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11214         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11215         regression.
11216
11217 2018-04-12  Tom Tromey  <tom@tromey.com>
11218
11219         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11220         (rust_evaluate_subexp): Likewise.
11221
11222 2018-04-12  Pedro Alves  <palves@redhat.com>
11223
11224         * procfs.c (procfs_detach): Make forward declaration's prototype
11225         match definition's protototype.
11226         (proc_get_LDT_entry): Remove stale do_cleanups call.
11227
11228 2018-04-12  Pedro Alves  <palves@redhat.com>
11229
11230         * target.h (target_ops::to_has_exited): Delete.
11231         (target_has_exited): Delete.
11232         * target-delegates.c: Regenerate.
11233
11234 2018-04-11  Pedro Alves  <palves@redhat.com>
11235
11236         * target.c (fileio_fh_t::t): Add comment.
11237         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11238         (target_fileio_close): Handle a NULL target.
11239         (invalidate_fileio_fh): New.
11240         (target_close): Call it.
11241         * remote.c (remote_hostio_send_command): No longer check whether
11242         remote_desc is open.
11243
11244 2018-04-11  Pedro Alves  <palves@redhat.com>
11245
11246         * target.c (fileio_fh_t): Make it a named struct instead of a
11247         typedef.
11248         (fileio_fh_t::is_closed): New method.
11249         (DEF_VEC_O (fileio_fh_t)): Remove.
11250         (fileio_fhandles): Now a std::vector.
11251         (is_closed_fileio_fh): Delete.
11252         (acquire_fileio_fd): Adjust.  Rename parameters.
11253         (release_fileio_fd): Adjust.
11254         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11255         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11256         (target_fileio_close): Adjust.
11257
11258 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11259
11260         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11261         index.
11262
11263 2018-04-10  Pedro Alves  <palves@redhat.com>
11264
11265         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11266         (scoped_finish_thread_state): New class.
11267         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11268         cleanup.
11269         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11270         (fetch_inferior_event, normal_stop): Likewise.
11271         * thread.c (finish_thread_state_cleanup): Delete.
11272
11273 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11274             Pedro Alves  <palves@redhat.com>
11275
11276         * value.c: Include "selftest.h" and "common/array-view.h".
11277         (struct range) <operator ==>: New.
11278         (test_ranges_contain): New.
11279         (check_ranges_vector): New.
11280         (test_insert_into_bit_range_vector): New.
11281         (_initialize_values): Register selftests.
11282         * common/array-view.h (operator==, operator!=): New.
11283
11284 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11285
11286         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11287         an iterator.
11288         * inline-frame.c: Include <algorithm>.
11289         (struct inline_state): Add constructor.
11290         (inline_state_s): Remove.
11291         (DEF_VEC_O(inline_state_s)): Remove.
11292         (inline_states): Change type to std::vector.
11293         (find_inline_frame_state): Adjust to std::vector.
11294         (allocate_inline_frame_state): Remove.
11295         (clear_inline_frame_state): Adjust to std::vector.
11296         (skip_inline_frames): Adjust to std::vector.
11297
11298 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11299
11300         * tracepoint.h (struct trace_state_variable): Add constructor.
11301         <name>: Change type to std::string.
11302         * tracepoint.c (tsv_s): Remove.
11303         (DEF_VEC_O(tsv_s)): Remove.
11304         (tvariables): Change to std::vector.
11305         (create_trace_state_variable): Adjust to std::vector.
11306         (find_trace_state_variable): Likewise.
11307         (find_trace_state_variable_by_number): Likewise.
11308         (delete_trace_state_variable): Likewise.
11309         (trace_variable_command): Adjust to std::string.
11310         (delete_trace_variable_command): Likewise.
11311         (tvariables_info_1): Adjust to std::vector.
11312         (save_trace_state_variables): Likewise.
11313         (start_tracing): Likewise.
11314         (merge_uploaded_trace_state_variables): Adjust to std::vector
11315         and std::string.
11316         * target.h (struct target_ops)
11317         <to_download_trace_state_variable>: Pass reference to
11318         trace_state_variable.
11319         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11320         * target-delegates.c: Re-generate.
11321         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11322         (mi_tsv_deleted): Likewise.
11323         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11324         * remote.c (remote_download_trace_state_variable): Change
11325         pointer to reference and adjust.
11326         * make-target-delegates (parse_argtypes): Handle references.
11327         (write_function_header): Likewise.
11328         (munge_type): Likewise.
11329
11330 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11331
11332         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11333         string_view-selftests.c.
11334         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11335         testsuite.
11336         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11337         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11338         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11339         * unittests/basic_string_view/element_access/char/1.cc:
11340         Likewise.
11341         * unittests/basic_string_view/element_access/char/empty.cc:
11342         Likewise.
11343         * unittests/basic_string_view/element_access/char/front_back.cc:
11344         Likewise.
11345         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11346         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11347         Likewise.
11348         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11349         Likewise.
11350         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11351         Likewise.
11352         * unittests/basic_string_view/operations/compare/char/1.cc:
11353         Likewise.
11354         * unittests/basic_string_view/operations/compare/char/13650.cc:
11355         Likewise.
11356         * unittests/basic_string_view/operations/copy/char/1.cc:
11357         Likewise.
11358         * unittests/basic_string_view/operations/data/char/1.cc:
11359         Likewise.
11360         * unittests/basic_string_view/operations/find/char/1.cc:
11361         Likewise.
11362         * unittests/basic_string_view/operations/find/char/2.cc:
11363         Likewise.
11364         * unittests/basic_string_view/operations/find/char/3.cc:
11365         Likewise.
11366         * unittests/basic_string_view/operations/find/char/4.cc:
11367         Likewise.
11368         * unittests/basic_string_view/operations/rfind/char/1.cc:
11369         Likewise.
11370         * unittests/basic_string_view/operations/rfind/char/2.cc:
11371         Likewise.
11372         * unittests/basic_string_view/operations/rfind/char/3.cc:
11373         Likewise.
11374         * unittests/basic_string_view/operations/substr/char/1.cc:
11375         Likewise.
11376         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11377         * unittests/string_view-selftests.c: New file.
11378
11379 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11380
11381         * unittests/basic_string_view/capacity/1.cc: New file.
11382         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11383         * unittests/basic_string_view/cons/char/1.cc: New file.
11384         * unittests/basic_string_view/cons/char/2.cc: New file.
11385         * unittests/basic_string_view/cons/char/3.cc: New file.
11386         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11387         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11388         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11389         * unittests/basic_string_view/element_access/char/1.cc: New file.
11390         * unittests/basic_string_view/element_access/char/2.cc: New file.
11391         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11392         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11393         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11394         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11395         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11396         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11397         * unittests/basic_string_view/include.cc: New file.
11398         * unittests/basic_string_view/inserters/char/1.cc: New file.
11399         * unittests/basic_string_view/inserters/char/2.cc: New file.
11400         * unittests/basic_string_view/inserters/char/3.cc: New file.
11401         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11402         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11403         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11404         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11405         * unittests/basic_string_view/literals/types.cc: New file.
11406         * unittests/basic_string_view/literals/values.cc: New file.
11407         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11408         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11409         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11410         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11411         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11412         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11413         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11414         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11415         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11416         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11417         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11418         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11419         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11420         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11421         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11422         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11423         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11424         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11425         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11426         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11427         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11428         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11429         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11430         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11431         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11432         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11433         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11434         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11435         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11436         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11437         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11438         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11439         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11440         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11441         * unittests/basic_string_view/operators/char/2.cc: New file.
11442         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11443         * unittests/basic_string_view/range_access/char/1.cc: New file.
11444         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11445         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11446         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11447         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11448         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11449         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11450         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11451         * unittests/basic_string_view/typedefs.cc: New file.
11452         * unittests/basic_string_view/types/1.cc: New file.
11453
11454 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11455
11456         * common/gdb_string_view.h: Remove libstdc++ implementation
11457         details, adjust to gdb reality.
11458         * common/gdb_string_view.tcc: Likewise.
11459         * cli/cli-script.c (struct string_view): Remove.
11460         (user_args) <m_args>: Change element type to gdb::string_view.
11461         (user_args::insert_args): Adjust.
11462
11463 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11464
11465         * common/gdb_string_view.h: New file.
11466         * common/gdb_string_view.tcc: New file.
11467
11468 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11469
11470         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11471         * configure: Re-generate.
11472
11473 2018-04-09  Pedro Alves  <palves@redhat.com>
11474
11475         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11476         (set_target_gdbarch): Call
11477         gdb::observers::architecture_changed.notify instead of
11478         observer_notify_architecture_changed.
11479
11480 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11481
11482         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11483         (do_restore_current_traceframe_cleanup): Remove.
11484         (restore_current_traceframe_cleanup_dtor): Remove.
11485         (make_cleanup_restore_current_traceframe): Remove.
11486         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11487         New.
11488         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11489         * infrun.c (fetch_inferior_event): Use
11490         scoped_restore_current_traceframe.
11491
11492 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11493
11494         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11495         Remove.
11496         <n_allocated_type_units>: Remove.
11497         <all_type_units>: Change to std::vector.
11498         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11499         to std::vector change.
11500         (dwarf2_per_objfile::get_cutu): Likewise.
11501         (dwarf2_per_objfile::get_tu): Likewise.
11502         (create_signatured_type_table_from_index): Likewise.
11503         (create_signatured_type_table_from_debug_names): Likewise.
11504         (dw2_symtab_iter_next): Likewise.
11505         (dw2_print_stats): Likewise.
11506         (dw2_expand_all_symtabs): Likewise.
11507         (dw2_expand_marked_cus): Likewise.
11508         (dw2_debug_names_iterator::next): Likewise.
11509         (dwarf2_initialize_objfile): Likewise.
11510         (add_signatured_type_cu_to_table): Likewise.
11511         (create_all_type_units): Likewise.
11512         (add_type_unit): Likewise.
11513         (struct tu_abbrev_offset): Add constructor.
11514         (build_type_psymtabs_1): Adjust to std::vector change.
11515         (print_tu_stats): Likewise.
11516         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11517         (write_debug_names): Likewise.
11518
11519 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11520
11521         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11522         Make an std::vector.
11523         <n_comp_units>: Remove.
11524         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11525         to std::vector change.
11526         (dwarf2_per_objfile::get_cutu): Likewise.
11527         (dwarf2_per_objfile::get_cu): Likewise.
11528         (create_cus_from_index): Likewise.
11529         (create_addrmap_from_index): Likewise.
11530         (create_addrmap_from_aranges): Likewise.
11531         (dwarf2_read_index): Likewise.
11532         (dw2_find_last_source_symtab): Likewise.
11533         (dw2_map_symtabs_matching_filename): Likewise.
11534         (dw2_symtab_iter_next): Likewise.
11535         (dw2_print_stats): Likewise.
11536         (dw2_expand_all_symtabs): Likewise.
11537         (dw2_expand_symtabs_with_fullname): Likewise.
11538         (dw2_expand_marked_cus): Likewise.
11539         (dw2_map_symbol_filenames): Likewise.
11540         (create_cus_from_debug_names): Likewise.
11541         (dwarf2_read_debug_names): Likewise.
11542         (dw2_debug_names_iterator::next): Likewise.
11543         (dwarf2_initialize_objfile): Likewise.
11544         (set_partial_user): Likewise.
11545         (dwarf2_build_psymtabs_hard): Likewise.
11546         (read_comp_units_from_section): Remove arguments, adjust to
11547         std::vector change.
11548         (create_all_comp_units): Adjust to std::vector and
11549         read_comp_units_from_section changes.
11550         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11551         change.
11552         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11553         (psyms_seen_size): Likewise.
11554         (write_gdbindex): Likewise.
11555         (write_debug_names): Likewise.
11556
11557 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11558
11559         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11560         with dwarf2_per_objfile.
11561         (create_cus_from_index): Likewise.
11562         (create_signatured_type_table_from_index): Likewise.
11563         (dwarf2_read_index): Likewise.
11564         (dwarf2_initialize_objfile): Likewise.
11565         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11566         per_cu rather than get_dwarf2_per_objfile.
11567
11568 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11569
11570         * dwarf2read.h (struct signatured_type): Forward declare.
11571         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11572         New methods.
11573         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11574         (dw2_get_cutu): ...this.
11575         (dwarf2_per_objfile::get_cu): Rename from...
11576         (dw2_get_cu): ...this.
11577         (dwarf2_per_objfile::get_tu): New.
11578         (create_addrmap_from_index): Adjust.
11579         (create_addrmap_from_aranges): Adjust.
11580         (dw2_find_last_source_symtab): Adjust.
11581         (dw2_map_symtabs_matching_filename): Adjust.
11582         (dw2_symtab_iter_next): Adjust.
11583         (dw2_print_stats): Adjust.
11584         (dw2_expand_all_symtabs): Adjust.
11585         (dw2_expand_symtabs_with_fullname): Adjust.
11586         (dw2_expand_marked_cus): Adjust.
11587         (dw_expand_symtabs_matching_file_matcher): Adjust.
11588         (dw2_map_symbol_filenames): Adjust.
11589         (dw2_debug_names_iterator::next): Adjust.
11590         (dwarf2_initialize_objfile): Adjust.
11591         (set_partial_user): Adjust.
11592         (dwarf2_build_psymtabs_hard): Adjust.
11593
11594 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11595
11596         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11597         Remove unused variables.
11598         (dw2_map_symtabs_matching_filename): Likewise.
11599         (dwarf2_record_block_ranges): Likewise.
11600         (dwarf2_read_addr_index): Likewise.
11601         (follow_die_offset): Likewise.
11602
11603 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11604
11605         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11606         to symbol_file_add_main.
11607
11608 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11609
11610         PR mi/22299
11611         * mi/mi-console.c (do_fputc_async_safe): New.
11612         (mi_console_file::write_async_safe): New.
11613         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11614         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11615         New.
11616         * ui-file.c (ui_file::putstrn): Adjust call to
11617         fputstrn_unfiltered.
11618         * utils.c (printchar): Replace do_fputs and do_fprintf
11619         parameters by do_fputc.
11620         (fputstr_filtered): Adjust call to printchar.
11621         (fputstr_unfiltered): Likewise.
11622         (fputstrn_filtered): Likewise.
11623         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11624         printchar.
11625         * utils.h (do_fputc_ftype): New typedef.
11626         (fputstrn_unfiltered): Add do_fputc parameter.
11627
11628 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11629
11630         * regformats/i386/i386-avx.dat: Remove.
11631
11632 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11633
11634         PR gdb/22979
11635         * amd64-tdep.c (amd64_none_init_abi): New function.
11636         (amd64_x32_none_init_abi): New function.
11637         (_initialize_amd64_tdep): Register handlers for x86-64 and
11638         x64_32 with GDB_OSABI_NONE.
11639         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11640         GDB_OSABI_NONE osabi.
11641
11642 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11643
11644         PR gdb/22980
11645         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11646         GDB_OSABI_NONE.
11647         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11648         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11649
11650 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11651
11652         * common/byte-vector.h (char_vector): New type.
11653         * target.h (target_read_alloc): Return
11654         gdb::optional<byte_vector>.
11655         (target_read_stralloc): Return gdb::optional<char_vector>.
11656         (target_get_osdata): Return gdb::optional<char_vector>.
11657         * target.c (target_read_alloc_1): Templatize.  Replacement
11658         manual memory management with vector.
11659         (target_read_alloc): Change return type, adjust.
11660         (target_read_stralloc): Change return type, adjust.
11661         (target_get_osdata): Change return type, adjust.
11662         * auxv.c (struct auxv_info) <length>: Remove.
11663         <data>: Change type to gdb::optional<byte_vector>.
11664         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11665         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11666         (target_auxv_search): Adjust.
11667         (fprint_target_auxv): Adjust.
11668         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11669         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11670         (linux_make_corefile_notes): Adjust.
11671         * osdata.c (get_osdata): Adjust.
11672         * remote.c (remote_get_threads_with_qxfer): Adjust.
11673         (remote_memory_map): Adjust.
11674         (remote_traceframe_info): Adjust.
11675         (btrace_read_config): Adjust.
11676         (remote_read_btrace): Adjust.
11677         (remote_pid_to_exec_file): Adjust.
11678         * solib-aix.c (solib_aix_get_library_list): Adjust.
11679         * solib-dsbt.c (decode_loadmap): Don't free buf.
11680         (dsbt_get_initial_loadmaps): Adjust.
11681         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11682         * solib-target.c (solib_target_current_sos): Adjust.
11683         * tracepoint.c (sdata_make_value): Adjust.
11684         * xml-support.c (xinclude_start_include): Adjust.
11685         (xml_fetch_content_from_file): Adjust.
11686         * xml-support.h (xml_fetch_another): Change return type.
11687         (xml_fetch_content_from_file): Change return type.
11688         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11689         * xml-tdesc.c (file_read_description_xml): Adjust.
11690         (fetch_available_features_from_target): Change return type.
11691         (target_fetch_description_xml): Adjust.
11692         (target_read_description_xml): Adjust.
11693
11694 2018-04-06  Tom Tromey  <tom@tromey.com>
11695
11696         * value.c (~value): Update.
11697         (struct value) <contents>: Now unique_xmalloc_ptr.
11698         (value_contents_bits_eq, allocate_value_contents)
11699         (value_contents_raw, value_contents_all_raw)
11700         (value_contents_for_printing, value_contents_for_printing_const)
11701         (set_value_enclosing_type): Update.
11702
11703 2018-04-06  Tom Tromey  <tom@tromey.com>
11704
11705         * value.c (range_s): Remove typedef, VEC.
11706         (struct range): Add operator<.
11707         (range_lessthan): Remove.
11708         (ranges_contain): Change type.
11709         (~value): Update.
11710         (struct value) <unavailable, optimized_out>: Now std::vector.
11711         (value_entirely_available)
11712         (value_entirely_covered_by_range_vector)
11713         (value_entirely_unavailable, value_entirely_optimized_out):
11714         Update.
11715         (insert_into_bit_range_vector): Change argument type.
11716         (find_first_range_overlap): Likewise.
11717         (struct ranges_and_idx, value_contents_bits_eq)
11718         (require_not_optimized_out, require_available): Update.
11719         (ranges_copy_adjusted): Change argument types.
11720         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11721
11722 2018-04-06  Tom Tromey  <tom@tromey.com>
11723
11724         * value.c (~value): Update.
11725         (struct value) <parent>: Now a value_ref_ptr.
11726         (value_parent, set_value_parent, value_address, value_copy):
11727         Update.
11728
11729 2018-04-06  Tom Tromey  <tom@tromey.com>
11730
11731         * value.c (struct value): Add constructor, destructor, and member
11732         initializers.
11733         (allocate_value_lazy, value_decref): Update.
11734
11735 2018-04-06  Tom Tromey  <tom@tromey.com>
11736
11737         * value.c (struct value) <released, next>: Remove.
11738         (all_values): Now a std::vector.
11739         (allocate_value_lazy): Update.
11740         (value_next): Remove.
11741         (value_mark, value_free_to_mark, release_value)
11742         (value_release_to_mark): Update.
11743
11744 2018-04-06  Tom Tromey  <tom@tromey.com>
11745
11746         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11747         (free_value_chain): Remove.
11748         * value.c (free_value_chain): Remove.
11749         (value_release_to_mark): Return a std::vector.
11750         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11751         std::vector.
11752         (check_condition): Update.
11753         * eval.c (fetch_subexp_value): Change "val_chain" to a
11754         std::vector.
11755         * breakpoint.c (update_watchpoint): Update.
11756         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11757
11758 2018-04-06  Tom Tromey  <tom@tromey.com>
11759
11760         * value.h (free_all_values): Remove.
11761         * value.c (free_all_values): Remove.
11762
11763 2018-04-06  Tom Tromey  <tom@tromey.com>
11764
11765         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11766         (value_history_chain, value_history_count): Remove.
11767         (value_history): New global.
11768         (record_latest_value, access_value_history, show_values)
11769         (preserve_values): Update.
11770
11771 2018-04-06  Tom Tromey  <tom@tromey.com>
11772
11773         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11774         * varobj.c (varobj_set_display_format, varobj_set_value)
11775         (install_default_visualizer, construct_visualizer)
11776         (install_new_value, ~varobj, varobj_get_value_type)
11777         (my_value_of_variable, varobj_editable_p): Update.
11778         * c-varobj.c (c_describe_child, c_value_of_variable)
11779         (cplus_number_of_children, cplus_describe_child): Update.
11780         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11781         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11782         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11783
11784 2018-04-06  Tom Tromey  <tom@tromey.com>
11785
11786         * printcmd.c (last_examine_address): Change type to
11787         value_ref_ptr.
11788         (do_examine, x_command): Update.
11789
11790 2018-04-06  Tom Tromey  <tom@tromey.com>
11791
11792         * value.c (release_value): Update.
11793         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11794         (struct bpstats) <val>: Now a value_ref_ptr.
11795         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11796         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11797         (~watchpoint, print_it_watchpoint, watch_command_1)
11798         (invalidate_bp_value_on_memory_change): Update.
11799
11800 2018-04-06  Tom Tromey  <tom@tromey.com>
11801
11802         * varobj.c (varobj_clear_saved_item)
11803         (update_dynamic_varobj_children, install_new_value, ~varobj):
11804         Update.
11805         * value.h (value_incref): Move declaration earlier.
11806         (value_decref): Rename from value_free.
11807         (struct value_ref_policy): New.
11808         (value_ref_ptr): New typedef.
11809         (struct value_deleter): Remove.
11810         (gdb_value_up): Remove typedef.
11811         (release_value): Change return type.
11812         (release_value_or_incref): Remove.
11813         * value.c (set_value_parent): Update.
11814         (value_incref): Change return type.
11815         (value_decref): Rename from value_free.
11816         (value_free_to_mark, free_all_values, free_value_chain): Update.
11817         (release_value): Return value_ref_ptr.
11818         (release_value_or_incref): Remove.
11819         (record_latest_value, set_internalvar, clear_internalvar):
11820         Update.
11821         * stack.c (info_frame_command): Don't call value_free.
11822         * python/py-value.c (valpy_dealloc, valpy_new)
11823         (value_to_value_object): Update.
11824         * printcmd.c (do_examine): Update.
11825         * opencl-lang.c (lval_func_free_closure): Update.
11826         * mi/mi-main.c (register_changed_p): Don't call value_free.
11827         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11828         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11829         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11830         value_free.
11831         * guile/scm-value.c (vlscm_free_value_smob)
11832         (vlscm_scm_from_value): Update.
11833         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11834         (frame_unwind_register_unsigned, get_frame_register_bytes)
11835         (put_frame_register_bytes): Don't call value_free.
11836         * findvar.c (address_from_register): Don't call value_free.
11837         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11838         * dwarf2loc.c (entry_data_value_free_closure)
11839         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11840         (dwarf2_evaluate_loc_desc_full): Update.
11841         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11842         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11843         (~watchpoint, watch_command_1)
11844         (invalidate_bp_value_on_memory_change): Update.
11845         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11846
11847 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11848
11849         PR gdb/23022
11850         * warning.m4: Add -Wno-error=deprecated-register.
11851         * configure: Re-generate.
11852
11853 2018-04-05  Tom Tromey  <tom@tromey.com>
11854
11855         * linespec.h: Remove include of "vec.h".
11856
11857 2018-04-05  Tom Tromey  <tom@tromey.com>
11858
11859         * linespec.c (typep): Remove typedef.
11860         (find_methods, find_superclass_methods): Take a std::vector.
11861         (find_method): Use std::vector.
11862
11863 2018-04-05  Tom Tromey  <tom@tromey.com>
11864
11865         * utils.c (compare_strings): Remove.
11866         * utils.h (compare_strings): Remove.
11867         * objc-lang.h (find_imps): Update.
11868         * objc-lang.c (find_methods): Take a std::vector.
11869         (uniquify_strings, find_imps): Likewise.
11870         * linespec.c (find_methods): Take a std::vector.
11871         (decode_objc): Use std::vector.
11872         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11873         a std::vector.
11874         (find_method, find_function_symbols): Use std::vector.
11875
11876 2018-04-05  Tom Tromey  <tom@tromey.com>
11877
11878         * completer.c (completion_tracker::completion_tracker): Remove
11879         cast.
11880         (completion_tracker::discard_completions): Likewise.
11881         * breakpoint.c (ambiguous_names_p): Remove cast.
11882         * ada-lang.c (_initialize_ada_language): Remove cast.
11883         * utils.h (streq): Update.
11884         (streq_hash): Add new declaration.
11885         * utils.c (streq): Return bool.
11886         (streq_hash): New function.
11887
11888 2018-04-05  Tom Tromey  <tom@tromey.com>
11889
11890         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11891         Remove a string copy.
11892
11893 2018-04-05  Tom Tromey  <tom@tromey.com>
11894
11895         * linespec.c (filter_results): Use std::vector.
11896         (decode_line_2, decode_line_full): Update.
11897
11898 2018-04-05  Tom Tromey  <tom@tromey.com>
11899
11900         * linespec.c (canonical_to_fullform): Return std::string.
11901         (filter_results): Update.
11902         (struct decode_line_2_item): Add constructor.
11903         <fullform, displayform>: Now std::string.
11904         (decode_line_2_compare_items): Now a std::sort comparator.
11905         (decode_line_2): Update.
11906
11907 2018-04-05  Tom Tromey  <tom@tromey.com>
11908
11909         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11910         (unexpected_linespec_error): Update.
11911         (linespec_parse_basic, parse_linespec): Update.
11912
11913 2018-04-05  Tom Tromey  <tom@tromey.com>
11914
11915         * linespec.c (linespec_parse_basic): Reindent.
11916
11917 2018-04-05  Tom Tromey  <tom@tromey.com>
11918
11919         * minsyms.h (iterate_over_minimal_symbols): Update.
11920         * minsyms.c (iterate_over_minimal_symbols): Take a
11921         gdb::function_view.
11922         * linespec.c (struct collect_minsyms): Remove.
11923         (compare_msyms): Now a std::sort comparator.
11924         (add_minsym): Add parameters.
11925         (search_minsyms_for_name): Update.  Use std::vector.
11926
11927 2018-04-03  Tom Tromey  <tom@tromey.com>
11928
11929         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11930         gdb::byte_vector.
11931
11932 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11933
11934         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11935
11936 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11937
11938         PR gdb/16959
11939         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11940         printing static type.
11941
11942 2018-04-01  Tom Tromey  <tom@tromey.com>
11943
11944         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11945         (rs6000_xfer_shared_libraries): Update.
11946
11947 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11948
11949         * common/gdb_vecs.h (char_ptr): Remove.
11950         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11951
11952 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11953
11954         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11955         with std::vector.
11956         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11957
11958 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11959
11960         * tracepoint.h (struct uploaded_tp): Initialize fields.
11961         <actions, step_actions, cmd_strings>: Change type to
11962         std::vector<char *>.
11963         * tracepoint.c (get_uploaded_tp): Allocate with new.
11964         (free_uploaded_tps): Free with delete.
11965         (parse_tracepoint_definition): Adjust to std::vector change.
11966         * breakpoint.c (read_uploaded_action): Likewise.
11967         (create_tracepoint_from_upload): Likewise.
11968         * ctf.c (ctf_write_uploaded_tp): Likewise.
11969         (SET_ARRAY_FIELD): Likewise.
11970         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11971
11972 2018-03-30  Tom Tromey  <tom@tromey.com>
11973
11974         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11975         std::unique_ptr.
11976         (svr4_keep_data_in_core): Update.
11977         (svr4_read_so_list): Update.
11978
11979 2018-03-30  Tom Tromey  <tom@tromey.com>
11980
11981         * windows-nat.c (handle_output_debug_string, handle_exception):
11982         Update.
11983         * target.h (target_read_string): Update.
11984         * target.c (target_read_string): Change "string" to
11985         unique_xmalloc_ptr.
11986         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11987         Update.
11988         * solib-frv.c (frv_current_sos): Update.
11989         * solib-dsbt.c (dsbt_current_sos): Update.
11990         * solib-darwin.c (darwin_current_sos): Update.
11991         * linux-thread-db.c (inferior_has_bug): Update.
11992         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11993         Update.  Remove alloca.
11994         * ada-lang.c (ada_main_name): Update.
11995
11996 2018-03-30  Tom Tromey  <tom@tromey.com>
11997
11998         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11999         (struct dwo_file_deleter): New.
12000         (dwo_file_up): New typedef.
12001         (open_and_init_dwo_file): Use dwo_file_up.
12002         (free_dwo_file_cleanup): Remove.
12003
12004 2018-03-30  Tom Tromey  <tom@tromey.com>
12005
12006         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
12007         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
12008
12009 2018-03-30  Tom Tromey  <tom@tromey.com>
12010
12011         * dwarf2read.c (class free_cached_comp_units): New class.
12012         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
12013         (free_cached_comp_units): Remove function.
12014
12015 2018-03-30  Tom Tromey  <tom@tromey.com>
12016
12017         * utils.h (make_cleanup_unpush_target): Remove.
12018         * inf-ptrace.c (struct target_unpusher): New.
12019         (target_unpush_up) New typedef.
12020         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
12021         target_unpush_up.
12022         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
12023
12024 2018-03-27  Tom Tromey  <tom@tromey.com>
12025
12026         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
12027
12028 2018-03-27  Pedro Alves  <palves@redhat.com>
12029             Tom Tromey  <tom@tromey.com>
12030
12031         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
12032         destructor.  Now a class.
12033         (gdb_readline_wrapper_cleanup): Remove function.
12034         (gdb_readline_wrapper): Remove cleanups.
12035
12036 2018-03-27  Tom Tromey  <tom@tromey.com>
12037
12038         * typeprint.h (struct type_print_options) <local_typedefs,
12039         global_typedefs>: Remove "struct" keyword.
12040         (class typedef_hash_table): New class.
12041         (recursively_update_typedef_hash, add_template_parameters)
12042         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
12043         (find_typedef_in_hash): Don't declare.
12044         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
12045         (typedef_hash_table::recursively_update): Rename from
12046         recursively_update_typedef_hash.  Now a member.
12047         (typedef_hash_table::add_template_parameters): Rename from
12048         add_template_parameters.  Now a member.
12049         (typedef_hash_table::typedef_hash_table): Now a constructor;
12050         rename from create_typedef_hash.
12051         (typedef_hash_table::~typedef_hash_table): Now a destructor;
12052         rename from free_typedef_hash.
12053         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
12054         (do_free_global_table): Remove.
12055         (typedef_hash_table::typedef_hash_table): New constructor; renamed
12056         from copy_type_recursive.
12057         (create_global_typedef_table): Remove.
12058         (typedef_hash_table::find_global_typedef): Now a member of
12059         typedef_hash_table.
12060         (typedef_hash_table::find_typedef): Rename from
12061         find_typedef_in_hash; now a member.
12062         (whatis_exp): Update.
12063         * extension.h (struct ext_lang_type_printers): Add constructor and
12064         destructor.
12065         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
12066         declare.
12067         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
12068         Now a constructor; rename from start_ext_lang_type_printers.
12069         (ext_lang_type_printers): Now a destructor; rename from
12070         free_ext_lang_type_printers.
12071         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
12072         Update.
12073         (c_type_print_base_struct_union): Update.  Remove cleanups.
12074
12075 2018-03-27  Tom Tromey  <tom@tromey.com>
12076
12077         * dwarf-index-write.c: Include <cmath>.
12078
12079 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12080
12081         * NEWS: Add entry describing new "set|show varsize-limit" command.
12082         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12083         command.
12084         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12085         "set variable".
12086
12087 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12088
12089         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12090         dwarf-index-write.c
12091         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12092         * dwarf-index-common.c: New file.
12093         * dwarf-index-common.h: New file.
12094         * dwarf-index-write.c: New file.
12095         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12096         (struct dwarf2_section_info): Move from here.
12097         (dwarf2_section_info_def): Likewise.
12098         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12099         (offset_type): Likewise.
12100         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12101         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12102         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12103         (byte_swap): Likewise.
12104         (MAYBE_SWAP): Likewise.
12105         (dwarf2_per_cu_ptr): Likewise.
12106         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12107         (struct tu_stats): Likewise.
12108         (struct dwarf2_per_objfile): Likewise.
12109         (struct dwarf2_per_cu_data): Likewise.
12110         (struct signatured_type): Likewise.
12111         (sig_type_ptr): Likewise.
12112         (DEF_VEC_P (sig_type_ptr)): Likewise.
12113         (INDEX4_SUFFIX): Likewise.
12114         (INDEX5_SUFFIX): Likewise.
12115         (DEBUG_STR_SUFFIX): Likewise.
12116         (dwarf2_read_section): Make non-static.
12117         (mapped_index_string_hash): Move from here.
12118         (dwarf5_djb_hash): Likewise.
12119         (file_write): Likewise.
12120         (class data_buf): Likewise.
12121         (struct symtab_index_entry): Likewise.
12122         (struct mapped_symtab): Likewise.
12123         (find_slot): Likewise.
12124         (hash_expand): Likewise.
12125         (add_index_entry): Likewise.
12126         (uniquify_cu_indices): Likewise.
12127         (class c_str_view): Likewise.
12128         (class c_str_view_hasher): Likewise.
12129         (class vector_hasher): Likewise.
12130         (write_hash_table): Likewise.
12131         (psym_index_map): Likewise.
12132         (struct addrmap_index_data): Likewise.
12133         (add_address_entry): Likewise.
12134         (add_address_entry_worker): Likewise.
12135         (write_address_map): Likewise.
12136         (symbol_kind): Likewise.
12137         (write_psymbols): Likewise.
12138         (struct signatured_type_index_data): Likewise.
12139         (write_one_signatured_type): Likewise.
12140         (recursively_count_psymbols): Likewise.
12141         (recursively_write_psymbols): Likewise.
12142         (class debug_names): Likewise.
12143         (check_dwarf64_offsets): Likewise.
12144         (psyms_seen_size): Likewise.
12145         (write_gdbindex): Likewise.
12146         (write_debug_names): Likewise.
12147         (assert_file_size): Likewise.
12148         (write_psymtabs_to_index): Likewise.
12149         (save_gdb_index_command): Likewise.
12150         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12151         command.
12152         * dwarf2read.h: New file.
12153
12154 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12155
12156         PR gdb/22670
12157         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12158         symbol name if the CU's language stores symbol names in linkage
12159         format.
12160         * language.h (struct language_defn)
12161         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12162         all instances of this struct.
12163
12164 2018-03-26  Tom Tromey  <tom@tromey.com>
12165
12166         * stack.c (backtrace_command_1): Remove verbose code.
12167
12168 2018-03-26  Tom Tromey  <tom@tromey.com>
12169
12170         * python/py-framefilter.c (py_print_type): Don't catch
12171         exceptions.  Return void.
12172         (py_print_value): Likewise.
12173         (py_print_single_arg): Likewise.
12174         (enumerate_args): Don't catch exceptions.
12175         (py_print_args): Likewise.
12176         (py_print_frame): Likewise.
12177         (gdbpy_apply_frame_filter): Catch exceptions here.
12178
12179 2018-03-26  Tom Tromey  <tom@tromey.com>
12180
12181         * stack.c (_initialize_stack): Remove trailing newlines from help
12182         text.  Add "Usage" line to "backtrace" help.
12183
12184 2018-03-26  Tom Tromey  <tom@tromey.com>
12185
12186         PR python/16486:
12187         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12188
12189 2018-03-26  Tom Tromey  <tom@tromey.com>
12190
12191         * python/py-framefilter.c (py_print_single_arg): Return
12192         EXT_LANG_BT_ERROR from catch.
12193
12194 2018-03-26  Tom Tromey  <tom@tromey.com>
12195
12196         PR backtrace/15584:
12197         * stack.c (backtrace_command_1): Move some code into no-filters
12198         "if".
12199
12200 2018-03-26  Tom Tromey  <tom@tromey.com>
12201
12202         * python/py-framefilter.c (throw_quit_or_print_exception): New
12203         function.
12204         (gdbpy_apply_frame_filter): Use it.
12205
12206 2018-03-26  Tom Tromey  <tom@tromey.com>
12207
12208         PR cli/17716:
12209         * python/py-framefilter.c (py_print_type, py_print_value)
12210         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12211         RETURN_MASK_ERROR.
12212
12213 2018-03-26  Tom Tromey  <tom@tromey.com>
12214
12215         * python/py-framefilter.c (enumerate_args): Use
12216         gdb::unique_xmalloc_ptr.
12217
12218 2018-03-26  Tom Tromey  <tom@tromey.com>
12219
12220         * python/py-framefilter.c (py_print_frame): Return
12221         EXT_LANG_BT_OK.
12222         (gdbpy_apply_frame_filter): Update comment.
12223         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12224         Remove.
12225         <EXT_LANG_BT_NO_FILTERS>: Change value.
12226
12227 2018-03-26  Tom Tromey  <tom@tromey.com>
12228
12229         PR backtrace/15582:
12230         * stack.c (backtrace_command): Parse "hide" argument.
12231         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12232         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12233         constant.
12234
12235 2018-03-26  Tom Tromey  <tom@tromey.com>
12236
12237         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12238         add "flags".
12239         (backtrace_command): Remove "fulltrace", add "flags".
12240
12241 2018-03-26  Tom Tromey  <tom@tromey.com>
12242
12243         * stack.c (backtrace_command): Rewrite command line parsing.
12244
12245 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12246
12247         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12248
12249 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12250
12251         * filename-seen-cache.h: Add include guard.
12252
12253 2018-03-26  Keith Seitz  <keiths@redhat.com>
12254
12255         * symfile.c (place_section): Remove "struct" from section_addr_info
12256         in comment.
12257         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12258         "struct" keyword from section_addr_info.
12259
12260 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12261
12262         * regformats/regdef.h (reg): Add constructors.
12263
12264 2018-03-25  Pedro Alves  <palves@redhat.com>
12265
12266         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12267         if then/else bodies in var_func_name extraction.
12268
12269 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12270
12271         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12272         lookup_minimal_symbol() to find symbol entry.
12273         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12274
12275 2018-03-23  Keith Seitz  <keiths@redhat.com>
12276
12277         PR c++/22968
12278         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12279         nested type definitions for C++, too.
12280
12281 2018-03-23  Tom Tromey  <tom@tromey.com>
12282
12283         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12284         a typedef.
12285         (macho_register_oso): Remove.
12286         (macho_symtab_read): Take a std::vector.
12287         (oso_el_compare_name): Now a std::sort comparator.
12288         (macho_symfile_read_all_oso): Take a std::vector.
12289         (macho_symfile_read): Use std::vector.  Remove cleanups.
12290
12291 2018-03-22  Tom Tromey  <tom@tromey.com>
12292
12293         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12294         (record_full_goto_bookmark): Use std::string.
12295
12296 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12297
12298         PR tdep/18295
12299         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12300         a single mask.
12301
12302 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12303
12304         * rs6000-tdep.c (store_insn_p): New function.
12305         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12306         and cr_reg to their unshifted values. Use store_insn_p to
12307         match LR saves using either R1 or fdata->alloca_reg. Use
12308         store_insn_p to match CR saves. Set alloca_reg_offset
12309         when alloca_reg and framep are set. Remove lr_reg shift
12310         when assigning to fdata->lr_register.
12311
12312 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12313
12314         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12315         command line args instead of emitting a warning.
12316
12317 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12318
12319         * tracepoint.h (struct static_tracepoint_marker): Initialize
12320         fields, define default constructor, move constructor and move
12321         assignment, disable the rest.
12322         <str_id, extra>: Make std::string.
12323         (release_static_tracepoint_marker): Remove.
12324         (free_current_marker): Remove.
12325         * tracepoint.c (free_current_marker): Remove.
12326         (parse_static_tracepoint_marker_definition): Adjust to
12327         std::string, use new hex2str overload.
12328         (release_static_tracepoint_marker): Remove.
12329         (print_one_static_tracepoint_marker): Get marker by reference
12330         and adjust to std::string.
12331         (info_static_tracepoint_markers_command): Adjust to std::vector
12332         changes
12333         * target.h (static_tracepoint_marker_p): Remove typedef.
12334         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12335         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12336         bool.
12337         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12338         * target-debug.h
12339         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12340         (target_debug_print_std_vector_static_tracepoint_marker): New.
12341         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12342         to...
12343         (target_debug_print_static_tracepoint_marker_p): ... this.
12344         * target-delegates.c: Re-generate.
12345         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12346         Make std::string.
12347         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12348         (decode_static_tracepoint_spec): Adjust to std::vector.
12349         (tracepoint_print_one_detail): Adjust to std::string.
12350         (strace_marker_decode_location): Adjust to std::string.
12351         (update_static_tracepoint): Adjust to std::string, remove call
12352         to release_static_tracepoint_marker.
12353         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12354         Adjust to std::vector.
12355         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12356         (remote_static_tracepoint_markers_by_strid): Adjust to
12357         std::vector.
12358         * common/rsp-low.h (hex2str): New overload with explicit count
12359         of bytes.
12360         * common/rsp-low.c (hex2str): New overload with explicit count
12361         of bytes.
12362         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12363         (_initialize_rsp_low_selftests): Add test_hex2str test.
12364         * unittests/tracepoint-selftests.c
12365         (test_parse_static_tracepoint_marker_definition): Adjust to
12366         std::string.
12367
12368 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12369
12370         * tracepoint.c (parse_static_tracepoint_marker_definition):
12371         Consider case where the definition is followed by more
12372         definitions.
12373         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12374         tracepoint-selftests.c.
12375         * unittests/tracepoint-selftests.c: New.
12376
12377 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12378
12379         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12380         Carvalho.
12381
12382 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12383
12384         * symtab.c (find_pc_sect_line): fixed indentation.
12385
12386 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12387
12388         * symtab.c (find_pc_sect_line): now uses binary search.
12389
12390 2018-03-19  Tom Tromey  <tom@tromey.com>
12391
12392         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12393         "IDENT" production.
12394
12395 2018-03-19  Pedro Alves  <palves@redhat.com>
12396             Tom Tromey  <tom@tromey.com>
12397
12398         * unittests/observable-selftests.c: New file.
12399         * common/observable.h: New file.
12400         * observable.h: New file.
12401         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12402         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12403         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12404         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12405         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12406         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12407         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12408         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12409         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12410         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12411         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12412         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12413         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12414         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12415         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12416         tui/tui-interp.c, valops.c: Update all users.
12417         * tui/tui-hooks.c (tui_bp_created_observer)
12418         (tui_bp_deleted_observer, tui_bp_modified_observer)
12419         (tui_inferior_exit_observer, tui_before_prompt_observer)
12420         (tui_normal_stop_observer, tui_register_changed_observer):
12421         Remove.
12422         (tui_observers_token): New global.
12423         (attach_or_detach, tui_attach_detach_observers): New functions.
12424         (tui_install_hooks, tui_remove_hooks): Use
12425         tui_attach_detach_observers.
12426         * record-btrace.c (record_btrace_thread_observer): Remove.
12427         (record_btrace_thread_observer_token): New global.
12428         * observer.sh: Remove.
12429         * observer.c: Rename to observable.c.
12430         * observable.c (namespace gdb_observers): Define new objects.
12431         (observer_debug): Move into gdb_observers namespace.
12432         (struct observer, struct observer_list, xalloc_observer_list_node)
12433         (xfree_observer_list_node, generic_observer_attach)
12434         (generic_observer_detach, generic_observer_notify): Remove.
12435         (_initialize_observer): Update.
12436         Don't include observer.inc.
12437         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12438         (clean mostlyclean): Likewise.
12439         (observer.h, observer.inc): Remove targets.
12440         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12441         (COMMON_SFILES): Use observable.c, not observer.c.
12442         * .gitignore: Remove observer.h.
12443
12444 2018-03-18  Tom Tromey  <tom@tromey.com>
12445
12446         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12447         gdb::def_vector.
12448         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12449
12450 2018-03-17  Tom Tromey  <tom@tromey.com>
12451
12452         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12453
12454 2018-03-17  Tom Tromey  <tom@tromey.com>
12455
12456         * target.c (class scoped_target_fd): New.
12457         (target_fileio_close_cleanup): Remove.
12458         (target_fileio_read_alloc_1): Use scoped_target_fd.
12459
12460 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12461
12462         * silent-rules.mk: New.
12463         * Makefile.in: Include silent-rules.mk
12464         (srcdir, VPATH, top_srcdir): Move up.
12465         (COMPILE): Add ECHO_CXX.
12466         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12467         (init.c): Add ECHO_INIT_C.
12468         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12469         (version.c): Add ECHO_GEN.
12470         (printcmd.o): Add ECHO_CXX.
12471         (target-float.o): Add ECHO_CXX.
12472         (ada-exp.o): Add ECHO_CXX.
12473         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12474         (insight$(EXEEXT)): Add ECHO_CXXLD.
12475         * gnulib/configure.ac: Add AM_SILENT_RULES.
12476         * gnulib/aclocal.m4: Re-generate.
12477         * gnulib/configure: Re-generate.
12478         * gnulib/import/Makefile.in: Re-generate.
12479
12480 2018-03-16  Tom Tromey  <tom@tromey.com>
12481
12482         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12483         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12484         * utils.c (do_free_section_addr_info)
12485         (make_cleanup_free_section_addr_info): Remove.
12486         * symfile.h (struct other_sections): Add constructor.
12487         (struct section_addr_info): Remove.
12488         (section_addr_info): New typedef.
12489         (struct sym_fns) <sym_offsets>: Change type of parameter.
12490         (build_section_addr_info_from_objfile)
12491         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12492         (default_symfile_offsets, symbol_file_add)
12493         (symbol_file_add_from_bfd)
12494         (build_section_addr_info_from_section_table): Update.
12495         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12496         * symfile.c (alloc_section_addr_info): Remove.
12497         (build_section_addr_info_from_section_table): Change return type.
12498         Update.
12499         (build_section_addr_info_from_bfd)
12500         (build_section_addr_info_from_objfile): Likewise.
12501         (free_section_addr_info): Remove.
12502         (relative_addr_info_to_section_offsets): Change type of "addrs".
12503         (addrs_section_compar): Now a std::sort comparator.
12504         (addrs_section_sort): Change return type.
12505         (addr_info_make_relative): Change type of "addrs".  Update.
12506         (default_symfile_offsets, syms_from_objfile_1)
12507         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12508         (symbol_file_add_separate): Update.
12509         (symbol_file_add): Change type of "addrs".  Update.
12510         (add_symbol_file_command): Update.  Remove cleanups.
12511         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12512         cleanups.
12513         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12514         * solib.c (solib_read_symbols): Update.
12515         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12516         * machoread.c (macho_symfile_offsets): Update.
12517         * jit.c (jit_bfd_try_read_symtab): Update.
12518
12519 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12520
12521         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12522         unittests/utils-selftests.c.
12523         * unittests/utils-selftests.c: New file.
12524
12525 2018-03-14  Tom Tromey  <tom@tromey.com>
12526
12527         PR cli/14977:
12528         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12529         for NULL.
12530
12531 2018-03-14  Tom Tromey  <tom@tromey.com>
12532
12533         PR cli/19918:
12534         * printcmd.c (printf_pointer): Allow "-" in format.
12535
12536 2018-03-14  Tom Tromey  <tom@tromey.com>
12537
12538         * printcmd.c (_initialize_printcmd): Add usage to printf.
12539
12540 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12541
12542         * MAINTAINERS: Update my email address.
12543
12544 2018-03-13  Tom Tromey  <tom@tromey.com>
12545
12546         * machoread.c (macho_check_dsym): Change filenamep to a
12547         std::string*.
12548         (macho_symfile_read): Update.
12549         * symfile.c (load_command): Use std::string.
12550
12551 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12552
12553         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12554         to error message string.
12555         (riscv_register_name): Use xsnprintf instead of sprintf.
12556         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12557         internal_error.
12558         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12559         error.
12560         (riscv_push_dummy_call): Likewise.
12561
12562 2018-03-12  Tom Tromey  <tom@tromey.com>
12563
12564         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12565         Use gdb::byte_vector.
12566         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12567
12568 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12569
12570         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12571         parameter type to readable_regcache.
12572         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12573         the declaration.
12574
12575 2018-03-11  Tom Tromey  <tom@tromey.com>
12576
12577         * dwarf2read.c (struct nextfield): Add initializers.
12578         (struct nextfnfield): Remove.
12579         (struct fnfieldlist): Add initializers.  Remove "length" and
12580         "head", use std::vector.
12581         (struct decl_field_list): Remove.
12582         (struct field_info): Add initializers.
12583         <fields, baseclasses>: Now std::vector.
12584         <nbaseclasses, nfnfields, typedef_field_list_count,
12585         nested_types_list_count>: Remove.
12586         (dwarf2_add_field, dwarf2_add_type_defn)
12587         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12588         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12589         (process_structure_scope): Update.
12590
12591 2018-03-11  Tom Tromey  <tom@tromey.com>
12592
12593         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12594         for use by std::sort.
12595         (build_type_psymtabs_1): Use std::vector.
12596
12597 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12598
12599         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12600         and LIBMPFR in the printed configuration.
12601
12602 2018-03-08  Tom Tromey  <tom@tromey.com>
12603
12604         * source.c (get_filename_and_charpos): Use scoped_fd.
12605         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12606         (procfs_pidlist): Likewise.
12607         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12608         (iterate_over_mappings): Likewise.
12609
12610 2018-03-08  Tom Tromey  <tom@tromey.com>
12611
12612         * infcall.c (struct call_return_meta_info)
12613         <stack_temporaries_enabled>: Remove.
12614         (get_call_return_value, call_function_by_hand_dummy): Update.
12615         * thread.c (disable_thread_stack_temporaries): Remove.
12616         (enable_thread_stack_temporaries): Remove.
12617         (thread_stack_temporaries_enabled_p): Return bool.
12618         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12619         (get_last_thread_stack_temporary): Update.
12620         * eval.c (evaluate_subexp): Update.
12621         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12622         class, not a function.
12623         (value_ptr, value_vec): Remove typedefs.
12624         (class thread_info) <stack_temporaries_enabled>: Now bool.
12625         <stack_temporaries>: Now a std::vector.
12626         (thread_stack_temporaries_enabled_p)
12627         (value_in_thread_stack_temporaries): Return bool.
12628
12629 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12630
12631         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12632         (getpkt_or_notif_sane_1): Likewise.
12633
12634 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12635
12636         * build-id.c (build_id_to_debug_bfd): Use std::string.
12637
12638 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12639
12640         * build-id.c (find_separate_debug_file_by_buildid): Return
12641         std::string.
12642         * build-id.h (find_separate_debug_file_by_buildid): Return
12643         std::string.
12644         * coffread.c (coff_symfile_read): Adjust to std::string.
12645         * elfread.c (elf_symfile_read): Adjust to std::string.
12646         * symfile.c (separate_debug_file_exists): Change parameter to
12647         std::string.
12648         (find_separate_debug_file): Return std::string.
12649         (find_separate_debug_file_by_debuglink): Return std::string.
12650         * symfile.h (find_separate_debug_file_by_debuglink): Return
12651         std::string.
12652
12653 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12654
12655         * common/xml-utils.c (xml_escape_text): Move code to...
12656         (xml_escape_text_append): ... this new function.
12657         * common/xml-utils.h (xml_escape_text_append): New declaration.
12658         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12659         New function.
12660         (_initialize_xml_utils): register test_xml_escape_text_append as
12661         a selftest.
12662
12663 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12664
12665         * defs.h: Remove MAX_REGISTER_SIZE.
12666         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12667         asserts.
12668         * python/py-unwind.c (pyuw_sniffer): Likewise.
12669
12670 2018-03-07  Tom Tromey  <tom@tromey.com>
12671
12672         * linux-tdep.c (linux_info_proc): Update.
12673         * target.h (struct target_ops) <to_fileio_readlink>: Return
12674         optional<string>.
12675         (target_fileio_readlink): Return optional<string>.
12676         * remote.c (remote_hostio_readlink): Return optional<string>.
12677         * inf-child.c (inf_child_fileio_readlink): Return
12678         optional<string>.
12679         * target.c (target_fileio_readlink): Return optional<string>.
12680
12681 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12682
12683         * regcache.c (cooked_read_test): Add riscv to the list of
12684         architectures that have a save_reggroup.
12685
12686 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12687
12688         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12689         value is not a dynamic class object.
12690
12691 2018-03-06  Tom Tromey  <tom@tromey.com>
12692
12693         * rust-exp.y: Formatting fixes.
12694
12695 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12696
12697         * riscv-tdep.c (riscv_register_name): Remove target description
12698         support.
12699         (riscv_gdbarch_init): Remove target description check.
12700
12701 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12702
12703         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12704         comment.
12705         * riscv-tdep.h: Likewise.
12706
12707 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12708
12709         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12710         (riscv_pseudo_register_write): Delete.
12711         (riscv_gdbarch_init): Remove all use of pseudo registers.
12712
12713 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12714
12715         * record-btrace.c (btrace_print_lines): Replace cleanup
12716         parameter with RAII equivalents.
12717         (btrace_insn_history): Replace cleanup with RAII equivalents.
12718         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12719         make_cleanup_ui_out_tuple_begin_end): Remove.
12720         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12721         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12722         make_cleanup_ui_out_list_begin_end): Remove.
12723
12724 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12725
12726         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12727         parameter types to std::vector.  Use bool.
12728         (record_btrace_wait): Replace VEC(tp_t) with
12729         std::vector<thread_info *>.
12730         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12731
12732 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12733
12734         * record-btrace.c (record_btrace_disable_callback): Remove.
12735         (struct scoped_btrace_disable): New.
12736         (record_btrace_open): Use scoped_btrace_disable.
12737
12738 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12739
12740         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12741         reading values from registers.
12742
12743 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12744
12745         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12746         where appropriate.
12747
12748 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12749
12750         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12751         change parameter type.  Use GDB's print functions, and use
12752         core_addr_to_string where appropriate.
12753         (riscv_push_dummy_call): Use core_addr_to_string where
12754         appropriate, update call to riscv_print_arg_location, and reindent
12755         a few lines.
12756         (riscv_return_value): Update call to riscv_print_arg_location.
12757
12758 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12759             Tim Newsome <tim@sifive.com>
12760             Albert Ou <a0u@eecs.berkeley.edu>
12761             Darius Rad <darius@bluespec.com>
12762
12763         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12764         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12765         (ALLDEPFILES): Add riscv-tdep.c
12766         * configure.tgt: Add riscv support.
12767         * riscv-tdep.c: New file.
12768         * riscv-tdep.h: New file.
12769         * NEWS: Mention new target.
12770         * MAINTAINERS: Add entry for riscv.
12771
12772 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12773
12774         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12775         fields within aggregates.
12776
12777 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12778
12779         * record-btrace.c (btrace_print_lines): Change type of flags to
12780         gdb_disassembly_flags.
12781
12782 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12783
12784         * fbsd-nat.c: Include "inf-ptrace.h".
12785         (USE_SIGTRAP_SIGINFO): Conditionally define.
12786         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12787         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12788         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12789         function.
12790         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12791         Likewise.
12792         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12793         Likewise.
12794         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12795         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12796         "supports_stopped_by_hw_breakpoint" target methods.
12797
12798 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12799
12800         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12801         * fbsd-nat.c (debug_fbsd_nat): New variable.
12802         (show_fbsd_nat_debug): New function.
12803         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12804         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12805
12806 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12807
12808         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12809         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12810         prototype.
12811         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12812         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12813         method.
12814
12815 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12816
12817         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12818         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12819
12820 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12821
12822         * charset.c (struct charset_vector): New.
12823         (charsets): Change type to charset_vector.
12824         (find_charset_names): Adjust.
12825         (add_one): Adjust.
12826         (_initialize_charset): Adjust.
12827
12828 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12829
12830         * progspace.h (struct program_space) <deleted_solibs>: Change
12831         type to std::vector<std::string>.
12832         * progspace.c (clear_program_space_solib_cache): Adjust.
12833         * breakpoint.c (print_solib_event): Adjust.
12834         (check_status_catch_solib): Adjust.
12835         * solib.c (update_solib_list): Adjust.
12836         * ui-out.h (class ui_out) <field_string>: New overload.
12837         * ui-out.c (ui_out::field_string): New overload.
12838
12839 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12840
12841         * progspace.h (struct program_space): Add constructor and
12842         destructor, initialize fields.
12843         (add_program_space): Remove.
12844         * progspace.c (add_program_space): Rename to...
12845         (program_space::program_space): ... this.
12846         (release_program_space): Rename to...
12847         (program_space::~program_space): ... this.
12848         (delete_program_space): Use delete to delete program_space.
12849         (initialize_progspace): Use new to allocate program_space.
12850         * inferior.c (add_inferior_with_spaces): Likewise.
12851         (clone_inferior_command): Likewise.
12852         * infrun.c (follow_fork_inferior): Likewise.
12853         (handle_vfork_child_exec_or_exit): Likewise.
12854
12855 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12856
12857         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12858         (delim_string_to_char_ptr_vec): Return std::vector of
12859         gdb::unique_xmalloc_ptr.
12860         (dirnames_to_char_ptr_vec_append): Take std::vector of
12861         gdb::unique_xmalloc_ptr.
12862         (dirnames_to_char_ptr_vec): Return std::vector of
12863         gdb::unique_xmalloc_ptr.
12864         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12865         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12866         (delim_string_to_char_ptr_vec): Return an std::vector of
12867         gdb::unique_xmalloc_ptr, adjust the code.
12868         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12869         gdb::unique_xmalloc_ptr, adjust the code.
12870         (dirnames_to_char_ptr_vec): Return an std::vector of
12871         gdb::unique_xmalloc_ptr, adjust the code.
12872         * auto-load.c (auto_load_safe_path_vec): Change type to
12873         std::vector of gdb::unique_xmalloc_ptr.
12874         (auto_load_expand_dir_vars): Return an std::vector of
12875         gdb::unique_xmalloc_ptr, adjust the code.
12876         (auto_load_safe_path_vec_update): Adjust.
12877         (filename_is_in_auto_load_safe_path_vec): Adjust.
12878         (auto_load_objfile_script_1): Adjust.
12879         * build-id.c (build_id_to_debug_bfd): Adjust.
12880         * linux-thread-db.c (thread_db_load_search): Adjust.
12881         * source.c (add_path): Adjust.
12882         (openp): Adjust.
12883         * symfile.c (find_separate_debug_file): Adjust.
12884         * utils.c (do_free_char_ptr_vec): Remove.
12885         (make_cleanup_free_char_ptr_vec): Remove.
12886
12887 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12888
12889         PR gdb/22907
12890         * common/pathstuff.c: Conditionally include "<windows.h>".
12891
12892 2018-03-01  Georg Sauthoff  <mail@georg.so>
12893
12894         PR gdb/22888
12895         * gcore.in: Quote variables and switch interpreter to bash.
12896
12897 2018-03-01  Tom Tromey  <tom@tromey.com>
12898
12899         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12900         assertion.  Add assertion for discriminant_index.
12901         (quirk_rust_enum): Use correct base type name in univariant case.
12902
12903 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12904
12905         * record.c (get_call_history_modifiers): Return a
12906         record_print_flags.
12907         (cmd_record_call_history): Adjust.
12908         * record-btrace.c (record_btrace_call_history): Adjust.
12909         (record_btrace_call_history_range): Adjust.
12910         (record_btrace_call_history_from): Adjust.
12911         * target-debug.h (target_debug_print_record_print_flags): New.
12912         * target-delegates.c: Re-generate.
12913         * target.c (target_call_history): Change flags type.
12914         (target_call_history_from): Likewise.
12915         (target_call_history_range): Likewise.
12916         * target.h (struct target_ops) <target_call_history>: Likewise.
12917         (target_call_history_from): Likewise.
12918         (target_call_history_range): Likewise.
12919
12920 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12921             Simon Marchi  <simon.marchi@polymtl.ca>
12922
12923         * common/common-utils.c: Include "sys/stat.h".
12924         (is_regular_file): Move here from "source.c"; change return
12925         type to "bool".
12926         * common/common-utils.h (is_regular_file): New prototype.
12927         * common/pathstuff.c (contains_dir_separator): New function.
12928         * common/pathstuff.h (contains_dir_separator): New prototype.
12929         * source.c: Don't include "sys/stat.h".
12930         (is_regular_file): Move to "common/common-utils.c".
12931
12932 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12933
12934         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12935         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12936         * auto-load.c: Include "common/pathstuff.h".
12937         * common/common-def.h (current_directory): Move here.
12938         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12939         function.
12940         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12941         prototype.
12942         * common/pathstuff.c: New file.
12943         * common/pathstuff.h: New file.
12944         * compile/compile.c: Include "common/pathstuff.h".
12945         * defs.h (current_directory): Move to "common/common-defs.h".
12946         * dwarf2read.c: Include "common/pathstuff.h".
12947         * exec.c: Likewise.
12948         * guile/scm-safe-call.c: Likewise.
12949         * linux-thread-db.c: Likewise.
12950         * main.c: Likewise.
12951         * nto-tdep.c: Likewise.
12952         * objfiles.c: Likewise.
12953         * source.c: Likewise.
12954         * symtab.c: Likewise.
12955         * utils.c: Include "common/pathstuff.h".
12956         (gdb_realpath): Move to "common/pathstuff.c".
12957         (gdb_realpath_keepfile): Likewise.
12958         (gdb_abspath): Likewise.
12959         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12960         (gdb_realpath_keepfile): Likewise.
12961         (gdb_abspath): Likewise.
12962
12963 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12964
12965         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12966         wildcard process pid for super_resume for kernels with a
12967         specific bug.
12968
12969 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12970
12971         * compile/compile.c (get_args): Add additional comments
12972         explaining function.
12973
12974 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12975             Tom Tromey  <tom@tromey.com>
12976
12977         * target.h (memory_write_request_s): Remove typedef.  Don't define
12978         VEC.
12979         (target_write_memory_blocks): Change argument to std::vector.
12980         (struct memory_write_request): Add constructor.
12981         * target-memory.c (compare_block_starting_address): Return bool.
12982         Change argument types.
12983         (claim_memory): Change arguments to use std::vector.
12984         (split_regular_and_flash_blocks, blocks_to_erase)
12985         (compute_garbled_blocks): Likewise.
12986         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12987         (target_write_memory_blocks): Change argument to std::vector.
12988         * symfile.c (struct load_section_data): Add constructor and
12989         destructor.  Use std::vector for "requests".
12990         (struct load_progress_data): Add initializers.
12991         (load_section_callback): Update.  Use "new".
12992         (clear_memory_write_data): Remove.
12993         (generic_load): Update.
12994
12995 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12996
12997         * arch/aarch64.h: Use common/tdesc.h.
12998
12999 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13000
13001         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
13002         architecture with a 64-bit ABI.
13003
13004 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
13005
13006         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
13007         ahead of target description loading.
13008
13009 2018-02-26  Tom Tromey  <tom@tromey.com>
13010
13011         * stack.c (backtrace_command_1): Update.
13012         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
13013         of "flags".
13014         * python/py-framefilter.c (py_print_frame)
13015         (gdbpy_apply_frame_filter): Change type of "flags".
13016         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
13017         of "flags".
13018         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
13019         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
13020         * extension.h (enum frame_filter_flag): Rename from
13021         frame_filter_flags.
13022         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
13023         (apply_ext_lang_frame_filter): Change type of "flags".
13024         * extension.c (apply_ext_lang_frame_filter): Change type of
13025         "flags".
13026         * extension-priv.h (struct extension_language_ops)
13027         <apply_frame_filter>: Change type of "flags".
13028
13029 2018-02-26  Tom Tromey  <tom@tromey.com>
13030
13031         PR python/16497:
13032         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
13033         off-by-one in py_end computation.
13034         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
13035         PRINT_MORE_FRAMES.
13036         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
13037         constant.
13038
13039 2018-02-26  Tom Tromey  <tom@tromey.com>
13040
13041         * dwarf2read.c (struct variant_field): New.
13042         (struct nextfield) <variant>: New field.
13043         (dwarf2_add_field): Handle DW_TAG_variant_part.
13044         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
13045         discriminated union.
13046         (read_structure_type): Handle DW_TAG_variant_part.
13047         (handle_struct_member_die): New function, extracted from
13048         process_structure_scope.  Handle DW_TAG_variant.
13049         (process_structure_scope): Handle discriminated unions.  Call
13050         handle_struct_member_die.
13051
13052 2018-02-26  Tom Tromey  <tom@tromey.com>
13053
13054         * rust-lang.h (rust_last_path_segment): Declare.
13055         * rust-lang.c (rust_last_path_segment): Now public.  Change
13056         contract.
13057         (struct disr_info): Remove.
13058         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
13059         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
13060         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
13061         (rust_enum_p, rust_enum_variant): New function.
13062         (rust_underscore_fields): Remove "offset" parameter.
13063         (rust_print_enum): New function.
13064         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
13065         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
13066         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
13067         enums.
13068         (rust_internal_print_type): New function, from rust_print_type.
13069         Remove enum code.
13070         (rust_print_type): Call rust_internal_print_type.
13071         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
13072         Update enum handling.
13073         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
13074         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
13075         (rust_union_quirks): New functions.
13076         (process_full_comp_unit, process_full_type_unit): Call
13077         rust_union_quirks.
13078         (process_structure_scope): Update rust_unions if necessary.
13079
13080 2018-02-26  Tom Tromey  <tom@tromey.com>
13081
13082         * value.h (value_union_variant): Declare.
13083         * valops.c (value_union_variant): New function.
13084         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13085         (struct discriminant_info): New.
13086         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13087         enumerator.
13088         (struct main_type) <flag_discriminated_union>: New field.
13089
13090 2018-02-26  Tom Tromey  <tom@tromey.com>
13091
13092         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13093         unittests/unpack-selftests.c.
13094         * unittests/unpack-selftests.c: New file.
13095         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13096
13097 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13098
13099         * dwarf2read.c (struct partial_die_info) <read>: New method.
13100         (read_partial_die): Remove the declaration.
13101         (load_partial_dies): Update.
13102         (partial_die_info::partial_die_info):
13103         (read_partial_die): Change it to partial_die_info::read.
13104
13105 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13106
13107         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13108         (fixup_partial_die): Remove declaration.
13109         (scan_partial_symbols): Update.
13110         (partial_die_parent_scope): Likewise.
13111         (partial_die_full_name): Likewise.
13112         (fixup_partial_die): Change it to partial_die_info::fixup.
13113
13114 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13115
13116         * dwarf2read.c (read_partial_die): Update the declaration.
13117         (load_partial_dies): Caller update.
13118         (read_partial_die): Remove one argument abbrev_len.
13119
13120 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13121
13122         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13123         assignment operator.
13124         (load_partial_dies): Use ctor and copy ctor.
13125         (read_partial_die): Update.
13126         (dwarf2_cu::find_partial_die): Use ctor.
13127
13128 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13129
13130         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13131         (find_partial_die_in_comp_unit): Change it to
13132         dwarf2_cu::find_partial_die.
13133         (find_partial_die): Update.
13134
13135 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13136
13137         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13138         is NULL.
13139
13140 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13141
13142         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13143
13144 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13145
13146         * arch/amd64.h: Use common/tdesc.h.
13147         * arch/i386.c: Likewise.
13148         * arch/i386.h: Likewise.
13149         * arch/tic6x.c: Likewise.
13150         * arch/tdesc.h: Move file from here...
13151         * common/tdesc.h: ...to here.
13152         * features/aarch64-core.c: Regenerate.
13153         * features/aarch64-fpu.c: Regenerate.
13154         * features/i386/32bit-avx.c: Regenerate.
13155         * features/i386/32bit-avx512.c: Regenerate.
13156         * features/i386/32bit-core.c: Regenerate.
13157         * features/i386/32bit-linux.c: Regenerate.
13158         * features/i386/32bit-mpx.c: Regenerate.
13159         * features/i386/32bit-pkeys.c: Regenerate.
13160         * features/i386/32bit-sse.c: Regenerate.
13161         * features/i386/64bit-avx.c: Regenerate.
13162         * features/i386/64bit-avx512.c: Regenerate.
13163         * features/i386/64bit-core.c: Regenerate.
13164         * features/i386/64bit-linux.c: Regenerate.
13165         * features/i386/64bit-mpx.c: Regenerate.
13166         * features/i386/64bit-pkeys.c: Regenerate.
13167         * features/i386/64bit-segments.c: Regenerate.
13168         * features/i386/64bit-sse.c: Regenerate.
13169         * features/i386/x32-core.c: Regenerate.
13170         * features/tic6x-c6xp.c: Regenerate.
13171         * features/tic6x-core.c: Regenerate.
13172         * features/tic6x-gp.c: Regenerate.
13173         * target-descriptions.c: Use common/tdesc.h.
13174         * target-descriptions.h: Likewise.
13175
13176 2018-02-24  Tom Tromey  <tom@tromey.com>
13177
13178         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13179         (try_thread_db_load_from_dir, thread_db_load_search): Use
13180         std::string.
13181         (info_auto_load_libthread_db_compare): Return bool.  Change
13182         argument types.
13183         (info_auto_load_libthread_db): Use std::vector, std::string.
13184         Remove cleanups.
13185
13186 2018-02-24  Tom Tromey  <tom@tromey.com>
13187
13188         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13189         std::string.
13190         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13191         std::string*.
13192         * gdbarch.c: Rebuild.
13193         * gdbarch.h: Rebuild.
13194         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13195         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13196         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13197         std::string*.
13198
13199 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13200
13201         * gdbtypes.h (sect_offset): Change type to uint64_t.
13202         (sect_offset_str): New function.
13203         * dwarf2read.c (create_addrmap_from_aranges): Use
13204         sect_offset_str.
13205         (error_check_comp_unit_head): Likewise.
13206         (create_debug_type_hash_table): Likewise.
13207         (read_cutu_die_from_dwo): Likewise.
13208         (init_cutu_and_read_dies): Likewise.
13209         (init_cutu_and_read_dies_no_follow): Likewise.
13210         (process_psymtab_comp_unit_reader): Likewise.
13211         (partial_die_parent_scope): Likewise.
13212         (peek_die_abbrev): Likewise.
13213         (process_queue): Likewise.
13214         (dwarf2_physname): Likewise.
13215         (read_namespace_alias): Likewise.
13216         (read_import_statement): Likewise.
13217         (create_dwo_cu_reader): Likewise.
13218         (create_cus_hash_table): Likewise.
13219         (lookup_dwo_cutu): Likewise.
13220         (inherit_abstract_dies): Likewise.
13221         (read_func_scope): Likewise.
13222         (read_call_site_scope): Likewise.
13223         (dwarf2_add_member_fn): Likewise.
13224         (read_common_block): Likewise.
13225         (read_module_type): Likewise.
13226         (read_typedef): Likewise.
13227         (read_subrange_type): Likewise.
13228         (load_partial_dies): Likewise.
13229         (read_partial_die): Likewise.
13230         (find_partial_die): Likewise.
13231         (read_str_index): Likewise.
13232         (dwarf2_string_attr): Likewise.
13233         (build_error_marker_type): Likewise.
13234         (lookup_die_type): Likewise.
13235         (dump_die_shallow): Likewise.
13236         (follow_die_ref): Likewise.
13237         (dwarf2_fetch_die_loc_sect_off): Likewise.
13238         (dwarf2_fetch_constant_bytes): Likewise.
13239         (follow_die_sig): Likewise.
13240         (get_signatured_type): Likewise.
13241         (get_DW_AT_signature_type): Likewise.
13242         (dwarf2_find_containing_comp_unit): Likewise.
13243         (set_die_type): Likewise.
13244
13245 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13246
13247         * arch/aarch64.c: Include "common-defs.h".
13248         * arch/amd64.c: Likewise.
13249         * arch/i386.c: Likewise.
13250
13251 2018-02-21  Tom Tromey  <tom@tromey.com>
13252
13253         * value.h: (extract_field_op): Update.
13254         * eval.c (extract_field_op): Return a const char *.
13255         * expression.h (parse_expression_for_completion): Update.
13256         * completer.c (complete_expression): Update.
13257         (add_struct_fields): Make fieldname const.
13258         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13259         (mark_completion_tag, parse_exp_in_context_1): Update.
13260         (parse_expression_for_completion): Change "name" to
13261         unique_xmalloc_ptr*.
13262
13263 2018-02-21  Tom Tromey  <tom@tromey.com>
13264
13265         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13266
13267 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13268
13269         * avr-tdep.c (avr_read_pc): Change parameter type to
13270         readable_regcache.
13271         * gdbarch.sh (read_pc): Likewise.
13272         * gdbarch.c: Re-generated.
13273         * gdbarch.h: Re-generated.
13274         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13275         readable_regcache.
13276         * ia64-tdep.c (ia64_read_pc): Likewise.
13277         * mips-tdep.c (mips_read_pc): Likewise.
13278         * spu-tdep.c (spu_read_pc): Likewise.
13279
13280 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13281
13282         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13283         * regcache-dump.c: New file.
13284         * regcache.c: Move register_dump to regcache-dump.c.
13285         (maintenance_print_registers): Likewise.
13286         (maintenance_print_raw_registers): Likewise.
13287         (maintenance_print_cooked_registers): Likewise.
13288         (maintenance_print_register_groups): Likewise.
13289         (maintenance_print_remote_registers): Likewise.
13290         (_initialize_regcache): Likewise.
13291         * regcache.h (register_dump): Moved from regcache.c.
13292
13293 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13294
13295         * regcache.c (regcache::regcache): Update.
13296         (regcache::invalidate): Move it to detached_regcache::invalidate.
13297         (get_thread_arch_aspace_regcache): Update.
13298         (regcache::raw_update): Update.
13299         (regcache::cooked_read): Remove some code.
13300         (regcache::cooked_read_value): Likewise.
13301         (regcache::raw_write): Remove assert on m_readonly_p.
13302         (regcache::raw_supply_integer): Move it to
13303         detached_regcache::raw_supply_integer.
13304         (regcache::raw_supply_zeroed): Likewise.
13305         * regcache.h (detached_regcache) <raw_supply_integer>: New
13306         declaration.
13307         <raw_supply_zeroed, invalidate>: Likewise.
13308         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13309         <invalidate>: Likewise.
13310         <m_readonly_p>: Removed.
13311
13312 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13313
13314         * infcmd.c (get_return_value): Let stop_regs point to
13315         get_current_regcache.
13316         * regcache.c (regcache::regcache): Remove.
13317         (register_dump_reg_buffer): New class.
13318         (regcache_print): Adjust.
13319         * regcache.h (regcache): Remove constructors.
13320
13321 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13322
13323         * regcache.c (class register_dump): New class.
13324         (register_dump_regcache, register_dump_none): New class.
13325         (register_dump_remote, register_dump_groups): New class.
13326         (regcache_print): Update.
13327         * regcache.h (regcache_dump_what): Move it to regcache.c.
13328         (regcache) <dump>: Remove.
13329
13330 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13331
13332         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13333          reg_buffer_rw *.
13334         (jit_unwind_reg_set_impl): Call raw_supply.
13335         (jit_frame_sniffer): Use reg_buffer_rw.
13336         * record-full.c (record_full_core_regbuf): Change its type.
13337         (record_full_core_open_1): Use reg_buffer_rw.
13338         (record_full_close): Likewise.
13339         (record_full_core_fetch_registers): Use regcache->raw_supply.
13340         (record_full_core_store_registers): Likewise.
13341         * regcache.c (regcache::get_register_status): Move it to
13342         reg_buffer.
13343         (regcache_raw_set_cached_value): Remove.
13344         (regcache::raw_set_cached_value): Remove.
13345         (regcache::raw_write): Call raw_supply.
13346         (regcache::raw_supply): Move it to reg_buffer_rw.
13347         * regcache.h (regcache_raw_set_cached_value): Remove.
13348         (reg_buffer_rw): New class.
13349
13350 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13351
13352         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13353         readonly_detached_regcache.
13354         (dummy_frame_prev_register): Use regcache->cooked_read.
13355         * frame.c (frame_save_as_regcache): Change return type.
13356         (frame_pop): Update.
13357         * frame.h (frame_save_as_regcache): Update declaration.
13358         * inferior.h (get_infcall_suspend_state_regcache): Update
13359         declaration.
13360         * infrun.c (infcall_suspend_state) <registers>: use
13361         readonly_detached_regcache.
13362         (save_infcall_suspend_state): Don't use regcache_dup.
13363         (get_infcall_suspend_state_regcache): Change return type.
13364         * linux-fork.c (struct fork_info) <savedregs>: Change to
13365         readonly_detached_regcache.
13366         <pc>: New field.
13367         (fork_save_infrun_state): Don't use regcache_dup.
13368         (info_checkpoints_command): Adjust.
13369         * mi/mi-main.c (register_changed_p): Update declaration.
13370         (mi_cmd_data_list_changed_registers): Use
13371         readonly_detached_regcache.
13372         (register_changed_p): Change parameter type to
13373         readonly_detached_regcache.
13374         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13375         readonly_detached_regcache.
13376         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13377         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13378         New.
13379         (regcache::save): Move it to reg_buffer.
13380         (regcache::restore): Change parameter type.
13381         (regcache_dup): Remove.
13382         * regcache.h (reg_buffer) <save>: New method.
13383         (readonly_detached_regcache): New class.
13384         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13385         readonly_detached_regcache.
13386         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13387
13388 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13389
13390         * frame.c (frame_save_as_regcache): Use regcache method save.
13391         (frame_pop): Use regcache method restore.
13392         * infrun.c (restore_infcall_suspend_state): Likewise.
13393         * linux-fork.c (fork_load_infrun_state): Likewise.
13394         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13395         save.
13396         * regcache.c (regcache_save): Remove.
13397         (regcache::restore): More asserts.
13398         (regcache_cpy): Remove.
13399         * regcache.h (regcache_save): Remove the declaration.
13400         (regcache::restore): Move from private to public.
13401         Remove the friend declaration of regcache_cpy.
13402         (regcache_cpy): Remove declaration.
13403
13404 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13405
13406         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13407         parameter type to 'readable_regcache *'.
13408         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13409         * arm-tdep.c (arm_neon_quad_read): Likewise.
13410         (arm_pseudo_read): Likewise.
13411         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13412         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13413         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13414         * gdbarch.c: Re-generated.
13415         * gdbarch.h: Re-generated.
13416         * gdbarch.sh (pseudo_register_read): Change parameter type to
13417         'readable_regcache *'.
13418         (pseudo_register_read_value): Likewise.
13419         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13420         (h8300_pseudo_register_read): Likewise.
13421         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13422         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13423         (i386_pseudo_register_read_into_value): Likewise.
13424         (i386_pseudo_register_read_value): Likewise.
13425         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13426         declaration.
13427         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13428         * m32c-tdep.c (m32c_raw_read): Likewise.
13429         (m32c_read_flg): Likewise.
13430         (m32c_banked_register): Likewise.
13431         (m32c_banked_read): Likewise.
13432         (m32c_sb_read): Likewise.
13433         (m32c_part_read): Likewise.
13434         (m32c_cat_read): Likewise.
13435         (m32c_r3r2r1r0_read): Likewise.
13436         (m32c_pseudo_register_read): Likewise.
13437         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13438         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13439         (mep_pseudo_cr64_read): Likewise.
13440         (mep_pseudo_register_read): Likewise.
13441         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13442         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13443         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13444         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13445         (regcache::cooked_read): Likewise.
13446         (regcache::cooked_read_value): Likewise.
13447         (regcache_cooked_read_signed):
13448         (regcache::cooked_read): Likewise.
13449         * regcache.h (readable_regcache): New class.
13450         (regcache): Inherit readable_regcache.  Move some methods to
13451         readable_regcache.
13452         * rl78-tdep.c (rl78_pseudo_register_read): Change
13453         parameter type to 'readable_regcache *'.
13454         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13455         (e500_pseudo_register_read): Change parameter type to
13456         'readable_regcache *'.
13457         (dfp_pseudo_register_read): Likewise.
13458         (vsx_pseudo_register_read): Likewise.
13459         (efpr_pseudo_register_read): Likewise.
13460         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13461         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13462         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13463         (sh64_pseudo_register_read): Likewise.
13464         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13465         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13466         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13467         (spu_pseudo_register_read): Likewise.
13468         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13469         (xtensa_pseudo_register_read): Likewise.
13470
13471 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13472
13473         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13474         (regcache::arch): Move it to reg_buffer::arch.
13475         (regcache::register_buffer): Likewise.
13476         (regcache::assert_regnum): Likewise.
13477         (regcache::num_raw_registers): Likewise.
13478         * regcache.h (reg_buffer): New class.
13479         (regcache): Inherit reg_buffer.
13480
13481 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13482
13483         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13484         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13485
13486 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13487
13488         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13489
13490 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13491
13492         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13493         (SFILES): Remove common/*.c files.
13494         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13495         * common/common.host: Add common reference.
13496         * configure.ac: Likewise.
13497         * configure: Regenerate.
13498
13499 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13500
13501         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13502         (block_initialize_namespace): Use new.
13503         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13504         (dwarf2_free_objfile): Use delete.
13505         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13506         (copy_type_recursive): Use new.
13507         * gdb_obstack.h (allocate_on_obstack): New.
13508
13509 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13510
13511         PR gdb/22849
13512         * inferior.c (exit_inferior_1): Reset inf->control.
13513
13514 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13515
13516         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13517         declaration.
13518
13519 2018-02-14  Pedro Alves  <palves@redhat.com>
13520
13521         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13522         frame_cleanup_after_sniffer on exception.
13523
13524 2018-02-14  Tom Tromey  <tom@tromey.com>
13525
13526         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13527         const.
13528         (solib_bfd_open): Make pathname const.
13529         * solib.c (solib_bfd_open): Make pathname const.
13530         * solib-spu.c (spu_bfd_fopen): Make name const.
13531         (spu_bfd_open): Make pathname const.
13532         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13533         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13534
13535 2018-02-14  Tom Tromey  <tom@tromey.com>
13536
13537         * symfile.c (symfile_bfd_open): Update.
13538         * source.h (openp, source_full_path_of, find_and_open_source):
13539         Change argument type to unique_xmalloc_ptr.
13540         * source.c (openp): Take a unique_xmalloc_ptr.
13541         (source_full_path_of, find_and_open_source): Likewise.
13542         (open_source_file, symtab_to_fullname): Update.
13543         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13544         unique_xmalloc_ptr.
13545         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13546         (exec_file_find): Update.
13547         * psymtab.c (psymtab_to_fullname): Update.
13548         * nto-tdep.h (nto_find_and_open_solib): Update.
13549         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13550         unique_xmalloc_ptr.
13551         * exec.c (exec_file_attach): Update.
13552         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13553         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13554
13555 2018-02-14  Tom Tromey  <tom@tromey.com>
13556
13557         * solib.c: Include source.h.
13558         * nto-tdep.c: Include source.h.
13559         * mi/mi-cmd-env.c: Include source.h.
13560         * infcmd.c: Include source.h.
13561         * exec.c: Include source.h.
13562         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13563         (add_path, directory_switch, source_path, init_source_path): Move
13564         declarations...
13565         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13566         (add_path, directory_switch, source_path, init_source_path):
13567         ...here.
13568
13569 2018-02-14  Tom Tromey  <tom@tromey.com>
13570
13571         * solist.h (exec_file_find, solib_find): Return
13572         unique_xmalloc_ptr.
13573         (solib_bfd_fopen): Take a const char *.
13574         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13575         (exec_file_find, solib_find): Likewise.
13576         (solib_bfd_fopen): Do not take ownership of "pathname".
13577         (solib_bfd_open): Use unique_xmalloc_ptr.
13578         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13579         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13580         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13581         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13582
13583 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13584
13585         * ada-lang.c (name_match_type_from_name): Remove reference to
13586         ada_name_for_lookup in function's documentation.
13587         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13588
13589 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13590
13591         * defs.h (enum openp_flags): New enum.
13592         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13593         Move to enum openp_flags.
13594         (openp_flags): New enum flags.
13595         (openp): Change parameter type to openp_flags.
13596         * source.c (openp): Change parameter type to openp_flags.
13597         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13598         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13599
13600 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13601
13602         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13603         per-command.
13604
13605 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13606
13607         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13608         into...
13609         (class dwarf2_queue_guard): ...the destructor of this new class.
13610         (dw2_do_instantiate_symtab): Create instance of the new class
13611         dwarf2_queue_guard, remove cleanup.
13612
13613 2018-02-09  Tom Tromey  <tom@tromey.com>
13614
13615         * source.c (find_source_lines): Don't reference past the end of
13616         the vector.
13617
13618 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13619
13620         * remote.c (remote_btrace_maybe_reopen): Change error message.
13621         * btrace.c (btrace_enable): Likewise.
13622         (parse_xml_btrace): Likewise.
13623         (parse_xml_btrace_conf): Likewise.
13624
13625 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13626
13627         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13628         (linux_enable_pt, linux_enable_bts): Call
13629         diagnose_perf_event_open_fail.
13630
13631 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13632
13633         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13634         Remove parameter and change return type.  Update callers.  Move it.
13635         (linux_enable_bts, linux_enable_pt): Improve error message.
13636         (linux_enable_pt): Remove zero buffer size check.
13637         (linux_enable_btrace): Improve error messages.  Remove NULL return
13638         check.
13639
13640 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13641
13642         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13643         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13644         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13645         (linux_supports_pt, linux_supports_btrace): Remove.
13646         (linux_enable_bts): Call cpu_supports_bts.
13647         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13648         * remote.c (remote_supports_btrace): Remove.
13649         (init_remote_ops): Remove remote_supports_btrace.
13650         * target-delegates.c: Regenerated.
13651         * target.c (target_supports_btrace): Remove.
13652         * target.h (target_ops) <to_supports_btrace>: Remove
13653         (target_supports_btrace): Remove.
13654         * x86-linux-nat.c (x86_linux_create_target): Remove
13655         linux_supports_btrace.
13656
13657 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13658
13659         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13660         btrace failed.
13661         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13662         exception and use message in own exception.
13663
13664 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13665
13666         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13667         (perf_event_pt_event_type): Use gdb_file_up.
13668         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13669         scoped_fd, and scoped_mmap.
13670
13671 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13672
13673         * common/scoped_mmap.h: New.
13674         * unittests/scoped_mmap-selftest.c: New.
13675         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13676         unittests/scoped_mmap-selftest.c.
13677
13678 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13679
13680         * common/scoped_fd.h: New.
13681         * unittests/scoped_fd-selftest.c: New.
13682         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13683         unittests/scoped_fd-selftest.c.
13684
13685 2018-02-09  Tom Tromey  <tom@tromey.com>
13686
13687         * auto-load.c (auto_load_section_scripts): Use
13688         gdb::unique_xmalloc_ptr.
13689
13690 2018-02-09  Tom Tromey  <tom@tromey.com>
13691
13692         * auto-load.c (execute_script_contents): Use std::string.
13693
13694 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13695
13696         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13697         Python function, rather than a new command.
13698
13699 2018-02-08  Tom Tromey  <tom@tromey.com>
13700
13701         * solib.c (solib_find_1): Use std::string.
13702         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13703
13704 2018-02-08  Tom Tromey  <tom@tromey.com>
13705
13706         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13707
13708 2018-02-08  Tom Tromey  <tom@tromey.com>
13709
13710         * source.c (find_source_lines): Use gdb::def_vector.
13711
13712 2018-02-08  Tom Tromey  <tom@tromey.com>
13713
13714         * macrocmd.c (struct temporary_macro_definition): New.
13715         (macro_define_command): Use temporary_macro_definition.  Remove
13716         cleanups.
13717         (free_macro_definition_ptr): Remove.
13718
13719 2018-02-08  Tom Tromey  <tom@tromey.com>
13720
13721         * macroexp.c (maybe_expand): Use std::string.
13722
13723 2018-02-08  Tom Tromey  <tom@tromey.com>
13724
13725         * macroexp.c (struct macro_buffer): Add initializers for some
13726         members.
13727         (init_buffer, init_shared_buffer, free_buffer)
13728         (free_buffer_return_text): Remove.
13729         (macro_buffer): New constructors.
13730         (~macro_buffer): New destructor.
13731         (macro_buffer::set_shared): New method.
13732         (macro_buffer::resize_buffer, macro_buffer::appendc)
13733         (macro_buffer::appendmem): Now methods, not free functions.
13734         (set_token, append_tokens_without_splicing, stringify)
13735         (macro_stringify): Update.
13736         (gather_arguments): Change return type.  Remove argc_p argument,
13737         add args_ptr argument.  Use std::vector.
13738         (substitute_args): Remove argc argument.  Accept std::vector.
13739         (expand): Update.  Use std::vector.
13740         (scan, macro_expand, macro_expand_next): Update.
13741
13742 2018-02-08  Tom Tromey  <tom@tromey.com>
13743
13744         * symtab.c (default_collect_symbol_completion_matches_break_on):
13745         Use unique_xmalloc_ptr.
13746         * macroscope.h: (sal_macro_scope, user_macro_scope)
13747         (default_macro_scope): Return unique_xmalloc_ptr.
13748         * macroscope.c (sal_macro_scope, user_macro_scope)
13749         (default_macro_scope): Return unique_xmalloc_ptr.
13750         * macroexp.h (macro_expand, macro_expand_once): Return
13751         unique_xmalloc_ptr.
13752         * macroexp.c (macro_expand, macro_expand_once): Return
13753         unique_xmalloc_ptr.
13754         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13755         (info_macro_command, info_macros_command): Use
13756         unique_xmalloc_ptr.
13757         * compile/compile-c-support.c (write_macro_definitions): Use
13758         unique_xmalloc_ptr.
13759         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13760
13761 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13762
13763         * value.c (value_static_field): Assign field type instead of
13764         containing type when returning an optimized out value.
13765
13766 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13767
13768         * ft32-tdep.c (ft32_read_pc): Remove.
13769         (ft32_write_pc): Remove.
13770         (ft32_gdbarch_init): Update.
13771         * m32r-tdep.c (m32r_read_pc): Remove.
13772         (m32r_gdbarch_init): Update.
13773         * mep-tdep.c (mep_read_pc): Remove.
13774         (mep_gdbarch_init): Update.
13775         * microblaze-tdep.c (microblaze_write_pc): Remove.
13776         (microblaze_gdbarch_init): Update.
13777         * mn10300-tdep.c (mn10300_read_pc): Remove.
13778         (mn10300_write_pc): Remove.
13779         (mn10300_gdbarch_init): Update.
13780         * moxie-tdep.c (moxie_read_pc): Remove.
13781         (moxie_write_pc): Remove.
13782         (moxie_gdbarch_init): Update.
13783
13784 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13785
13786         * expprint.c (print_subexp_standard): Handle
13787         OP_F77_UNDETERMINED_ARGLIST.
13788         (dump_subexp_body_standard): Likewise.
13789
13790 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13791
13792         * target-descriptions.c (tdesc_element_visitor) Add empty
13793         implementations.
13794         (tdesc_type): Move make_gdb_type from here.
13795         (tdesc_type_builtin): Likewise.
13796         (tdesc_type_vector): Likewise.
13797         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13798         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13799         (make_gdb_type_union): Likewise.
13800         (make_gdb_type_flags): Likewise.
13801         (make_gdb_type_enum): Likewise.
13802         (make_gdb_type): New function.
13803         (tdesc_register_type): Use static make_gdb_type.
13804
13805 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13806
13807         * infcmd.c (default_print_one_register_info): Align natural-format
13808         column values consistently one under another.
13809         (pad_to_column): New function.
13810
13811 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13812
13813         * dwarf2read.c (dwarf2_physname): Move commment.
13814
13815 2018-02-01  Leszek Swirski  <leszeks@google.com>
13816
13817         * varobj.c (varobj_formatted_print_options): Allow recursive
13818         pretty printing if pretty printing is enabled.
13819
13820 2018-02-01  Leszek Swirski  <leszeks@google.com>
13821
13822         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13823         names after a structop as a filename.
13824
13825 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13826
13827         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13828         (arm_record_coproc_data_proc): Likewise.
13829
13830 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13831
13832         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13833
13834 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13835
13836         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13837         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13838
13839 2018-01-31  Pedro Alves  <palves@redhat.com>
13840
13841         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13842         * inflow.c (child_terminal_save_inferior): Wrap reference to
13843         tcgetpgrp in HAVE_TERMIOS_H.
13844         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13845         _WIN32.
13846         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13847         always iterate over all inferiors.
13848         (gdbsim_cntrl_c): Adjust.
13849         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13850
13851 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13852
13853         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13854         index type is objfile-owned if the element type is as well.
13855
13856 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13857
13858         GDB 8.1 released.
13859
13860 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13861
13862         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13863         "features/s390x-linux64.c".
13864         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13865         s390_linux32 and s390x_linux64.
13866         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13867         default tdesc.
13868         * s390-tdep.c: Include "features/s390-linux32.c" and
13869         "features/s390x-linux64.c".
13870         (s390_tdesc_valid): Add check for tdesc_has_registers.
13871         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13872         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13873         tdesc_s390x_linux64.
13874         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13875         tdesc_s390x_linux64 to...
13876         * s390-tdep.h: ...here.
13877
13878 2018-01-30  Pedro Alves  <palves@redhat.com>
13879
13880         PR gdb/13211
13881         * config.in, configure: Regenerate.
13882         * configure.ac: Check for getpgid.
13883         * go32-nat.c (go32_pass_ctrlc): New.
13884         (go32_target): Install it.
13885         * inf-child.c (inf_child_target): Install
13886         child_terminal_save_inferior, child_pass_ctrlc and
13887         child_interrupt.
13888         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13889         (inf_ptrace_target): No longer install it.
13890         * infcmd.c (interrupt_target_1): Adjust.
13891         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13892         (child_interrupt): Declare.
13893         (inferior::terminal_state): New.
13894         * inflow.c (struct terminal_info): Update comments.
13895         (inferior_process_group): Delete.
13896         (terminal_is_ours): Delete.
13897         (gdb_tty_state): New.
13898         (child_terminal_init): Adjust.
13899         (is_gdb_terminal, sharing_input_terminal_1)
13900         (sharing_input_terminal): New functions.
13901         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13902         Set the process's actual process group in the foreground if
13903         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13904         mark terminal as the inferior's if not sharing GDB's terminal.
13905         Don't check attach_flag.
13906         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13907         pass down a target_terminal_state.
13908         (child_terminal_save_inferior): New, factored out from ...
13909         (child_terminal_ours_1): ... this.  Handle
13910         target_terminal_state::is_ours_for_output.
13911         (child_interrupt, child_pass_ctrlc): New.
13912         (inflow_inferior_exit): Clear the inferior's terminal_state.
13913         (copy_terminal_info): Copy the inferior's terminal state.
13914         (_initialize_inflow): Remove reference to terminal_is_ours.
13915         * inflow.h (inferior_process_group): Delete.
13916         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13917         * procfs.c (procfs_target): Don't install procfs_interrupt.
13918         (procfs_interrupt): Delete.
13919         * remote.c (remote_serial_quit_handler): Adjust.
13920         (remote_interrupt): Remove ptid parameter.  Adjust.
13921         * target-delegates.c: Regenerate.
13922         * target.c: Include "terminal.h".
13923         (target_terminal::terminal_state): Rename to ...
13924         (target_terminal::m_terminal_state): ... this.
13925         (target_terminal::init): Adjust.
13926         (target_terminal::inferior): Adjust to per-inferior
13927         terminal_state.
13928         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13929         (target_terminal::ours, target_terminal::ours_for_output): Use
13930         target_terminal_is_ours_kind.
13931         (target_interrupt): Remove ptid parameter.  Adjust.
13932         (default_target_pass_ctrlc): Adjust.
13933         * target.h (target_ops::to_terminal_save_inferior): New field.
13934         (target_ops::to_interrupt): Remove ptid_t parameter.
13935         (target_interrupt): Remove ptid_t parameter.  Update comment.
13936         (target_pass_ctrlc): Update comment.
13937         * target/target.h (target_terminal_state): New scoped enum,
13938         factored out of ...
13939         (target_terminal::terminal_state): ... here.
13940         (target_terminal::inferior): Update comments.
13941         (target_terminal::restore_inferior): New.
13942         (target_terminal::is_inferior, target_terminal::is_ours)
13943         (target_terminal::is_ours_for_output): Adjust.
13944         (target_terminal::scoped_restore_terminal_state): Adjust to
13945         rename, and call restore_inferior() instead of inferior().
13946         (target_terminal::scoped_restore_terminal_state::m_state): Change
13947         type.
13948         (target_terminal::terminal_state): Rename to ...
13949         (target_terminal::m_terminal_state): ... this and change type.
13950
13951 2018-01-30  Pedro Alves  <palves@redhat.com>
13952
13953         * linux-nat.c (wait_for_signal): New function.
13954         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13955         directly.
13956         (async_terminal_is_ours)
13957         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13958         (linux_nat_add_target): Don't override
13959         to_terminal_inferior/to_terminal_ours.
13960
13961 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13962
13963         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13964
13965 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13966
13967         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13968         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13969         dwarf2_per_objfile_free here.
13970         (dwarf2_per_objfile_free): Remove.
13971         (_initialize_dwarf2_read): Don't register
13972         dwarf2_per_objfile_free as a registry cleanup.
13973
13974 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13975
13976         Avoid compilation errors in MinGW native builds
13977
13978         The error is triggered by including python-internal.h, and the
13979         error message is:
13980
13981              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13982                       from build-gnulib/import/math.h:27,
13983                       from d:/usr/Python26/include/pyport.h:235,
13984                       from d:/usr/Python26/include/Python.h:58,
13985                       from python/python-internal.h:94,
13986                       from python/py-arch.c:24:
13987              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13988         using ::hypot;
13989                 ^~~~~
13990
13991         This happens because Python headers define 'hypot' to expand t
13992         '_hypot' in the Windows builds.
13993         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13994         'hypoth'.  This avoids a compilation error.
13995
13996 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13997
13998         * MAINTAINERS (Write After Approval): Fix ordering.
13999
14000 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
14001
14002         * MAINTAINERS (Write After Approval): Add Alan Hayward.
14003
14004 2018-01-26  Alan Modra  <amodra@gmail.com>
14005
14006         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
14007         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
14008         Remove nop.  Make const.  Comment.
14009         (powerpc32_plt_stub_so_2): New.
14010         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
14011         Correct count.  Update uses.
14012         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
14013         Move common code reading PLT entry word.  Correct
14014         powerpc32_plt_stub PLT address calculation.
14015         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
14016         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
14017         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
14018         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
14019         (ppc64_standard_linkage8): Likewise.
14020         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
14021         Correct insns description.
14022         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
14023
14024 2018-01-24  Pedro Alves  <palves@redhat.com>
14025
14026         GCC PR libstdc++/83906
14027         * gdbtypes.c (operator==(const dynamic_prop &,
14028         const dynamic_prop &)): New.
14029         (operator==(const range_bounds &, const range_bounds &)): New.
14030         (check_types_equal): Use them instead of memcmp.
14031         * gdbtypes.h (operator==(const dynamic_prop &,
14032         const dynamic_prop &)): Declare.
14033         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
14034         (operator==(const range_bounds &, const range_bounds &)): Declare.
14035         (operator!=(const range_bounds &, const range_bounds &)): Declare.
14036
14037 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14038
14039         * s390-linux-tdep.c (s390_record_address_mask)
14040         (s390_record_calc_disp_common, s390_record_calc_disp)
14041         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14042         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14043         (s390_process_record): Move to s390-tdep.c.
14044         (s390_linux_init_abi_any): Adjust.
14045         * s390-tdep.c (s390_record_address_mask)
14046         (s390_record_calc_disp_common, s390_record_calc_disp)
14047         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
14048         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
14049         (s390_process_record): Moved from s390-linux-tdep.c
14050         (s390_gdbarch_init): Adjust.
14051
14052 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14053
14054         * s390-linux-nat.c (s390-tdep.h): New include.
14055         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
14056         (HFILES_NO_SRCDIR): Add s390-tdep.h.
14057         (ALLDEPFILES): Add s390-tdep.c.
14058         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
14059         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
14060         * s390-tdep.h: ...this.  New file.
14061         * s390-linux-tdep.c (s390-tdep.h): New include.
14062         (_initialize_s390_tdep): Rename to...
14063         (_initialize_s390_linux_tdep): ...this and adjust.
14064         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
14065         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
14066         s390-tdep.h.
14067         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
14068         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
14069         (s390_is_partial_instruction, s390_software_single_step)
14070         (is_non_branch_ril, s390_displaced_step_copy_insn)
14071         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
14072         (s390_prologue_data, s390_addr, s390_store, s390_load)
14073         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
14074         (s390_register_call_saved, s390_guess_tracepoint_registers)
14075         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14076         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14077         (s390_pseudo_register_name, s390_pseudo_register_type)
14078         (s390_pseudo_register_read, s390_pseudo_register_write)
14079         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14080         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14081         (s390_addr_bits_remove, s390_address_class_type_flags)
14082         (s390_address_class_type_flags_to_name)
14083         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14084         (s390_function_arg_float, s390_function_arg_vector)
14085         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14086         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14087         (s390_frame_align, s390_register_return_value, s390_return_value)
14088         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14089         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14090         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14091         (s390_trad_frame_prev_register, s390_unwind_cache)
14092         (s390_prologue_frame_unwind_cache)
14093         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14094         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14095         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14096         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14097         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14098         (s390_frame_base_address, s390_local_base_address)
14099         (s390_frame_base, s390_gcc_target_options)
14100         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14101         (s390_validate_reg_range, s390_tdesc_valid)
14102         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14103         * s390-tdep.c: ...this.  New file.
14104
14105 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14106
14107         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14108         (s390_process_record, s390_gdbarch_tdep_alloc)
14109         (s390_linux_init_abi_any): Use/set new hook.
14110
14111 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14112
14113         * s390-linux-tdep.c (osabi.h): New include.
14114         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14115         (s390_linux_init_abi_any): New functions.
14116         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14117
14118 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14119
14120         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14121         tdesc_has_registers check
14122
14123 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14124
14125         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14126         (s390_validate_reg_range): New macro.
14127         (s390_gdbarch_init): Adjust.
14128
14129 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14130
14131         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14132         (s390_gdbarch_tdep_alloc): Adjust.
14133         (s390_gdbarch_init): Adjust.
14134
14135 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14136
14137         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14138         <have_tdb>: Change type to bool.
14139         (s390_gdbarch_tdep_alloc): Adjust.
14140         (s390_gdbarch_init): Adjust.
14141
14142 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14143
14144         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14145         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14146         (s390_gdbarch_tdep_alloc): New function.
14147         (s390_gdbarch_init): Allocate tdep at start and use its fields
14148         instead of separate variables.
14149
14150 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14151
14152         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14153         when looking for cached gdbarch and add comment for remaining.
14154
14155 2018-01-22  Pedro Alves  <palves@redhat.com>
14156             Sergio Durigan Junior  <sergiodj@redhat.com>
14157
14158         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14159         case.
14160
14161 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14162
14163         * MAINTAINERS: Update my company e-mail address.
14164
14165 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14166
14167         * regcache.c (cooked_write_test): New function.
14168         (_initialize_regcache): Register the test.
14169
14170 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14171
14172         * ia64-tdep.c (ia64_pseudo_register_read): Call
14173         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14174         * m32c-tdep.c (m32c_cat_read): Likewise.
14175         (m32c_r3r2r1r0_read): Likewise.
14176         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14177         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14178
14179 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14180
14181         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14182         method raw_read instead of regcache_raw_read.
14183         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14184         * arm-tdep.c (arm_neon_quad_read): Likewise.
14185         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14186         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14187         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14188         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14189         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14190         (i386_pseudo_register_read_into_value): Likewise.
14191         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14192         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14193         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14194         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14195         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14196         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14197         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14198         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14199         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14200
14201 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14202
14203         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14204         * configure.tgt: Remove target mt.
14205         * mt-tdep.c: Remove.
14206         * regcache.c (cooked_read_test): Remove the check for mt.
14207
14208 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14209
14210         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14211         instead of gdbarch_pseudo_register_read_value.
14212
14213 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14214
14215         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14216         language is Ada.
14217
14218 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14219
14220         * linespec.c (create_sals_line_offset): Remove code that preserved
14221         the symtab_and_line's line number.
14222
14223 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14224
14225         * varobj.c (varobj_create): Don't set valid_block when creating a
14226         floating varobj.
14227
14228 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14229
14230         * varobj.c (varobj_create): Remove out of date comment.
14231
14232 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14233
14234         PR mi/20395
14235         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14236         updating innermost block.
14237         * parse.c (innermost_block_tracker::update): Take extra type
14238         parameter, and check types match before updating innermost block.
14239         (write_dollar_variable): Update innermost block for registers.
14240         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14241         (innermost_block_tracker::innermost_block_tracker): Initialise
14242         m_types member.
14243         (innermost_block_tracker::reset): Take type parameter.
14244         (innermost_block_tracker::update): Take type parameter, and pass
14245         type through as needed.
14246         (innermost_block_tracker::m_types): New member.
14247         * varobj.c (varobj_create): Pass type when reseting innermost
14248         block.
14249
14250 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14251
14252         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14253         * ada-lang.c (resolve_subexp): Likewise.
14254         * breakpoint.c (set_breakpoint_condition) Likewise.
14255         (watch_command_1) Likewise.
14256         * c-exp.y (variable): Likewise.
14257         * d-exp.y (PrimaryExpression): Likewise.
14258         * f-exp.y (variable): Likewise.
14259         * go-exp.y (variable): Likewise.
14260         * m2-exp.y (variable): Likewise.
14261         * objfiles.c (objfile::~objfile): Likewise.
14262         * p-exp.y (variable): Likewise.
14263         * parse.c (innermost_block): Change type.
14264         * parser-defs.h (class innermost_block_tracker): New.
14265         (innermost_block): Change to innermost_block_tracker.
14266         * printcmd.c (display_command): Switch to innermost_block API.
14267         (do_one_display): Likewise.
14268         * rust-exp.y (do_one_display): Likewise.
14269         * symfile.c (clear_symtab_users): Likewise.
14270         * varobj.c (varobj_create): Switch to innermost_block API, replace
14271         use of innermost_block with block stored on varobj object.
14272
14273 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14274
14275         * expression.h (innermost_block): Remove declaration.
14276         * varobj.c: Add 'parser-defs.h' include.
14277
14278 2018-01-19  Tom Tromey  <tom@tromey.com>
14279
14280         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14281         symbols in the static and global blocks.
14282
14283 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14284
14285         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14286         gdb_ptrace.h, and move including gdb_wait.h ...
14287         * nat/linux-ptrace.h: ... to here.
14288
14289 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14290
14291         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14292         inf_ptrace_detach_success.
14293         (inf_ptrace_detach_success): Add inferior parameter, use it
14294         instead of inferior_ptid, pass it to detach_inferior.
14295         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14296         parameter.
14297         * inferior.c (detach_inferior): Add overload that takes an
14298         inferior object.
14299         * inferior.h (detach_inferior): Likewise.
14300         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14301         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14302         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14303
14304 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14305
14306         * target.h (struct target_ops) <to_detach>: Add inferior
14307         parameter.
14308         (target_detach): Likewise.
14309         * target.c (dispose_inferior): Pass inferior down.
14310         (target_detach): Pass inferior down.  Assert that it is equal to
14311         the current inferior.
14312         * aix-thread.c (aix_thread_detach): Pass inferior down.
14313         * corefile.c (core_file_command): Pass current_inferior() down.
14314         * corelow.c (core_detach): Add inferior parameter.
14315         * darwin-nat.c (darwin_detach): Likewise.
14316         * gnu-nat.c (gnu_detach): Likewise.
14317         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14318         * infcmd.c (detach_command): Pass current_inferior() down to
14319         target_detach.
14320         * infrun.c (follow_fork_inferior): Pass parent_inf to
14321         target_detach.
14322         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14323         target_detach.
14324         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14325         * linux-thread-db.c (thread_db_detach): Likewise.
14326         * nto-procfs.c (procfs_detach): Likewise.
14327         * procfs.c (procfs_detach): Likewise.
14328         * record.c (record_detach): Likewise.
14329         * record.h (struct inferior): Forward-declare.
14330         (record_detach): Add inferior parameter.
14331         * remote-sim.c (gdbsim_detach): Likewise.
14332         * remote.c (remote_detach_1): Likewise.
14333         (remote_detach): Likewise.
14334         (extended_remote_detach): Likewise.
14335         * sol-thread.c (sol_thread_detach): Likewise.
14336         * target-debug.h (target_debug_print_inferior_p): New macro.
14337         * target-delegates.c: Re-generate.
14338         * top.c (kill_or_detach): Pass inferior down to target_detach.
14339         * windows-nat.c (windows_detach): Add inferior parameter.
14340
14341 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14342
14343         * target.h (struct target_ops) <to_detach>: Remove args
14344         parameter.
14345         (target_detach): Likewise.
14346         * target.c (dispose_inferior): Adjust.
14347         (target_detach): Remove args parameter, adjust.
14348         * aix-thread.c (aix_thread_detach): Adjust.
14349         * corefile.c (core_file_command): Adjust.
14350         * corelow.c (core_detach): Adjust.
14351         * darwin-nat.c (darwin_detach): Adjust.
14352         * gnu-nat.c (gnu_detach): Adjust.
14353         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14354         * infcmd.c (detach_command): Adjust
14355         * infrun.c (follow_fork_inferior): Adjust.
14356         (handle_vfork_child_exec_or_exit): Adjust.
14357         * linux-fork.c (linux_fork_detach): Remove args parameter.
14358         * linux-fork.h (linux_fork_detach): Likewise.
14359         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14360         * linux-thread-db.c (thread_db_detach): Likewise.
14361         * nto-procfs.c (procfs_detach): Likewise.
14362         * procfs.c (procfs_detach): Likewise.
14363         (do_detach): Remove signo parameter.
14364         * record.c (record_detach): Remove args parameter.
14365         * record.h (record_detach): Likewise.
14366         * remote-sim.c (gdbsim_detach): Likewise.
14367         * remote.c (remote_detach_1): Likewise.
14368         (remote_detach): Likewise.
14369         (extended_remote_detach): Likewise.
14370         * sol-thread.c (sol_thread_detach): Likewise.
14371         * target-delegates.c: Re-generate.
14372         * top.c (struct qt_args) <args>: Remove field.
14373         (kill_or_detach): Don't pass args.
14374         (quit_force): Don't set args.
14375         * windows-nat.c (windows_detach): Remove args parameter.
14376
14377 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14378
14379         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14380         (arm_linux_init_abi): Install it.
14381
14382 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14383
14384         * osabi.c (gdb_osabi_names): Extend the regexp for
14385         arm-linux-gnueabihf.
14386
14387 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14388
14389         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14390         m_abbrevs.
14391         (abbrev_table::add_abbrev): Update.
14392         (abbrev_table::lookup_abbrev): Update.
14393
14394 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14395
14396         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14397
14398 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14399
14400         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14401         to "std::string".
14402
14403 2018-01-17  Tom Tromey  <tom@tromey.com>
14404
14405         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14406
14407 2018-01-17  Tom Tromey  <tom@tromey.com>
14408
14409         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14410         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14411         (create_array_type_with_stride): Update.
14412         * dwarf2read.c (set_die_type): Update.
14413
14414 2018-01-17  Tom Tromey  <tom@tromey.com>
14415
14416         * dwarf2read.c (delayed_method_info): Remove typedef.
14417         (dwarf2_cu::method_info): Now a std::vector.
14418         (add_to_method_list): Update.
14419         (free_delayed_list): Remove.
14420         (compute_delayed_physnames): Update.
14421         (process_full_comp_unit, process_full_type_unit): Clear the method
14422         list.  Remove cleanups.
14423         (psymtab_include_file_name): Add name_holder parameter.  Use
14424         unique_xmalloc_ptr.
14425         (dwarf_decode_lines): Update.
14426
14427 2018-01-17  Tom Tromey  <tom@tromey.com>
14428             Simon Marchi  <simon.marchi@ericsson.com>
14429
14430         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14431         (dwarf2_per_objfile::free_cached_comp_units)
14432         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14433         (init_cutu_and_read_dies_no_follow): Update.
14434         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14435         (dwarf2_cu::~dwarf2_cu): New.
14436         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14437         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14438
14439 2018-01-17  Tom Tromey  <tom@tromey.com>
14440             Simon Marchi  <simon.marchi@ericsson.com>
14441
14442         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14443         (struct die_reader_specs) <abbrev_table>: New member.
14444         (struct abbrev_table): Add constructor.
14445         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14446         <abbrev_obstack>: Now an auto_obstack.
14447         (abbrev_table_up): New typedef.
14448         (init_cu_die_reader): Add abbrev_table parameter.
14449         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14450         Add result_dwo_abbrev_table.
14451         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14452         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14453         Update.
14454         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14455         parameter.
14456         (skip_children): Update.
14457         (abbrev_table::alloc_abbrev): Rename from
14458         abbrev_table_alloc_abbrev.
14459         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14460         (abbrev_table::lookup_abbrev): Rename from
14461         abbrev_table_lookup_abbrev.
14462         (abbrev_table_read_table): Return abbrev_table_up.
14463         (abbrev_table_free, abbrev_table_free_cleanup)
14464         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14465         (load_partial_dies): Update.
14466
14467 2018-01-17  Tom Tromey  <tom@tromey.com>
14468
14469         * dwarf2read.c (dwarf2_compute_name): Update comment.
14470         (read_func_scope, read_variable): Update.
14471         (new_symbol): Remove.
14472         (new_symbol_full): Rename to new_symbol.
14473
14474 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14475
14476         PR gdb/16577
14477         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14478         a warning instead of throwing an error, set section size to 0 and return
14479         NULL.
14480         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14481
14482 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14483
14484         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14485         std::string.
14486         (linux_ptrace_attach_fail_reason_string): Likewise.
14487         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14488         Likewise.
14489         (linux_ptrace_attach_fail_reason_string): Likewise.
14490         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14491
14492 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14493
14494         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14495
14496 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14497
14498         PR gdb/21559
14499         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14500         checking for fs_base/gs_base fields in struct user_regs_struct.
14501         * configure: Regenerate.
14502
14503 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14504
14505         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14506         function.
14507         (aarch64_linux_init_abi): Install it to gdbarch hook
14508         gcc_target_options.
14509
14510 2018-01-15  Pedro Alves  <palves@redhat.com>
14511
14512         * common/signals-state-save-restore.c
14513         (save_original_signals_state): Fix typos.
14514
14515 2017-01-12  Tom Tromey  <tom@tromey.com>
14516             Sergio Durigan Junior  <sergiodj@redhat.com>
14517
14518         * Makefile.in (install-only): Install gdb-add-index.
14519
14520 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14521
14522         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14523
14524 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14525
14526         * infrun.c (keep_going_pass_signal): Clear step-over info when
14527         insert_breakpoints fails.
14528
14529 2018-01-11  Pedro Alves  <palves@redhat.com>
14530
14531         PR gdb/22583
14532         * infrun.c (resume): Rename to ...
14533         (resume_1): ... this.
14534         (resume): Reimplement as wrapper around resume_1.
14535
14536 2018-01-11  Pedro Alves  <palves@redhat.com>
14537
14538         PR remote/22597
14539         * remote.c (remote_parse_stop_reply): Default to the last-set
14540         general thread instead of to 'magic_null_ptid'.
14541
14542 2018-01-10  Pedro Alves  <palves@redhat.com>
14543
14544         * language.h (language_get_symbol_name_matcher): Rename ...
14545         (get_symbol_name_matcher): ... this.
14546         * language.c (language_get_symbol_name_matcher): Ditto.
14547         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14548         callers adjusted.
14549
14550 2018-01-10  Pedro Alves  <palves@redhat.com>
14551
14552         PR gdb/22670
14553         * dwarf2read.c
14554         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14555         Adjust to use language_get_symbol_name_matcher instead of
14556         language_defn::la_get_symbol_name_matcher.
14557         * language.c (language_get_symbol_name_matcher): If in Ada mode
14558         and the lookup name is a verbatim match, return Ada's matcher.
14559         * language.h (language_get_symbol_name_matcher): Adjust comment.
14560         (ada_lookup_name_info::verbatim_p):: New method.
14561
14562 2018-01-10  Pedro Alves  <palves@redhat.com>
14563
14564         PR gdb/22670
14565         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14566         minsym's language is language_auto or language_cplus, pass down
14567         language_ada instead.
14568         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14569
14570 2018-01-10  Pedro Alves  <palves@redhat.com>
14571
14572         PR gdb/22670
14573         * minsyms.c (linkage_name_str): New function.
14574         (iterate_over_minimal_symbols): Use it.
14575
14576 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14577
14578         * NEWS: Document that 'info proc' now works on FreeBSD.
14579
14580 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14581
14582         * configure.ac: Check for kinfo_getfile in libutil.
14583         * configure: Regenerate.
14584         * config.in: Regenerate.
14585         * fbsd-nat.c: Include "fbsd-tdep.h".
14586         (fbsd_fetch_cmdline): New.
14587         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14588         rather than calling error.
14589         (fbsd_info_proc): New.
14590         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14591         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14592         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14593
14594 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14595
14596         * fbsd-nat.c (struct free_deleter): Remove.
14597         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14598
14599 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14600
14601         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14602         NULL for an empty pathname.
14603
14604 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14605
14606         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14607         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14608         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14609         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14610         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14611         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14612         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14613         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14614         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14615         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14616         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14617         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14618         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14619         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14620         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14621
14622 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14623
14624         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14625         (gnu_xfer_auxv): New function.
14626         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14627         TARGET_OBJECT_AUXV.
14628
14629 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14630             Simon Marchi  <simon.marchi@ericsson.com>
14631
14632         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14633         common/selftest.c.
14634         (COMMON_OBS): Remove selftest.o.
14635         * configure.ac: Append selftest-arch.c and common/selftest.c to
14636         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14637         * configure: Re-generated.
14638         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14639         GDB_SELF_TEST.
14640         (maintenance_info_selftests): Likewise.
14641
14642 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14643
14644         * ada-valprint.c (val_print_packed_array_elements): Use
14645         proper number of elements when printing an array indexed
14646         by an enumeration type.
14647
14648 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14649
14650         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14651         (dw2_get_file_names_reader): Adjust.
14652         (lookup_dwo_signatured_type): Adjust.
14653         (lookup_dwp_signatured_type): Adjust.
14654         (lookup_signatured_type): Adjust.
14655         (create_type_unit_group): Adjust.
14656         (get_type_unit_group): Adjust.
14657         (process_psymtab_comp_unit_reader): Adjust.
14658         (build_type_psymtabs_reader): Adjust.
14659         (scan_partial_symbols): Adjust.
14660         (add_partial_symbol): Adjust.
14661         (add_partial_subprogram): Adjust.
14662         (peek_die_abbrev): Adjust.
14663         (fixup_go_packaging): Adjust.
14664         (process_imported_unit_die): Adjust.
14665         (dwarf2_compute_name): Adjust.
14666         (dwarf2_physname): Adjust.
14667         (read_import_statement): Adjust.
14668         (handle_DW_AT_stmt_list): Adjust.
14669         (read_file_scope): Adjust.
14670         (read_func_scope): Adjust.
14671         (read_lexical_block_scope): Adjust.
14672         (read_call_site_scope): Adjust.
14673         (read_variable): Adjust.
14674         (dwarf2_rnglists_process): Adjust.
14675         (dwarf2_ranges_process): Adjust.
14676         (dwarf2_ranges_read): Adjust.
14677         (dwarf2_get_pc_bounds): Adjust.
14678         (dwarf2_record_block_ranges): Adjust.
14679         (dwarf2_add_field): Adjust.
14680         (dwarf2_add_member_fn): Adjust.
14681         (read_structure_type): Adjust.
14682         (process_structure_scope): Adjust.
14683         (read_enumeration_type): Adjust.
14684         (read_array_type): Adjust.
14685         (mark_common_block_symbol_computed): Adjust.
14686         (read_common_block): Adjust.
14687         (read_namespace_type): Adjust.
14688         (read_namespace): Adjust.
14689         (read_module_type): Adjust.
14690         (read_tag_pointer_type): Adjust.
14691         (read_tag_ptr_to_member_type): Adjust.
14692         (read_tag_string_type): Adjust.
14693         (read_subroutine_type): Adjust.
14694         (read_typedef): Adjust.
14695         (read_base_type): Adjust.
14696         (attr_to_dynamic_prop): Adjust.
14697         (read_subrange_type): Adjust.
14698         (read_unspecified_type): Adjust.
14699         (dwarf2_read_abbrevs): Adjust.
14700         (load_partial_dies): Adjust.
14701         (read_partial_die): Adjust.
14702         (find_partial_die): Adjust.
14703         (guess_partial_die_structure_name): Adjust.
14704         (fixup_partial_die): Adjust.
14705         (read_attribute_value): Adjust.
14706         (read_addr_index): Adjust.
14707         (read_addr_index_from_leb128): Adjust.
14708         (read_str_index): Adjust.
14709         (dwarf2_string_attr): Adjust.
14710         (get_debug_line_section): Adjust.
14711         (dwarf_decode_line_header): Adjust.
14712         (lnp_state_machine::check_line_address): Adjust.
14713         (dwarf_decode_lines_1): Adjust.
14714         (dwarf_decode_lines): Adjust.
14715         (dwarf2_start_symtab): Adjust.
14716         (var_decode_location): Adjust.
14717         (new_symbol_full): Adjust.
14718         (dwarf2_const_value_data): Adjust.
14719         (dwarf2_const_value_attr): Adjust.
14720         (dwarf2_const_value): Adjust.
14721         (die_type): Adjust.
14722         (die_containing_type): Adjust.
14723         (build_error_marker_type): Adjust.
14724         (lookup_die_type): Adjust.
14725         (guess_full_die_structure_name): Adjust.
14726         (anonymous_struct_prefix): Adjust.
14727         (determine_prefix): Adjust.
14728         (dwarf2_name): Adjust.
14729         (follow_die_ref_or_sig): Adjust.
14730         (follow_die_offset): Adjust.
14731         (follow_die_ref): Adjust.
14732         (follow_die_sig_1): Adjust.
14733         (follow_die_sig): Adjust.
14734         (get_signatured_type): Adjust.
14735         (get_DW_AT_signature_type): Adjust.
14736         (decode_locdesc): Adjust.
14737         (dwarf_decode_macros): Adjust.
14738         (cu_debug_loc_section): Adjust.
14739         (fill_in_loclist_baton): Adjust.
14740         (dwarf2_symbol_mark_computed): Adjust.
14741         (init_one_comp_unit): Don't assign
14742         dwarf2_cu::dwarf2_per_objfile.
14743         (set_die_type): Adjust.
14744
14745 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14746
14747         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14748         <dwarf2_per_objfile>: New field.
14749         (dwarf2_per_objfile): Remove global.
14750         (get_dwarf2_per_objfile): New function.
14751         (set_dwarf2_per_objfile): New function.
14752         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14753         dwarf2_per_objfile.
14754         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14755         (read_abbrev_offset): Likewise.
14756         (read_indirect_string): Likewise.
14757         (read_indirect_line_string): Likewise.
14758         (read_indirect_string_at_offset): Likewise.
14759         (read_indirect_string_from_dwz): Likewise.
14760         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14761         dwarf2_per_objfile.
14762         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14763         (create_all_comp_units): Change objfile parameter to
14764         dwarf2_per_objfile.
14765         (create_all_type_units): Likewise.
14766         (process_queue): Add dwarf2_per_objfile parameter.
14767         (read_and_check_comp_unit_head): Likewise.
14768         (lookup_dwo_unit_in_dwp): Likewise.
14769         (get_dwp_file): Likewise.
14770         (process_cu_includes): Likewise.
14771         (struct free_dwo_file_cleanup_data): New struct.
14772         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14773         set_dwarf2_per_objfile.
14774         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14775         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14776         context, adjust calls.
14777         (dw2_instantiate_symtab): Likewise.
14778         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14779         (dw2_get_cu): Likewise.
14780         (create_cu_from_index_list): Change objfile parameter to
14781         dwarf2_per_objfile.
14782         (create_cus_from_index_list): Get dwarf2_per_objfile from
14783         context, adjust calls.
14784         (create_cus_from_index): Likewise.
14785         (create_signatured_type_table_from_index): Change objfile
14786         parameter to dwarf2_per_objfile.
14787         (create_signatured_type_table_from_debug_names): Change objfile
14788         parameter to dwarf2_per_objfile.
14789         (create_addrmap_from_index): Likewise.
14790         (create_addrmap_from_aranges): Likewise.
14791         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14792         (dw2_setup): Remove.
14793         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14794         context.
14795         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14796         get_dwarf2_per_objfile.
14797         (dw2_forget_cached_source_info): Likewise.
14798         (dw2_map_symtabs_matching_filename): Likewise.
14799         (struct dw2_symtab_iterator) <index>: Remove.
14800         <dwarf2_per_objfile>: New field.
14801         (dw2_symtab_iter_init): Replace index parameter with
14802         dwarf2_per_objfile.
14803         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14804         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14805         (dw2_print_stats): Likewise.
14806         (dw2_dump): Likewise.
14807         (dw2_expand_symtabs_for_function): Likewise.
14808         (dw2_expand_all_symtabs): Likewise.
14809         (dw2_expand_symtabs_with_fullname): Likewise.
14810         (dw2_expand_marked_cus): Replace index and objfile parameters
14811         with dwarf2_per_objfile.
14812         (dw_expand_symtabs_matching_file_matcher): Add
14813         dwarf2_per_objfile parameter and adjust calls.
14814         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14815         adjust calls.
14816         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14817         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14818         adjust calls.
14819         (create_cus_from_debug_names_list): Replace objfile parameter
14820         with dwarf2_per_objfile and adjust calls.
14821         (create_cus_from_debug_names): Likewise.
14822         (dwarf2_read_debug_names): Likewise.
14823         (mapped_debug_names::namei_to_name): Adjust call.
14824         (dw2_debug_names_iterator::next): Likewise.
14825         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14826         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14827         (dw2_debug_names_dump): Likewise.
14828         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14829         (dw2_debug_names_expand_symtabs_matching): Likewise.
14830         (dwarf2_initialize_objfile): Likewise.
14831         (dwarf2_build_psymtabs): Likewise.
14832         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14833         this_cu.
14834         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14835         (read_and_check_comp_unit_head): Likewise.
14836         (read_abbrev_offset): Likewise.
14837         (create_debug_type_hash_table): Likewise.
14838         (create_debug_types_hash_table): Likewise.
14839         (create_all_type_units): Replace objfile parameter with
14840         dwarf2_per_objfile.
14841         (add_type_unit): Add dwarf2_per_objfile parameter.
14842         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14843         with dwarf2_per_objfile.
14844         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14845         (lookup_dwp_signatured_type): Likewise.
14846         (lookup_signatured_type): Likewise.
14847         (read_cutu_die_from_dwo): Likewise.
14848         (init_tu_and_read_dwo_dies): Likewise.
14849         (init_cutu_and_read_dies): Likewise.
14850         (init_cutu_and_read_dies_no_follow): Likewise.
14851         (allocate_type_unit_groups_table): Add objfile parameter.
14852         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14853         (get_type_unit_group): Likewise.
14854         (process_psymtab_comp_unit): Update call.
14855         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14856         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14857         (print_tu_stats): Likewise.
14858         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14859         in void* parameter.
14860         (build_type_psymtabs): Change objfile parameter to
14861         dwarf2_per_objfile.
14862         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14863         passed in void* parameter.
14864         (process_skeletonless_type_units): Change objfile parameter to
14865         dwarf2_per_objfile.
14866         (set_partial_user): Likewise.
14867         (dwarf2_build_psymtabs_hard): Likewise.
14868         (read_comp_units_from_section): Likewise.
14869         (create_all_comp_units): Likewise.
14870         (scan_partial_symbols): Update calls.
14871         (add_partial_symbol): Likewise.
14872         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14873         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14874         (process_queue): Add dwarf2_per_objfile parameter.
14875         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14876         (compute_compunit_symtab_includes): Likewise.
14877         (process_cu_includes): Add dwarf2_per_objfile parameter.
14878         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14879         (process_full_type_unit): Likewise.
14880         (process_imported_unit_die): Update call.
14881         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14882         (read_file_scope): Likewise.
14883         (allocate_dwo_file_hash_table): Add objfile parameter.
14884         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14885         (create_cus_hash_table): Likewise.
14886         (create_dwp_hash_table): Likewise.
14887         (create_dwo_unit_in_dwp_v1): Likewise.
14888         (create_dwp_v2_section): Likewise.
14889         (create_dwo_unit_in_dwp_v2): Likewise.
14890         (lookup_dwo_unit_in_dwp): Likewise.
14891         (try_open_dwop_file): Likewise.
14892         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14893         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14894         cleanup to include a reference to dwarf2_per_objfile.
14895         (open_dwp_file): Add dwarf2_per_objfile parameter.
14896         (open_and_init_dwp_file): Likewise.
14897         (get_dwp_file): Likewise.
14898         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14899         (queue_and_load_all_dwo_tus): Update call.
14900         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14901         data.
14902         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14903         (dwarf2_ranges_process): Likewise.
14904         (dwarf2_get_pc_bounds): Likewise.
14905         (mark_common_block_symbol_computed): Likewise.
14906         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14907         (dwarf2_read_abbrevs): Update call.
14908         (read_partial_die): Use dwarf2_per_objfile from cu.
14909         (find_partial_die): Likewise.
14910         (fixup_partial_die): Likewise.
14911         (read_attribute_value): Likewise.
14912         (read_indirect_string_at_offset_from): Add objfile parameter.
14913         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14914         parameter.
14915         (read_indirect_string_from_dwz): Add objfile parameter.
14916         (read_indirect_string): Add objfile parameter.
14917         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14918         (read_addr_index): Use dwarf2_per_objfile from cu.
14919         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14920         call dw2_setup.
14921         (read_str_index): Use dwarf2_per_objfile from cu.
14922         (get_debug_line_section): Likewise.
14923         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14924         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14925         (new_symbol_full): Use dwarf2_per_objfile from cu.
14926         (build_error_marker_type): Likewise.
14927         (lookup_die_type): Likewise.
14928         (determine_prefix): Likewise.
14929         (follow_die_offset): Likewise.
14930         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14931         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14932         (dwarf2_fetch_die_type_sect_off): Likewise.
14933         (dwarf2_get_die_type): Likewise.
14934         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14935         (get_signatured_type): Likewise.
14936         (get_DW_AT_signature_type): Likewise.
14937         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14938         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14939         (cu_debug_loc_section): Likewise.
14940         (fill_in_loclist_baton): Likewise.
14941         (dwarf2_symbol_mark_computed): Likewise.
14942         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14943         dwarf2_per_objfile.
14944         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14945         parameter.
14946         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14947         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14948         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14949         (set_die_type): Use dwarf2_free_objfile from cu.
14950         (get_die_type_at_offset): Likewise.
14951         (dwarf2_per_objfile_free): Don't assign global variable.
14952         (debug_names) <constructor>: Add dwarf2_per_objfile
14953         parameter, update m_debugstrlookup construction.
14954         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14955         parameter.
14956         <m_dwarf2_per_objfile>: New field.
14957         <lookup>: Use m_dwarf2_per_objfile.
14958         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14959         (psyms_seen_size): Likewise.
14960         (write_gdbindex): Replace objfile parameter with
14961         dwarf2_per_objfile.
14962         (write_debug_names): Likewise.
14963         (write_psymtabs_to_index): Likewise.
14964         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14965         calls.
14966
14967 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14968
14969         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14970         <dwarf2_per_objfile>: New field.
14971         (struct dwarf2_per_cu_data) <objfile>: Remove.
14972         <dwarf2_per_objfile>: New field.
14973         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14974         of objfile.
14975         (create_signatured_type_table_from_index): Likewise.
14976         (create_debug_type_hash_table): Likewise.
14977         (fill_in_sig_entry_from_dwo_entry): Likewise.
14978         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14979         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14980         objfile.
14981         (create_partial_symtab): Access objfile through
14982         dwarf2_per_objfile.
14983         (process_psymtab_comp_unit_reader): Likewise.
14984         (read_comp_units_from_section): Likewise.
14985         (scan_partial_symbols): Likewise.
14986         (add_partial_symbol): Likewise.
14987         (add_partial_subprogram): Likewise.
14988         (peek_die_abbrev): Likewise.
14989         (fixup_go_packaging): Likewise.
14990         (process_full_comp_unit): Likewise.
14991         (process_full_type_unit): Likewise.
14992         (process_imported_unit_die): Likewise.
14993         (dwarf2_compute_name): Likewise.
14994         (dwarf2_physname): Likewise.
14995         (read_import_statement): Likewise.
14996         (create_cus_hash_table): Assign dwarf2_physname instead of
14997         objfile.
14998         (read_func_scope): Access objfile through dwarf2_per_objfile.
14999         (read_lexical_block_scope): Likewise.
15000         (read_call_site_scope): Likewise.
15001         (read_variable): Likewise.
15002         (dwarf2_rnglists_process): Likewise.
15003         (dwarf2_ranges_process): Likewise.
15004         (dwarf2_ranges_read): Likewise.
15005         (dwarf2_record_block_ranges): Likewise.
15006         (dwarf2_add_field): Likewise.
15007         (dwarf2_add_member_fn): Likewise.
15008         (read_structure_type): Likewise.
15009         (process_structure_scope): Likewise.
15010         (read_enumeration_type): Likewise.
15011         (read_array_type): Likewise.
15012         (read_common_block): Likewise.
15013         (read_namespace_type): Likewise.
15014         (read_namespace): Likewise.
15015         (read_module_type): Likewise.
15016         (read_tag_pointer_type): Likewise.
15017         (read_tag_ptr_to_member_type): Likewise.
15018         (read_tag_string_type): Likewise.
15019         (read_subroutine_type): Likewise.
15020         (read_typedef): Likewise.
15021         (read_base_type): Likewise.
15022         (attr_to_dynamic_prop): Likewise.
15023         (read_subrange_type): Likewise.
15024         (read_unspecified_type): Likewise.
15025         (load_partial_dies): Likewise.
15026         (read_partial_die): Likewise.
15027         (find_partial_die): Likewise.
15028         (guess_partial_die_structure_name): Likewise.
15029         (fixup_partial_die): Likewise.
15030         (read_attribute_value): Likewise.
15031         (read_addr_index_from_leb128): Likewise.
15032         (dwarf2_read_addr_index): Likewise.
15033         (dwarf2_string_attr): Likewise.
15034         (lnp_state_machine::check_line_address): Likewise.
15035         (dwarf_decode_lines_1): Likewise.
15036         (dwarf_decode_lines): Likewise.
15037         (dwarf2_start_symtab): Likewise.
15038         (var_decode_location): Likewise.
15039         (new_symbol_full): Likewise.
15040         (dwarf2_const_value_data): Likewise.
15041         (dwarf2_const_value_attr): Likewise.
15042         (dwarf2_const_value): Likewise.
15043         (die_type): Likewise.
15044         (die_containing_type): Likewise.
15045         (lookup_die_type): Likewise.
15046         (guess_full_die_structure_name): Likewise.
15047         (anonymous_struct_prefix): Likewise.
15048         (dwarf2_name): Likewise.
15049         (follow_die_ref_or_sig): Likewise.
15050         (follow_die_offset): Likewise.
15051         (follow_die_ref): Likewise.
15052         (dwarf2_fetch_die_loc_sect_off): Likewise.
15053         (dwarf2_fetch_constant_bytes): Likewise.
15054         (dwarf2_fetch_die_type_sect_off): Likewise.
15055         (dwarf2_get_die_type): Likewise.
15056         (follow_die_sig): Likewise.
15057         (decode_locdesc): Likewise.
15058         (dwarf2_per_cu_objfile): Likewise.
15059         (dwarf2_per_cu_text_offset): Likewise.
15060         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
15061         objfile.
15062         (set_die_type): Access objfile through
15063         dwarf2_per_objfile.
15064
15065 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15066
15067         * valprint.c (converted_character_d): Remove typedef.
15068         (DEF_VEC_O (converted_character_d)): Remove.
15069         (count_next_character): Use std::vector.
15070         (print_converted_chars_to_obstack): Likewise.
15071         (generic_printstr): Likewise.
15072
15073 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15074
15075         * xml-support.h (struct gdb_xml_value): Add constructor.
15076         <value>: Change type to unique_xmalloc_ptr.
15077         (gdb_xml_value_s): Remove typedef.
15078         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15079         (gdb_xml_element_start_handler): Change parameter type to
15080         std::vector.
15081         (xml_find_attribute): Likewise.
15082         * xml-support.c (xml_find_attribute): Change parameter type to
15083         std::vector and adjust.
15084         (gdb_xml_values_cleanup): Remove.
15085         (gdb_xml_parser::start_element): Adjust to std::vector.
15086         (xinclude_start_include): Change paraeter type to std::vector
15087         and adjust.
15088         * btrace.c (check_xml_btrace_version): Likewise.
15089         (parse_xml_btrace_block): Likewise.
15090         (parse_xml_btrace_pt_config_cpu): Likewise.
15091         (parse_xml_btrace_pt): Likewise.
15092         (parse_xml_btrace_conf_bts): Likewise.
15093         (parse_xml_btrace_conf_pt): Likewise.
15094         * memory-map.c (memory_map_start_memory): Likewise.
15095         (memory_map_start_property): Likewise.
15096         * osdata.c (osdata_start_osdata): Likewise.
15097         (osdata_start_item): Likewise.
15098         (osdata_start_column): Likewise.
15099         * remote.c (start_thread): Likewise.
15100         * solib-aix.c (library_list_start_library): Likewise.
15101         (library_list_start_list): Likewise.
15102         * solib-svr4.c (library_list_start_library): Likewise.
15103         (svr4_library_list_start_list): Likewise.
15104         * solib-target.c (library_list_start_segment): Likewise.
15105         (library_list_start_section): Likewise.
15106         (library_list_start_library): Likewise.
15107         (library_list_start_list): Likewise.
15108         * tracepoint.c (traceframe_info_start_memory): Likewise.
15109         (traceframe_info_start_tvar): Likewise.
15110         * xml-syscall.c (syscall_start_syscall): Likewise.
15111         * xml-tdesc.c (tdesc_start_target): Likewise.
15112         (tdesc_start_feature): Likewise.
15113         (tdesc_start_reg): Likewise.
15114         (tdesc_start_union): Likewise.
15115         (tdesc_start_struct): Likewise.
15116         (tdesc_start_flags): Likewise.
15117         (tdesc_start_enum): Likewise.
15118         (tdesc_start_field): Likewise.
15119         (tdesc_start_enum_value): Likewise.
15120         (tdesc_start_vector): Likewise.
15121
15122 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15123
15124         * extension.h (struct xmethod_worker) <clone>: Remove.
15125         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15126         Remove.
15127         (python_xmethod_worker::clone): Remove.
15128         * valops.c (find_overload_match): Use std::move instead of
15129         clone.
15130
15131 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15132
15133         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15134         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15135         <free_xmethod_worker_data>: Remove.
15136         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15137         <get_xmethod_arg_types>: Remove.
15138         <get_xmethod_result_type>: Remove.
15139         <invoke_xmethod>: Remove.
15140         * extension.c (new_xmethod_worker): Remove.
15141         (clone_xmethod_worker): Remove.
15142         (get_matching_xmethod_workers): Return void, pass std::vector by
15143         pointer.
15144         (get_xmethod_arg_types): Rename to...
15145         (xmethod_worker::get_arg_types): ... this, and adjust.
15146         (get_xmethod_result_type): Rename to...
15147         (xmethod_worker::get_result_type): ... this, and adjust.
15148         (invoke_xmethod): Remove.
15149         (free_xmethod_worker): Remove.
15150         (free_xmethod_worker_vec): Remove.
15151         * extension.h (enum ext_lang_rc): Move here from
15152         extension-priv.h.
15153         (struct xmethod_worker): Add constructor and destructor.
15154         <data>: Remove.
15155         <value>: Remove.
15156         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15157         virtual pure methods.
15158         <get_arg_types, get_result_type>: New methods.
15159         (xmethod_worker_ptr): Remove typedef.
15160         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15161         (xmethod_worker_vec): Remove typedef.
15162         (xmethod_worker_up): New typedef.
15163         (invoke_xmethod): Remove.
15164         (clone_xmethod_worker): Remove.
15165         (free_xmethod_worker): Remove.
15166         (free_xmethod_worker_vec): Remove.
15167         (get_xmethod_arg_types): Remove.
15168         (get_xmethod_result_type): Remove.
15169         * valops.c (find_method_list): Use std::vector, don't use
15170         intermediate vector.
15171         (value_find_oload_method_list): Use std::vector.
15172         (find_overload_match): Use std::vector.
15173         (find_oload_champ): Use std::vector.
15174         * value.c (value_free): Use operator delete.
15175         (value_of_xmethod): Rename to...
15176         (value_from_xmethod): ... this.  Don't assign
15177         xmethod_worker::value, take rvalue-reference.
15178         (result_type_of_xmethod): Adjust.
15179         (call_xmethod): Adjust.
15180         * value.h: Include extension.h.
15181         (struct xmethod_worker): Don't forward-declare.
15182         (value_of_xmethod): Rename to...
15183         (value_from_xmethod): ... this, take rvalue-reference.
15184         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15185         (struct python_xmethod_worker): ... this, add constructor and
15186         destructor.
15187         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15188         (gdbpy_free_xmethod_worker_data): Rename to...
15189         (python_xmethod_worker::~python_xmethod_worker): ... this and
15190         adjust.
15191         (gdbpy_clone_xmethod_worker_data): Rename to...
15192         (python_xmethod_worker::clone): ... this and adjust.
15193         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15194         temporary vector.
15195         (gdbpy_get_xmethod_arg_types): Rename to...
15196         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15197         (gdbpy_get_xmethod_result_type): Rename to...
15198         (python_xmethod_worker::do_get_result_type): ... this and
15199         adjust.
15200         (gdbpy_invoke_xmethod): Rename to...
15201         (python_xmethod_worker::invoke): ... this and adjust.
15202         (new_python_xmethod_worker): Rename to...
15203         (python_xmethod_worker::python_xmethod_worker): ... this and
15204         adjust.
15205         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15206         Remove.
15207         (gdbpy_free_xmethod_worker_data): Remove.
15208         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15209         (gdbpy_get_xmethod_arg_types): Remove.
15210         (gdbpy_get_xmethod_result_type): Remove.
15211         (gdbpy_invoke_xmethod): Remove.
15212         * python/python.c (python_extension_ops): Remove obsolete
15213         callbacks.
15214
15215 2018-01-05  Pedro Alves  <palves@redhat.com>
15216
15217         PR gdb/18653
15218         * common/signals-state-save-restore.c
15219         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15220         find a custom handler preinstalled, instead of internal erroring.
15221         But only warn if !quiet.
15222         * common/signals-state-save-restore.h
15223         (save_original_signals_state): New parameter 'quiet'.
15224         * main.c (captured_main_1): Move save_original_signals_state call
15225         after option handling, and pass QUIET.
15226
15227 2018-01-05  Pedro Alves  <palves@redhat.com>
15228
15229         * spu-tdep.c (spu_catch_start): Pass
15230         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15231
15232 2018-01-05  Pedro Alves  <palves@redhat.com>
15233
15234         PR gdb/22670
15235         * ada-lang.c (literal_symbol_name_matcher): New function.
15236         (ada_get_symbol_name_matcher): Use it for
15237         symbol_name_match_type::SEARCH_NAME.
15238         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15239         it down instead of assuming symbol_name_match_type::FULL.
15240         * block.h (block_lookup_symbol): New parameter 'match_type'.
15241         * c-valprint.c (print_unpacked_pointer): Use
15242         lookup_symbol_search_name instead of lookup_symbol.
15243         * compile/compile-object-load.c (get_out_value_type): Pass down
15244         symbol_name_match_type::SEARCH_NAME.
15245         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15246         symbol_name_match_type::FULL.
15247         * cp-support.c (cp_get_symbol_name_matcher): Handle
15248         symbol_name_match_type::SEARCH_NAME.
15249         * infrun.c (insert_exception_resume_breakpoint): Use
15250         lookup_symbol_search_name.
15251         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15252         * psymtab.c (maintenance_check_psymtabs): Use
15253         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15254         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15255         SYMBOL_SEARCH_NAME.
15256         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15257         if symbol_name_match_type::SEARCH_NAME.
15258         (lookup_symbol_in_language): Pass down
15259         symbol_name_match_type::FULL.
15260         (lookup_symbol_search_name): New.
15261         (lookup_language_this): Pass down
15262         symbol_name_match_type::SEARCH_NAME.
15263         (lookup_symbol_aux, lookup_local_symbol): New parameter
15264         'match_type'.  Pass it down.
15265         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15266         (lookup_symbol_search_name): New declaration.
15267         (lookup_symbol_in_block): New 'match_type' parameter.
15268
15269 2018-01-05  Pedro Alves  <palves@redhat.com>
15270
15271         PR gdb/22670
15272         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15273         ada_lookup_symbol.
15274         (ada_lookup_symbol): Reimplement in terms of
15275         ada_lookup_symbol_list, bits factored out from
15276         ada_lookup_encoded_symbol.
15277
15278 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15279
15280         * ada-exp.y (write_object_renaming): When subscripting an array
15281         using a symbol as the index, pass the block in call to
15282         ada_lookup_encoded_symbol when looking that symbol up.
15283
15284 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15285
15286         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15287         TYPE_INDEX_TYPE.
15288
15289 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15290
15291         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15292         the case where VALUE_LVAL (val0) is not lval_memory.
15293
15294 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15295
15296         * ada-valprint.c (print_optional_low_bound): Handle
15297         character-indexed array printing like boolean-indexed array
15298         printing.
15299
15300 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15301
15302         * NEWS: Create a new section for the next release branch.
15303         Rename the section of the current branch, now that it has
15304         been cut.
15305
15306 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15307
15308         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15309         * version.in: Bump version to 8.1.50.DATE-git.
15310
15311 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15312
15313         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15314         Add field.
15315         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15316         Add field.
15317         (default_exception_support_info) <catch_handlers_sym>: Add field.
15318         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15319         (ada_exception_name_addr_1): Add "catch handlers" handling.
15320         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15321         Update all callers.
15322         (create_excep_cond_exprs) <ex>: Add parameter.
15323         (re_set_exception): Update create_excep_cond_exprs call.
15324         (print_it_exception, print_one_exception, print_mention_exception)
15325         (print_recreate_exception): Add "catch handler" handling.
15326         (allocate_location_catch_handlers, re_set_catch_handlers)
15327         (check_status_catch_handlers, print_it_catch_handlers)
15328         (print_one_catch_handlers, print_mention_catch_handlers)
15329         (print_recreate_catch_handlers): New function.
15330         (catch_handlers_breakpoint_ops): New variable.
15331         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15332         Add parameter.  Add "catch handler" handling.
15333         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15334         Add "catch handler" handling.
15335         (ada_exception_catchpoint_cond_string): Add "catch handler"
15336         handling.
15337         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15338         call.
15339         (catch_ada_handlers_command): New function.
15340         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15341         operations structure.
15342         (_initialize_ada_language): Add "catch handlers" command entry.
15343         * NEWS: Document "catch handlers" feature.
15344
15345 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15346
15347         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15348         account when creating the array type of the slice.
15349         (ada_value_slice): Likewise.
15350
15351 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15352
15353         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15354         New enum value.
15355         (create_array_type_with_stride): Add byte_stride_prop parameter.
15356         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15357         New parameter.  Update all callers in this file.
15358         (array_type_has_dynamic_stride): New function.
15359         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15360         of arrays with dynamic byte strides.
15361         * dwarf2read.c (read_array_type): Add support for dynamic
15362         DW_AT_byte_stride attributes.
15363
15364 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15365
15366         * dwarf2read.c (read_unspecified_type): Treat
15367         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15368
15369 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15370
15371         Update copyright year range in all GDB files.
15372
15373 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15374
15375         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15376         and gdb/testsuite/gdb.base/step-line.c.
15377
15378 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15379
15380         * copyright.py (main): Dump the contents of
15381         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15382         even if BY_HAND is empty.
15383
15384 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15385
15386         * top.c (print_gdb_version): Update Copyright year in version
15387         message.
15388
15389 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15390
15391         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15392
15393 For older changes see ChangeLog-2017.
15394 \f
15395 Local Variables:
15396 mode: change-log
15397 left-margin: 8
15398 fill-column: 74
15399 version-control: never
15400 coding: utf-8
15401 End: