Unify shell-finding logic
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Tom Tromey  <tom@tromey.com>
2
3         * procfs.c (procfs_target::create_inferior): Use get_shell.
4         * cli/cli-cmds.c (shell_escape): Use get_shell.
5         * windows-nat.c (windows_nat_target::create_inferior): Use
6         get_shell.
7         * common/pathstuff.c (get_shell): New function.
8         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
9         (fork_inferior): Use get_shell.
10         * common/pathstuff.h (get_shell): Declare.
11
12 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
13
14         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
15
16 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
17
18         * stack.c (print_variable_and_value_data): Add preg and treg.
19         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
20         and update callers.
21         (print_frame_arg_vars): Likewise.
22         (prepare_reg): New function.
23         (info_locals_command): Extract info print args and use them.
24         (info_args_command): Likewise.
25         (_initialize_stack): Modify on-line help.
26         * symtab.c (treg_matches_sym_type_name): New function.
27         (search_symbols): New arg t_regexp.
28         (symtab_symbol_info): New args quiet, regexp, t_regexp.
29         (info_variables_command): Extract info print args and use them.
30         (info_functions_command): Likewise.
31         (info_types_command): Update call to symtab_symbol_info.
32         (_initialize_symtab): Modify on-line help.
33         * symtab.h (treg_matches_sym_type_name): New function.
34         (search_symbols): New t_regexp arg.
35
36 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
37
38         * cli-utils.c (extract_arg_maybe_quoted): New function.
39         (extract_info_print_args): New function.
40         (info_print_args_help): New function.
41         (report_unrecognized_option_error): New function.
42         * cli-utils.h (extract_arg_maybe_quoted): New function.
43         (extract_info_print_args): New function.
44         (info_print_args_help): New function.
45         (report_unrecognized_option_error): New function.
46
47 2018-10-26  Tom Tromey  <tom@tromey.com>
48
49         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
50         (compute_compunit_symtab_includes): Update.
51         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
52         (compunit_symtab_ptr): Likewise.
53
54 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
55
56         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
57         default_print_auxv_entry for specific tag values.
58
59 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
60
61         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
62
63 2018-10-26  Jim Wilson  <jimw@sifive.com>
64
65         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
66         (riscv_linux_sigframe_init): Declare.
67         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
68         (riscv_linux_sigframe): New.
69         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
70         (riscv_linux_sigframe_init): Define.
71         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
72
73         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
74         (riscv_isa_flen): Likewise.  Drop static.
75         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
76         (riscv_isa_flen): Likewise.  Declare.
77
78 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
79             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
80
81         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
82         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
83         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
84         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
85         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
86         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
87         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
88         Define.
89         (struct ppc_linux_features) <htm>: New field.
90         (ppc_linux_no_features): Add initializer for htm field.
91         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
92         new tdescs.
93         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
94         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
95         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
96         Define if not already defined.
97         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
98         and rs6000/powerpc-isa207-htm-vsx64l.
99         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
100         rs6000/powerpc-isa207-htm-vsx64l.xml.
101         * features/rs6000/power-htm-spr.xml: New file.
102         * features/rs6000/power-htm-core.xml: New file.
103         * features/rs6000/power64-htm-core.xml: New file.
104         * features/rs6000/power-htm-fpu.xml: New file.
105         * features/rs6000/power-htm-altivec.xml: New file.
106         * features/rs6000/power-htm-vsx.xml: New file.
107         * features/rs6000/power-htm-ppr.xml: New file.
108         * features/rs6000/power-htm-dscr.xml: New file.
109         * features/rs6000/power-htm-tar.xml: New file.
110         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
111         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
112         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
113         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
114         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
115         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
116         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
117         fetch_regset with HTM regsets.
118         (store_register, store_ppc_registers): Call store_regset with HTM
119         regsets.
120         (ppc_linux_nat_target::read_description): Set htm field in the
121         features struct if needed.
122         * ppc-linux-tdep.c: Include
123         features/rs6000/powerpc-isa207-htm-vsx32l.c and
124         features/rs6000/powerpc-isa207-htm-vsx64l.c.
125         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
126         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
127         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
128         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
129         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
130         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
131         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
132         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
133         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
134         (ppc32_linux_ctarregset): New globals.
135         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
136         (ppc_linux_collect_core_cpgrregset): New function.
137         (ppc_linux_iterate_over_regset_sections): Call back with the htm
138         regsets.
139         (ppc_linux_core_read_description): Check if the tm spr section is
140         present and set htm in the features struct.
141         (_initialize_ppc_linux_tdep): Call
142         initialize_tdesc_powerpc_isa207_htm_vsx32l and
143         initialize_tdesc_powerpc_isa207_htm_vsx64l.
144         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
145         Declare.
146         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
147         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
148         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
149         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
150         New fields.
151         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
152         Likewise.
153         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
154         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
155         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
156         New enum fields.
157         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
158         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
159         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
160         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
161         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
162         <PPC_CTAR_REGNUM>: Likewise.
163         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
164         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
165         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
166         (IS_CEFP_PSEUDOREG): Define.
167         (rs6000_register_name): Hide the upper halves of checkpointed VSX
168         registers.  Return names for the checkpointed DFP, VSX, and EFP
169         pseudo registers.
170         (rs6000_pseudo_register_type): Remove initial assert and raise an
171         internal error in the else clause instead.  Return types for the
172         checkpointed DFP, VSX, and EFP pseudo registers.
173         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
174         checkpointed DFP pseudo registers.
175         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
176         checkpointed VSX pseudo registers.
177         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
178         from efpr_pseudo_register_read and
179         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
180         registers.
181         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
182         Handle checkpointed DFP, VSX, and EFP registers.
183         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
184         (efp_ax_pseudo_register_collect): New functions.
185         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
186         register logic to new functions.  Handle checkpointed DFP, VSX,
187         and EFP pseudo registers.
188         (rs6000_gdbarch_init): Look for and validate the htm features.
189         Include checkpointed DFP, VSX and EFP pseudo-registers.
190         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
191         HTM registers.
192
193 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
194
195         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
196         without altivec or fpu.
197
198 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
199             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
200
201         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
202         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
203         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
204         Define if not already defined.
205         * features/rs6000/power-ebb.xml: New file.
206         * features/rs6000/power-linux-pmu.xml: New file.
207         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
208         features.
209         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
210         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
211         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
212         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
213         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
214         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
215         fetch_regset with ebb and pmu regsets.
216         (store_register, store_ppc_registers): Call store_regset with ebb
217         and pmu regsets.
218         (ppc_linux_nat_target::read_description): Set isa207 field in the
219         features struct if ebb and pmu are avaiable.
220         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
221         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
222         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
223         and pmu regsets.
224         (ppc_linux_core_read_description): Check if the pmu section is
225         present and set isa207 in the features struct.
226         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
227         (ppc32_linux_pmuregset): Declare.
228         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
229         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
230         <ppc_sier_regnum>: New field.
231         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
232         New enum values.
233         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
234         values.
235         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
236         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
237         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
238         ebb and pmu features.
239
240 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
241             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
242
243         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
244         (tdesc_powerpc_isa207_vsx64l): Declare.
245         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
246         (struct ppc_linux_features) <isa207>: New field.
247         (ppc_linux_no_features): Add initializer for isa207 field.
248         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
249         new tdescs.
250         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
251         (NT_PPC_TAR): Define if not already defined.
252         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
253         rs6000/powerpc-isa207-vsx64l.
254         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
255         rs6000/powerpc-isa207-vsx64l.xml.
256         * features/rs6000/power-tar.xml: New file.
257         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
258         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
259         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
260         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
261         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
262         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
263         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
264         fetch_regset with the TAR regset.
265         (store_register, store_ppc_registers): Call store_regset with the
266         TAR regset.
267         (ppc_linux_nat_target::read_description): Set isa207 field in the
268         features struct if needed.
269         * ppc-linux-tdep.c: Include
270         features/rs6000/powerpc-isa207-vsx32l.c and
271         features/rs6000/powerpc-isa207-vsx64l.c.
272         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
273         (ppc_linux_iterate_over_regset_sections): Call back with the tar
274         regset.
275         (ppc_linux_core_read_description): Check if the tar section is
276         present and set isa207 in the features struct.
277         (_initialize_ppc_linux_tdep): Call
278         initialize_tdesc_powerpc_isa207_vsx32l and
279         initialize_tdesc_powerpc_isa207_vsx64l.
280         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
281         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
282         (enum) <PPC_TAR_REGNUM>: New enum value.
283         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
284         feature.
285         (ppc_process_record_op31): Record changes to TAR.
286
287 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
288             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
289
290         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
291         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
292         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
293         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
294         (struct ppc_linux_features) <ppr_dscr>: New field.
295         (ppc_linux_no_features): Add initializer for ppr_dscr field.
296         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
297         new tdescs.
298         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
299         Define if not already defined.
300         * features/Makefile (WHICH): Add
301         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
302         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
303         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
304         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
305         * features/rs6000/power-dscr.xml: New file.
306         * features/rs6000/power-ppr.xml: New file.
307         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
308         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
309         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
310         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
311         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
312         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
313         * ppc-linux-nat.c: Include <sys/uio.h>.
314         (fetch_regset, store_regset, check_regset): New functions.
315         (fetch_register, fetch_ppc_registers): Call fetch_regset with
316         DSCR and PPR regsets.
317         (store_register, store_ppc_registers): Call store_regset with
318         DSCR and PPR regsets.
319         (ppc_linux_get_hwcap2): New function.
320         (ppc_linux_nat_target::read_description): Call
321         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
322         features struct if needed.
323         * ppc-linux-tdep.c: Include
324         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
325         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
326         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
327         (ppc32_linux_dscrregset): New globals.
328         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
329         and dscr regsets.
330         (ppc_linux_core_read_description): Check if the ppr and dscr
331         sections are present and set ppr_dscr in the features struct.
332         (_initialize_ppc_linux_tdep): Call
333         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
334         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
335         * ppc-linux-tdep.h (ppc32_linux_pprregset)
336         (ppc32_linux_dscrregset): Declare.
337         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
338         <ppc_dscr_regnum>: New field.
339         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
340         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
341         and dscr features.
342         (ppc_process_record_op31): Record changes to PPR and DSCR.
343
344 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
345
346         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
347         second initializer line for the have_* variables.  Initialize
348         have_fpu to 0 instead of 1.
349
350 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
351
352         * arch/ppc-linux-common.c (ppc_linux_match_description):
353         Parenthesize tdesc assignements and indent them properly.
354
355 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
356
357         * ppc-linux-nat.c (fetch_register): Change if statement to else
358         if.
359         (store_register): Likewise.
360
361 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
362
363         * rs6000-tdep.c: Remove reggroups.h include.
364         (rs6000_pseudo_register_reggroup_p): Remove.
365         (rs6000_gdbarch_init): Remove call to
366         set_tdesc_pseudo_register_reggroup_p.
367
368 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
369
370         * reggroups.c (default_register_reggroup_p): Return true for
371         decfloat registers and float_reggroup.
372
373 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
374
375         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
376         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
377         ppc_linux_collect_vrregset by regcache_collect_regset.
378
379 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
380
381         * linux-tdep.c (linux_collect_regset_section_cb): Use
382         std::vector<gdb_byte> instead of char * and malloc for buf.
383         Remove xfree.
384
385 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
386
387         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
388         symtab_start instead of always using language_unknown.
389
390 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
391
392         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
393         READ_P parameter, catch and ignore register access errors from
394         either the old or new MISA location.
395         (riscv_has_feature): Update call to riscv_read_misa_reg.
396
397 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
398
399         * python/py-function.c (convert_values_to_python): Return
400         gdbpy_ref<>.  Add header comment.
401         (fnpy_call): Adjust.
402
403 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
404
405         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
406         (cmdpy_completer_handle_brkchars): Adjust.
407         (cmdpy_completer): Adjust.
408
409 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
410
411         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
412         Pass correct regnum to raw_supply_zeroed.
413
414 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
415
416         * regcache.c (cooked_read_test): Add CSKY to the list of
417         architectures with a save_reggroup
418
419 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
420
421         PR gdb/23368
422         * infrun.c (follow_exec): In the follow_exec_mode_new case,
423         transfer terminal state from old new new inferior.
424         * terminal.h (swap_terminal_info): New function.
425         * inflow.c (swap_terminal_info): New function.
426
427 2018-10-23  Tom Tromey  <tom@tromey.com>
428
429         * record-btrace.c (get_thread_current_frame_id): Rename from
430         get_thread_current_frame.  Return a frame_id.
431         (record_btrace_start_replaying): Update.
432
433 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
434
435         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
436         for CSRs.
437
438 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
439
440         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
441         have_nonsteppable_watchpoint attribute to 1.
442
443 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
444
445         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
446         register names.
447         (struct register_alias): Rename to...
448         (struct riscv_register_alias): ...this, and update comment.
449         (riscv_register_aliases): Update type, and alias names.  Remove
450         CSR names from this list.
451         (riscv_register_name): Use riscv_gdb_reg_names for int and float
452         register names.  Add an extra assertion.
453         (riscv_is_regnum_a_named_csr): New function.
454         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
455
456 2018-10-22  Jim Wilson  <jimw@sifive.com>
457
458         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
459         FP reg smaller than FP reg size, and fill with -1 instead of 0.
460
461         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
462         (riscv_register_type): Use them.
463         (riscv_print_one_register_info): Handle union of floats same as float.
464         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
465         riscv_fpreg_q_type fields.
466
467 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
468
469         * gdbarch.sh (gdbarch_num_cooked_regs): New.
470         * gdbarch.h: Re-generate.
471         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
472         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
473         * eval.c (evaluate_subexp_standard): Likewise.
474         * findvar.c (value_of_register): Likewise.
475         (value_of_register_lazy): Likewise.
476         (address_from_register): Likewise.
477         * frame.c (get_frame_register_bytes): Likewise.
478         * gdbarch-selftests.c (register_to_value_test): Likewise.
479         * h8300-tdep.c (h8300_register_type): Likewise.
480         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
481         (i386_svr4_reg_to_regnum): Likewise.
482         * infcmd.c (default_print_registers_info): Likewise.
483         (registers_info): Likewise.
484         (print_vector_info): Likewise.
485         (default_print_float_info): Likewise.
486         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
487         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
488         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
489         (mi_cmd_data_list_changed_registers): Likewise.
490         (mi_cmd_data_list_register_values): Likewise.
491         (mi_cmd_data_write_register_values): Likewise.
492         (mi_cmd_trace_frame_collected): Likewise.
493         * mips-tdep.c (print_gp_register_row): Likewise.
494         (mips_print_registers_info): Likewise.
495         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
496         * regcache.c (init_regcache_descr): Likewise.
497         (register_size): Likewise.
498         (register_dump::dump): Likewise.
499         (cooked_read_test): Likewise.
500         (cooked_write_test): Likewise.
501         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
502         (rs6000_gdbarch_init): Likewise.
503         * stabsread.c (stab_reg_to_regnum): Likewise.
504         * stack.c (info_frame_command): Likewise.
505         * target-descriptions.c (tdesc_register_name): Likewise.
506         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
507         * tui/tui-regs.c (tui_show_register_group): Likewise.
508         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
509         (user_reg_map_regnum_to_name): Likewise.
510         (value_of_user_reg): Likewise.
511         (maintenance_print_user_registers): Likewise.
512         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
513         (xtensa_register_name): Likewise.
514         (xtensa_register_type): Likewise.
515         (xtensa_reg_to_regnum): Likewise.
516         (xtensa_pseudo_register_read): Likewise.
517         (xtensa_pseudo_register_write): Likewise.
518
519 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
520
521         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
522         correctly-sized buffer with raw_read.
523         (amd64_pseudo_register_write): Use correctly-sized buffer for
524         raw_read/raw_write.
525
526 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
527
528         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
529         in add_prefix_cmd of set print type.
530
531 2018-10-19  Tom Tromey  <tom@tromey.com>
532
533         PR tui/18388:
534         * NEWS: Mention tabset deprecation.
535         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
536         (update_tab_width): New function.
537         (tui_set_tab_width, tui_show_tab_width): New functions.
538         (tui_set_tab_width_command): Use update_tab_width.
539         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
540         Add new "set tui tab-width" command.
541         * tui/tui-source.c (tui_set_source_content): Update.
542         * tui/tui-disasm.c (tui_set_disassem_content): Update.
543         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
544         Don't declare.
545         (tui_tab_width): Declare.
546         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
547         (tui_set_default_tab_len): Remove.
548
549 2018-10-19  Tom Tromey  <tom@tromey.com>
550
551         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
552         (key_is_backspace, tui_getc): Don't declare.
553         * tui/tui-io.c (key_is_start_sequence): Now static.
554         (key_is_end_sequence, key_is_backspace): Remove.
555         (tui_getc): Now static.
556
557 2018-10-19  Tom Tromey  <tom@tromey.com>
558
559         * symfile.c (reread_symbols): Clear "static_links".
560
561 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
562
563         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
564         define.
565         (aarch64_linux_sigframe_init): Extra boundary checks.
566
567 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
568
569         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
570         the possibly non-existent tdesc type 'vec128', but the type of raw
571         register v16 instead.
572
573 2018-10-19  Gary Benson <gbenson@redhat.com>
574
575         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
576
577 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
578
579         PR cli/23785
580         * cli/cli-dump.c (restore_binary_file): Check if "file" is
581         NULL.
582
583 2018-10-17  Paul Koning  <paul_koning@dell.com>
584
585         * charset.c (convert_between_encodings): Fix unsigned overflow.
586
587 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
588
589         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
590         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
591         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
592         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
593         New functions.
594         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
595         and fbsd_info_proc_mappings_header.
596         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
597         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
598         New.
599
600 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
601
602         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
603         Solaris Maintainer.
604
605 2018-10-15  Tom Tromey  <tom@tromey.com>
606
607         * tui/tui.c (strcat_to_buf): Remove casts.
608         * tui/tui-winsource.c (tui_show_source_line)
609         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
610         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
611         * tui/tui-windata.c (tui_first_data_item_displayed)
612         (tui_delete_data_content_windows, tui_erase_data_content)
613         (tui_display_all_data, tui_display_data_from)
614         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
615         * tui/tui-win.c (tui_set_win_height)
616         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
617         casts.
618         * tui/tui-win.c (tui_resize_all): Remove casts.
619         (tui_scroll_backward_command, tui_set_focus)
620         (tui_set_tab_width_command): Likewise.
621         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
622         * tui/tui-regs.c (tui_show_register_group): Remove cast.
623         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
624         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
625         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
626         Remove casts.
627
628 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
629
630         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
631         AArch64/ARM maintainer.
632
633 2018-10-11  Gary Benson <gbenson@redhat.com>
634
635         * interps.h (interp::m_name): Make private and mutable.
636         * interps.c (interp::~interp): Free m_name.
637
638 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
639             Simon Marchi <simark@simark.ca>
640
641         * README (`configure' options): Add documentation for new
642         "--enable-unit-tests" option.
643         * acinclude.m4: Include "selftest.m4".
644         * configure: Regenerate.
645         * configure.ac: Use "GDB_AC_SELFTEST".
646         * maint.c (maintenance_selftest): Update message informing
647         that selftests have been disabled.
648         (maintenance_info_selftests): Likewise.
649         * selftest.m4: New file.
650
651 2018-10-10  Gary Benson <gbenson@redhat.com>
652
653         * remote.c (remote_target::remote_send_printf): Add
654         missing va_end found by Coverity.
655
656 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
657
658         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
659
660 2018-10-09  Tom Tromey  <tom@tromey.com>
661
662         * configure: Rebuild.
663         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
664         * NEWS: Update --enable-ubsan documentation.
665
666 2018-10-09  Gary Benson <gbenson@redhat.com>
667
668         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
669         found by Coverity.
670
671 2018-10-08  Tom Tromey  <tom@tromey.com>
672
673         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
674         variable.
675         (riscv_fbsd_init_abi): Likewise.
676
677 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
678         * valops.c (value_struct_elt_for_reference): Rename local variable
679         to work around the shadowing a previous local warning.
680
681 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
682
683         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
684         * NEWS: Mention new FreeBSD/riscv native configuration.
685         * configure.host: Add riscv*-*-freebsd*.
686         * configure.nat: Likewise.
687         * riscv-fbsd-nat.c: New file.
688
689 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
690
691         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
692         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
693         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
694         * NEWS: Mention new FreeBSD/riscv target.
695         * configure.tgt: Add riscv*-*-freebsd*.
696         * riscv-fbsd-tdep.c: New file.
697         * riscv-fbsd-tdep.h: New file.
698
699 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
700
701         * regcache.h (struct regcache_map_entry): Note that this type can
702         be used with traditional frame caches.
703         * trad-frame.c (trad_frame_set_reg_regmap): New.
704         * trad-frame.h (trad_frame_set_reg_regmap): New.
705
706 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
707
708         PR c++/16841
709         * valops.c (get_virtual_base_offset): New function.
710         (value_struct_elt_for_reference): Use it to get virtual base offset
711         and add it in calculating class member address.
712
713 2018-10-08   John Darrington <john@darrington.wattle.id.au>
714
715     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
716       (check_producer): Check if the producer is codewarrior.
717       (producer_is_codewarrior): New function.
718       (lnp_state_machine::record_line): Ignore is_stmt flag for records
719        produced by codewarrior.
720       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
721
722 2018-10-06  Tom Tromey  <tom@tromey.com>
723
724         PR python/19399:
725         * python/py-inferior.c: Add "architecture" entry.
726         (infpy_architecture): New function.
727
728 2018-10-06  Tom Tromey  <tom@tromey.com>
729
730         PR python/21765:
731         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
732         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
733         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
734         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
735
736 2018-10-06  Tom Tromey  <tom@tromey.com>
737
738         PR build/17077:
739         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
740         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
741         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
742         #include.
743
744 2018-10-06  Tom Tromey  <tom@tromey.com>
745
746         * python/py-breakpoint.c (bppy_get_location): Handle a
747         bp_breakpoint without a location.
748
749 2018-10-06  Tom Tromey  <tom@tromey.com>
750
751         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
752         (_RegEx): Reformat help text.
753         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
754         (AnyCallerIs, AnyCallerMatches): Reformat help text.
755         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
756         text.
757         * python/lib/gdb/command/xmethods.py (InfoXMethod)
758         (EnableXMethod, DisableXMethod): Remove help indentation.
759         Capitalize meta-syntactic variables.
760         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
761         (EnableUnwinder, DisableUnwinder): Remove help indentation.
762         Capitalize meta-syntactic variables.
763         * python/lib/gdb/command/explore.py (ExploreCommand)
764         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
765         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
766         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
767         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
768         Remove help indentation.
769         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
770         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
771         (DisableFrameFilter, SetFrameFilterPriority)
772         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
773
774 2018-10-06  Tom Tromey  <tom@tromey.com>
775
776         PR tui/28819:
777         * tui/tui-io.c (gdb_wgetch): New function.
778         (tui_mld_getc, tui_getc): Use it.
779
780 2018-10-05  Tom Tromey  <tom@tromey.com>
781
782         * sol-thread.c (sol_thread_target::wait): Rename inner
783         "save_ptid".
784
785 2018-10-04  Tom Tromey  <tom@tromey.com>
786
787         * configure: Rebuild.
788         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
789
790 2018-10-04  Tom Tromey  <tom@tromey.com>
791
792         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
793         declaration of "block".
794
795 2018-10-04  Tom Tromey  <tom@tromey.com>
796
797         * common/filestuff.c (fdwalk): Remove inner declaration of
798         "result".
799
800 2018-10-04  Tom Tromey  <tom@tromey.com>
801
802         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
803         "structs_addr" and hoist declaration.
804
805 2018-10-04  Tom Tromey  <tom@tromey.com>
806
807         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
808         variable "size".
809
810 2018-10-04  Tom Tromey  <tom@tromey.com>
811
812         * mdebugread.c (parse_partial_symbols): Use std::string.
813
814 2018-10-04  Tom Tromey  <tom@tromey.com>
815
816         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
817         * p-valprint.c (pascal_val_print): Split inner "i" variable.
818         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
819         header.
820         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
821         more inner scope.
822         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
823         * varobj.c (varobj_update): Rename inner "newobj",
824         "type_changed".
825         * valprint.c (generic_emit_char): Rename inner "buf".
826         * valops.c (find_overload_match): Rename inner "temp".
827         (value_struct_elt_for_reference): Declare "v" in more inner
828         scope.
829         * v850-tdep.c (v850_push_dummy_call): Rename "len".
830         * unittests/array-view-selftests.c (run_tests): Rename inner
831         "vec".
832         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
833         header.
834         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
835         "tsv" in more inner scope.
836         (print_one_static_tracepoint_marker): Rename inner
837         "tuple_emitter".
838         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
839         (tic6x_push_dummy_call): Don't redeclare "addr".
840         * target-float.c: Declare "dto" lower.
841         * symtab.c (lookup_local_symbol): Rename inner "sym".
842         (find_pc_sect_line): Rename inner "pc".
843         * stack.c (print_frame): Don't redeclare "gdbarch".
844         (return_command): Rename inner "gdbarch".
845         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
846         "sp".
847         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
848         header.
849         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
850         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
851         scope.
852         * remote.c (remote_target::update_thread_list): Don't redeclare
853         "tp".
854         (remote_target::process_initial_stop_replies): Rename inner
855         "thread".
856         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
857         (remote_target::wait_as): Don't redeclare "stop_reply".
858         (remote_target::get_thread_local_address): Rename inner
859         "result".
860         (remote_target::get_tib_address): Likewise.
861
862         * regcache.c (cooked_read_test): Rename "regnum".
863         * record-btrace.c (cmd_record_btrace_start): Rename inner
864         "exception".
865         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
866         loop header.
867         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
868         header.
869         (ppu2spu_sniffer): Rename inner "buf".
870         * parse.c (operator_check_standard): Rename inner "type",
871         "objfile".
872         * p-valprint.c (pascal_val_print): Introduce new scope for
873         "low_bound", "high_bound".
874         * p-exp.y (yylex): Declare "i" in loop header.
875         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
876         Lower declaration of "s".
877         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
878         header.
879         (nios2_push_dummy_call): Rename "len".
880         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
881         "buf".
882         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
883         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
884         (linux_xfer_osdata_modules): Likewise.
885         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
886         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
887         (mips_o64_push_dummy_call): Likewise.
888         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
889         "op".
890         * mi/mi-main.c (list_available_thread_groups): Rename inner
891         "tuple_emitter".
892         (mi_cmd_data_read_memory): Rename inner "opts".
893         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
894         "tuple_emitter".
895         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
896         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
897         more inner scope.
898         (parse_partial_symbols): Rename inner "pst", "p", "name"
899         * main.c (captured_main_1): Rename inner "i"s.
900         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
901         "oso2".
902         * linux-tdep.c (linux_info_proc): Rename inner "filename".
903         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
904         * infrun.c (handle_no_resumed): Don't redeclare "thread".
905         (handle_signal_stop): Rename inner "gdbarch".
906         (handle_command): Declare "signum" in loop header.
907         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
908         "status".
909         (examine_prologue): Rename inner "sol" and "sof".
910         (ia64_extract_return_value): Rename inner "val".  Declare another
911         "val" in a more inner scope.
912         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
913         inner scope.
914         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
915         "except".
916         * findvar.c (default_read_var_value): Don't redeclare "addr".
917         * f-exp.y (yylex): Declare "i" in loop header.
918         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
919         Rename inner "type", "expect_type".
920         (evaluate_subexp_for_sizeof): Rename inner "pc".
921         * elfread.c (elf_symfile_read): Rename inner "abfd".
922         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
923         "bytes_read".
924         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
925         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
926         (dwarf_decode_line_header): Rename inner "lh".
927         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
928         "offset".  Declare "i" in loop header.
929         (disassemble_dwarf_expression): Rename inner "addr_size".
930         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
931         inner "result".
932         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
933         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
934         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
935         "inner_list_emitter".
936         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
937         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
938         declaration in a block.
939         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
940         * cp-valprint.c (cp_print_value_fields): Don't redeclare
941         "obstack_final_size".
942         * cp-support.c (inspect_type): Declare "i" in loop header.
943         * compile/compile.c (compile_instance::insert_symbol_error):
944         Rename inner "e".
945         * common/agent.c (agent_run_command): Remove inner "ret"
946         declaration.
947         * coffread.c (coff_symfile_read): Rename inner "name".
948         (coff_symfile_read): Rename inner "abfd".
949         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
950         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
951         "high".
952         * c-exp.y (lex_one_token): Move "len" declaration lower.
953         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
954         "gdbarch".
955         (create_exception_master_breakpoint): Likewise.  Don't redeclare
956         "b".
957         (watch_command_1): Declare "mark" later.
958         (clear_command): Don't shadow "a" or "b".
959         (delete_command): Rename inner "b".
960         (delete_trace_command): Likewise.
961         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
962         "op".
963         (arm_gdbarch_init): Remove inner "e_flags".
964         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
965         "offset" in inner blocks.
966
967 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
968
969         * dwarf-index-write.c (file_write): Don't write if the vector is
970         empty.
971
972 2018-10-05  Tom de Vries  <tdevries@suse.de>
973
974         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
975         PyArg_ParseTuple call.
976
977 2018-10-05  Tom de Vries  <tdevries@suse.de>
978
979         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
980         PyArg_ParseTuple call.
981
982 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
983
984         * psymtab.c (recursively_search_psymtabs): Reformat parameters
985         to avoid exceeding 80 characters per line limit.
986
987 2018-10-04  Tom Tromey  <tom@tromey.com>
988
989         * symfile.c (syms_from_objfile_1, finish_new_objfile)
990         (reread_symbols): Update.
991         * complaints.h (clear_complaints): Remove argument.
992         * complaints.c (enum complaint_series): Remove.
993         (series): Remove global.
994         (complaint_internal): Update.
995         (clear_complaints): Remove argument.
996
997 2018-10-04  Tom Tromey  <tom@tromey.com>
998
999         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1000         debugging symbols" message if there is a separate debug objfile.
1001
1002 2018-10-04  Tom Tromey  <tom@tromey.com>
1003
1004         PR cli/19551:
1005         * symfile.c (symbol_file_add_with_addrs): Update output.
1006         * psymtab.c (require_partial_symbols): Update output.
1007
1008 2018-10-04  Tom Tromey  <tom@tromey.com>
1009
1010         PR cli/22234:
1011         * complaints.c: Emit \n.
1012
1013 2018-10-04  Tom Tromey  <tom@tromey.com>
1014
1015         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1016         (separate_debug_file_exists, find_separate_debug_file)
1017         (add_symbol_file_command, reread_symbols, allocate_symtab)
1018         (allocate_compunit_symtab): Use filtered printing, not
1019         unfiltered.
1020         * psymtab.c (require_partial_symbols, dump_psymtab)
1021         (allocate_psymtab): Use filtered printing, not unfiltered.
1022
1023 2018-10-04  Tom Tromey  <tom@tromey.com>
1024
1025         * complaints.c (complaint_internal): Correctly check complaint
1026         count.
1027
1028 2018-10-04  Tom Tromey  <tom@tromey.com>
1029
1030         * complaints.h (struct complaints): Remove declaration.
1031         * complaints.c (clear_complaints): Remove an unused variable.
1032
1033 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1034
1035         * MAINTAINERS (Write After Approval): Add self.
1036
1037 2018-10-03  Tom Tromey  <tom@tromey.com>
1038
1039         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1040         "buffer_contents".
1041         * coffread.c (coff_symtab_read): Initialize "newobj".
1042
1043 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1044
1045         * dwarf2read.c (read_func_scope): Remove struct keyword in
1046         range-based for.
1047
1048 2018-10-03  Tom Tromey  <tom@tromey.com>
1049
1050         * README: Mention --enable-ubsan.
1051         * NEWS: Mention --enable-ubsan.
1052         * acinclude.m4: Include sanitize.m4.
1053         * configure: Rebuild.
1054         * configure.ac: Call AM_GDB_UBSAN.
1055         * sanitize.m4: New file.
1056
1057 2018-10-03  Tom Tromey  <tom@tromey.com>
1058
1059         * expression.h (enum exp_opcode): Use uint8_t as base type.
1060         * expprint.c (op_name): Handle invalid opcodes.
1061
1062 2018-10-03  Tom Tromey  <tom@tromey.com>
1063
1064         * parse.c (prefixify_expression): Add assert.
1065         (parse_exp_in_context_1): Throw exception if the expression is
1066         empty.
1067
1068 2018-10-03  Tom Tromey  <tom@tromey.com>
1069
1070         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1071
1072 2018-10-03  Tom Tromey  <tom@tromey.com>
1073
1074         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1075
1076 2018-10-03  Tom Tromey  <tom@tromey.com>
1077
1078         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1079         unsigned.
1080
1081 2018-10-03  Tom Tromey  <tom@tromey.com>
1082
1083         * findvar.c (extract_integer): Do work in an unsigned type.
1084
1085 2018-10-03  Tom Tromey  <tom@tromey.com>
1086
1087         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1088         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1089         base type.
1090         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1091         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1092         type.
1093         * c-lang.h (enum c_string_type_values): Use unsigned as base
1094         type.
1095         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1096
1097 2018-10-03  Tom Tromey  <tom@tromey.com>
1098
1099         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1100         <~dwarf2_frame_state_reg_info>: Update.
1101         <dwarf2_frame_state_reg_info>: Update.
1102         <alloc_regs>: Add assertion.  Update.
1103         <reg>: Now a std::vector.
1104         <num_regs>: Remove.
1105         <swap>: Update.
1106         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1107         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1108
1109 2018-10-03  Tom Tromey  <tom@tromey.com>
1110
1111         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1112
1113 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1114
1115         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1116
1117 2018-10-02  Tom Tromey  <tom@tromey.com>
1118
1119         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1120
1121 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1122
1123         * NEWS: Mention changed commands.
1124         * ser-uds.c: New file.
1125         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1126         * configure: Regenerate.
1127         * Makefile.in: Add new file.
1128         * serial.c (serial_open): Check if filename is a socket
1129           and lookup the appropriate interface accordingly.
1130
1131 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1132
1133         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1134         define.
1135         (AARCH64_EXTRA_MAGIC): Likewise.
1136         (AARCH64_FPSIMD_MAGIC): Likewise.
1137         (AARCH64_SVE_MAGIC): Likewise.
1138         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1139         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1140         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1141         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1142         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1143         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1144         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1145         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1146         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1147         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1148         (read_aarch64_ctx): Add function.
1149         (aarch64_linux_sigframe_init): Detect FP registers.
1150
1151 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1152
1153         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1154         (AARCH64_D0_REGNUM): Likewise.
1155         (AARCH64_S0_REGNUM): Likewise.
1156         (AARCH64_H0_REGNUM): Likewise.
1157         (AARCH64_B0_REGNUM): Likewise.
1158         (AARCH64_SVE_V0_REGNUM): Likewise.
1159         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1160         (AARCH64_D0_REGNUM): Likewise.
1161         (AARCH64_S0_REGNUM): Likewise.
1162         (AARCH64_H0_REGNUM): Likewise.
1163         (AARCH64_B0_REGNUM): Likewise.
1164         (AARCH64_SVE_V0_REGNUM): Likewise.
1165
1166 2018-10-01  Gary Benson <gbenson@redhat.com>
1167
1168         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1169         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1170         prfpregset_t instead of gdb_prfpregset_t.
1171         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1172         * configure, config.in: Rebuild.
1173
1174 2018-10-01  Gary Benson <gbenson@redhat.com>
1175
1176         * common/gdb_proc_service.h: New file, factored out from...
1177         * gdb_proc_service.h: Moved common code to the above file.
1178         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1179
1180 2018-10-01  Gary Benson <gbenson@redhat.com>
1181
1182         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1183         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1184
1185 2018-10-01  Gary Benson <gbenson@redhat.com>
1186
1187         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1188         (AC_CHECK_HEADERS): Check for linux/elf.h.
1189         * configure, config.in: Rebuild.
1190         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1191         doesn't define elf_fpregset_t.
1192
1193 2018-10-01  Gary Benson <gbenson@redhat.com>
1194
1195         * gdb_proc_service.h: Whitespace change.
1196
1197 2018-10-01  Tom Tromey  <tom@tromey.com>
1198
1199         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1200         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1201         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1202
1203 2018-10-01  Tom Tromey  <tom@tromey.com>
1204
1205         * README: Minor change.
1206
1207 2018-09-30  Pedro Alves  <palves@redhat.com>
1208
1209         * darwin-nat-info.c (darwin_debug_regions_recurse)
1210         (info_mach_exceptions_command): Remove unused local variables.
1211         * darwin-nat.c (darwin_decode_notify_message)
1212         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1213         (darwin_stop_inferior, darwin_setup_exceptions)
1214         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1215         (darwin_nat_target::attach, darwin_nat_target::detach)
1216         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1217         local variables.
1218         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1219         variables.
1220
1221 2018-09-29  Tom Tromey  <tom@tromey.com>
1222
1223         * README: Remove some leftover text.
1224
1225 2018-09-29  Tom Tromey  <tom@tromey.com>
1226
1227         * PROBLEMS: Rewrite.
1228         * README: Update.
1229
1230 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1231
1232         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1233         case with explicit breakpoint kind.
1234         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1235         'additional_info' and related logic.
1236         (riscv_debug_breakpoints): New variable.
1237         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1238         instruction to determine the breakpoint kind.
1239         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1240         flag.  Update description of 'set/show riscv
1241         use-compressed-breakpoints' flag.
1242
1243 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1244
1245         (NEWS): Mention changes to frame related commands.
1246         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1247         (add_prefix_cmd_suppress_notification): New function.
1248         (add_com_suppress_notification): Call
1249         add_cmd_suppress_notification.
1250         * command.h (add_cmd_suppress_notification): Declare.
1251         (add_prefix_cmd_suppress_notification): Declare.
1252         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1253         (parse_frame_specification): Moved from stack.c, with
1254         simplification to handle a single argument.
1255         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1256         switch to the selected frame.  Add a header comment.
1257         * stack.c: Remove 'safe-ctype.h' include.
1258         (find_frame_for_function): Add declaration.
1259         (find_frame_for_address): New function.
1260         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1261         (frame_selection_by_function_completer): New function.
1262         (info_frame_command): Rename to...
1263         (info_frame_command_core): ...this, and update parameter types.
1264         (select_frame_command): Rename to...
1265         (select_frame_command_core): ...this, and update parameter types.
1266         (frame_command): Rename to...
1267         (frame_command_core): ...this, and update parameter types.
1268         (class frame_command_helper): New class to wrap implementations of
1269         frame related sub-commands.
1270         (frame_apply_cmd_list): New static global.
1271         (frame_cmd_list): Make static.
1272         (select_frame_cmd_list): New global for sub-commands.
1273         (info_frame_cmd_list): New global for sub-commands.
1274         (_initialize_stack): Register sub-commands for 'frame',
1275         'select-frame', and 'info frame'.  Update 'frame apply' commands
1276         to use frame_apply_cmd_list.  Move function local static
1277         frame_apply_list to file static frame_apply_cmd_list for
1278         consistency.
1279         * stack.h (select_frame_command): Delete declarationn.
1280         (select_frame_for_mi): Declare new function.
1281
1282 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1283
1284         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1285         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1286         and NOP.
1287
1288 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1289
1290         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1291
1292 2018-09-26  Tom Tromey  <tom@tromey.com>
1293
1294         * valops.c (auto_abandon): Remove dead code.
1295
1296 2018-09-26  Tom Tromey  <tom@tromey.com>
1297
1298         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1299
1300 2018-09-24  Tom Tromey  <tom@tromey.com>
1301
1302         * common/pathstuff.c (get_standard_cache_dir): Make
1303         "xdg_cache_home" and "home" const.
1304         * top.c (init_history): Make "tmpenv" const.
1305         * main.c (get_init_files): Make "homedir" const.
1306
1307 2018-09-23  Tom Tromey  <tom@tromey.com>
1308
1309         PR python/18852:
1310         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1311
1312 2018-09-23  Tom Tromey  <tom@tromey.com>
1313
1314         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1315         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1316         * python/python-internal.h (gdbpy_handle_exception): Declare.
1317         * python/py-utils.c (gdbpy_handle_exception): New function.
1318
1319 2018-09-23  Tom Tromey  <tom@tromey.com>
1320
1321         PR python/17284:
1322         * python/py-type.c (typy_template_argument): Check for negative
1323         argument number.
1324
1325 2018-09-23  Tom Tromey  <tom@tromey.com>
1326
1327         PR python/14062:
1328         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1329
1330 2018-09-23  Tom Tromey  <tom@tromey.com>
1331
1332         PR python/18170:
1333         * python/py-value.c (valpy_int): Allow conversion from pointer
1334         type.
1335
1336 2018-09-23  Tom Tromey  <tom@tromey.com>
1337
1338         PR python/20126:
1339         * python/py-value.c (valpy_int): Respect type sign.
1340
1341 2018-09-23  Tom Tromey  <tom@tromey.com>
1342
1343         PR python/18352;
1344         * python/py-value.c (valpy_float): Allow conversions from int or
1345         char.
1346         (valpy_int, valpy_long): Allow conversions from float.
1347
1348 2018-09-23  Tom Tromey  <tom@tromey.com>
1349
1350         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1351         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1352
1353 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1354
1355         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1356         __sighndlr.
1357         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1358
1359 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1360
1361         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1362         target_terminal::ours().
1363
1364 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1365
1366         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1367         of vl to ULONGEST.
1368
1369 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1370
1371         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1372         redundant condition.
1373
1374 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1375
1376         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1377
1378         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1379         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1380         * sol-thread.c (ps_pdmodel): Don't guard definition.
1381
1382         * procfs.c: Fix formatting.
1383
1384         * procfs.c (sysset_t_alloc): Remove.
1385         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1386         (procfs_debug_inferior): Likewise.
1387         (procfs_set_exec_trap): Likewise.
1388         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1389         (proc_set_traced_sysexit): Likewise.
1390
1391         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1392         (dead_procinfo): Likewise.
1393         (proc_warn): Likewise.
1394         (proc_error): Likewise.
1395         (proc_get_LDT_entry): Likewise.
1396         (do_attach): Likewise.
1397         (procfs_target::pid_to_str): Likewise.
1398         (iterate_over_mappings): Likewise.
1399
1400         * procfs.c (create_procinfo): Fix ARI warning.
1401         (proc_get_status): Likewise.
1402         (proc_stop_process): Likewise.
1403         (proc_run_process): Likewise.
1404         (proc_kill): Likewise.
1405         (proc_get_LDT_entry): Likewise.
1406         (procfs_find_LDT_entry): Likewise.
1407         (proc_update_threads): Likewise.
1408         (proc_iterate_over_threads): Likewise.
1409         (do_attach): Likewise.
1410         (procfs_xfer_memory): Likewise.
1411         (invalidate_cache): Likewise.
1412         (procfs_target::resume): Likewise.
1413         (procfs_init_inferior): Likewise.
1414         (procfs_set_exec_trap): Likewise.
1415         (procfs_target::thread_alive): Likewise.
1416         (procfs_target::pid_to_exec_file): Likewise.
1417         (iterate_over_mappings): Likewise.
1418         (procfs_target::make_corefile_notes): Likewise.
1419         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1420
1421         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1422         (procfs_find_LDT_entry): Likewise.
1423         * sol-thread.c (ps_lgetLDT): Likewise.
1424
1425 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1426
1427         PR tdep/17903
1428         * procfs.c (procfs_target): Declare pid_to_exec_file.
1429         (procfs_target::pid_to_exec_file): New.
1430
1431 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1432
1433         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1434         renaming.
1435         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1436         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1437
1438 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1439
1440         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1441         (supply_fpregset, fill_fpregset): Move ...
1442         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1443         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1444         Remove references to ioctl-based procfs.
1445         Include <sys/reg.h>.
1446         Remove PR_MODEL_NATIVE guards.
1447         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1448         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1449
1450 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1451
1452         PR gdb/20981:
1453         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1454         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1455         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1456
1457 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1458
1459         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1460         (fbsd_print_sockaddr_in6): Likewise.
1461
1462 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1463             Chris January  <chris.january@arm.com>
1464
1465         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1466         (evaluate_subexp_standard): Return a dummy type when
1467         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1468         OP_F77_UNDETERMINED_ARGLIST case.
1469         * expression.h (enum noside): Update comment.
1470
1471 2018-09-19  George Vasick <george.vasick@oracle.com>
1472
1473         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1474
1475 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1476             April Chin <april.chin@oracle.com>
1477             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1478
1479         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1480         uint_t lwpid_t.
1481         (create_procinfo): Print pids in /proc without leading zeros.
1482
1483 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1484
1485         * nios2-tdep.c (nios2_gcc_target_options): New.
1486         (nios2_gdb_arch_init): Install new hook.
1487
1488 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1489
1490         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1491         New file.
1492         * update-gnulib.sh: Apply patch.
1493         * configure: Re-generate.
1494
1495 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1496
1497         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1498         description.  Make "info proc" command descriptions more
1499         consistent.
1500
1501 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1502
1503         * NEWS: Mention 'info proc files' command.
1504
1505 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1506
1507         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1508         descriptors for IP_FILES and IP_ALL.
1509
1510 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1511
1512         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1513         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1514         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1515         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1516         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1517         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1518         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1519         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1520         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1521         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1522         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1523         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1524         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1525         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1526         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1527         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1528         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1529         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1530         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1531         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1532         (struct fbsd_sockaddr_un): New types.
1533         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1534         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1535         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1536         (fbsd_core_info_proc_files): New functions.
1537         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1538         IP_ALL.
1539         * fbsd-tdep.h (fbsd_info_proc_files_header)
1540         (fbsd_info_proc_files_entry): New.
1541
1542 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1543
1544         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1545         * infcmd.c (info_proc_cmd_files): New function.
1546         (_initialize_infcmd): Register 'info proc files' command.
1547
1548 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1549
1550         * gnulib/aclocal-m4-deps.mk: Re-generate.
1551         * gnulib/aclocal.m4: Re-generate.
1552         * gnulib/config.in: Re-generate.
1553         * gnulib/configure: Re-generate.
1554         * gnulib/import/Makefile.am: Re-generate.
1555         * gnulib/import/Makefile.in: Re-generate.
1556         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1557         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1558         * gnulib/import/arpa_inet.in.h: New file.
1559         * gnulib/import/inet_ntop.c: New file.
1560         * gnulib/import/m4/arpa_inet_h.m4: New file.
1561         * gnulib/import/m4/inet_ntop.m4: New file.
1562         * gnulib/import/m4/netinet_in_h.m4: New file.
1563         * gnulib/import/m4/socklen.m4: New file.
1564         * gnulib/import/m4/sockpfaf.m4: New file.
1565         * gnulib/import/m4/stdalign.m4: New file.
1566         * gnulib/import/m4/sys_uio_h.m4: New file.
1567         * gnulib/import/netinet_in.in.h: New file.
1568         * gnulib/import/stdalign.in.h: New file.
1569         * gnulib/import/sys_socket.c: New file.
1570         * gnulib/import/sys_socket.in.h: New file.
1571         * gnulib/import/sys_uio.in.h: New file.
1572         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1573         module.
1574
1575 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1576
1577         * gnulib/aclocal-m4-deps.mk: New file.
1578         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1579         deterministically.
1580
1581 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1582
1583         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1584         KVE_PATH.
1585
1586 2018-09-18  Tom Tromey  <tom@tromey.com>
1587
1588         * compile/compile-object-load.c (struct
1589         link_hash_table_cleanup_data): Add constructor and destructor.
1590         Use DISABLE_COPY_AND_ASSIGN.
1591         (~link_hash_table_cleanup_data): Rename from
1592         link_hash_table_free.  Now a destructor.
1593         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1594
1595 2018-09-18  Tom Tromey  <tom@tromey.com>
1596
1597         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1598         * compile/compile-object-load.c (struct munmap_list): Move to
1599         header file.
1600         (munmap_list::add): Rename from munmap_list_add; rewrite.
1601         (munmap_list::~munmap_list): Rename from munmap_list_free.
1602         (munmap_listp_free_cleanup): Remove.
1603         (compile_object_load): Update.
1604         * compile/compile-object-load.h (struct munmap_list): Move from
1605         compile-object-load.c.  Rewrite.
1606
1607 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1608
1609         * aarch64-tdep.c (pass_in_v): Use register size.
1610         (aarch64_extract_return_value): Likewise.
1611         (aarch64_store_return_value): Likewise.
1612
1613 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1614
1615         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1616         rlim_t.
1617
1618 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1619
1620         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1621         Fix short help line.
1622
1623 2018-09-17  Tom Tromey  <tom@tromey.com>
1624
1625         PR python/20445:
1626         * configure: Rebuild.
1627         * configure.ac: Conditionally use -DNDEBUG for Python.
1628
1629 2018-09-17  Tom Tromey  <tom@tromey.com>
1630
1631         * configure: Rebuild.
1632         * configure.ac: Use gmp as a library dependency when checking for
1633         mpfr.
1634
1635 2018-09-17  Pedro Alves  <palves@redhat.com>
1636
1637         * python/py-inferior.c (find_inferior_object): Delete.
1638
1639 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1640
1641         * compile/compile-cplus-types.c
1642         (compile_cplus_instance::enter_scope): Don't use new_scope after
1643         std::move.
1644
1645 2018-09-17  Tom Tromey  <tom@tromey.com>
1646
1647         * common/pathstuff.c (get_standard_cache_dir): Use
1648         ~/Library/Caches on macOS.
1649         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1650
1651 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1652
1653         PR python/23669
1654         * breakpoint.c (commands_cmd_element): New.
1655         (_initialize_breakpoint): Assign commands_cmd_element.
1656         * breakpoint.h (commands_cmd_element): New.
1657         * cli/cli-script.c (while_cmd_element, if_command,
1658         define_cmd_element): New.
1659         (command_name_equals): Remove.
1660         (process_next_line): Compare commands by pointer, not by name.
1661         (_initialize_cli_script): Assign the various cmd_list_element
1662         variables.
1663         * compile/compile.c (compile_cmd_element): New.
1664         (_initialize_compile): Assign compile_cmd_element.
1665         * compile/compile.h (compile_cmd_element): New.
1666         * guile/guile.c (guile_cmd_element): New.
1667         (install_gdb_commands): Assign guile_cmd_element.
1668         * guile/guile.h (guile_cmd_element): New.
1669         * python/python.c (python_cmd_element): New.
1670         (_initialize_python): Assign python_cmd_element.
1671         * python/python.h (python_cmd_element): New.
1672         * tracepoint.c (while_stepping_cmd_element): New.
1673         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1674         * tracepoint.h (while_stepping_cmd_element): New.
1675
1676 2018-09-17  Tom Tromey  <tom@tromey.com>
1677
1678         * infrun.c (save_infcall_suspend_state): Return
1679         infcall_suspend_state_up.
1680         (save_infcall_control_state): Return infcall_control_state_up.
1681         * inferior.h (save_infcall_suspend_state)
1682         (save_infcall_control_state): Declare later.  Return unique
1683         pointers.
1684
1685 2018-09-17  Tom Tromey  <tom@tromey.com>
1686
1687         * infrun.c (struct stop_context): Declare constructor,
1688         destructor, "changed" method.
1689         (stop_context::stop_context): Rename from save_stop_context.
1690         (stop_context::~stop_context): Rename from
1691         release_stop_context_cleanup.
1692         (normal_stop): Update.
1693         (stop_context::changed): Rename from stop_context_changed.  Return
1694         bool.
1695
1696 2018-09-17  Tom Tromey  <tom@tromey.com>
1697
1698         * inferior.h (struct infcall_suspend_state_deleter): New.
1699         (infcall_suspend_state_up): New typedef.
1700         (struct infcall_control_state_deleter): New.
1701         (infcall_control_state_up): New typedef.
1702         (make_cleanup_restore_infcall_suspend_state)
1703         (make_cleanup_restore_infcall_control_state): Don't declare.
1704         * infcall.c (call_function_by_hand_dummy): Update.
1705         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1706         (make_cleanup_restore_infcall_suspend_state): Remove.
1707         (do_restore_infcall_control_state_cleanup)
1708         (make_cleanup_restore_infcall_control_state): Remove.
1709
1710 2018-09-17  Tom Tromey  <tom@tromey.com>
1711
1712         * gdbthread.h (struct thread_control_state): Add initializer.
1713         (class thread_info) <control>: Remove initializer.
1714         * inferior.h (struct inferior_control_state): Add initializer.
1715         (class inferior) <control>: Remove initializer.
1716         (exit_inferior_1): Update.
1717         * infrun.c (struct infcall_control_state): Add constructors.
1718         (save_infcall_control_state): Use new.
1719         (restore_infcall_control_state, discard_infcall_control_state):
1720         Use delete.
1721
1722 2018-09-17  Tom Tromey  <tom@tromey.com>
1723
1724         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1725         unique_ptr.
1726         <siginfo_data>: Now a unique_xmalloc_ptr.
1727         (save_infcall_suspend_state, restore_infcall_suspend_state)
1728         (discard_infcall_suspend_state)
1729         (get_infcall_suspend_state_regcache): Update.
1730
1731 2018-09-17  Tom Tromey  <tom@tromey.com>
1732
1733         * gdbthread.h (struct thread_suspend_state): Add initializers.
1734         (class thread_info) <suspend>: Remove initializer.
1735         * infrun.c (struct infcall_suspend_state): Add initializers.
1736         (save_infcall_suspend_state): Use new.
1737         (discard_infcall_suspend_state): Use delete.
1738
1739 2018-09-16  Tom Tromey  <tom@tromey.com>
1740
1741         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1742         Remove.
1743         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1744         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1745         (py_varobj_iter_new): Likewise.
1746         (py_varobj_get_iterator): Use gdbpy_ref.
1747
1748 2018-09-16  Tom Tromey  <tom@tromey.com>
1749
1750         * python/py-threadevent.c (py_get_event_thread): Simplify.
1751         * python/py-inferior.c (infpy_thread_from_thread_handle):
1752         Return immediately after calling thread_to_thread_object.  Use
1753         Py_RETURN_NONE.
1754         (thread_to_thread_object): Set the exception on a NULL return.
1755
1756 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1757
1758         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1759
1760 2018-09-16  Tom Tromey  <tom@tromey.com>
1761
1762         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1763         Remove.
1764
1765 2018-09-16  Tom Tromey  <tom@tromey.com>
1766
1767         * python/python-internal.h (thread_to_thread_object): Change
1768         return type.
1769         * python/py-inferior.c (thread_to_thread_object): Return a new
1770         reference.
1771         (infpy_thread_from_thread_handle): Update.
1772         * python/py-infthread.c (gdbpy_selected_thread): Update.
1773         * python/py-stopevent.c (create_stop_event_object): Update.
1774         * python/py-threadevent.c (py_get_event_thread): Return a new
1775         reference.
1776         (py_get_event_thread): Update.
1777         * python/py-event.h (py_get_event_thread): Change return type.
1778         * python/py-continueevent.c (create_continue_event_object):
1779         Update.
1780
1781 2018-09-16  Tom Tromey  <tom@tromey.com>
1782
1783         * python/py-progspace.c (pspy_get_objfiles): Update.
1784         * python/python-internal.h (objfile_to_objfile_object): Change
1785         return type.
1786         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1787         Update.
1788         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1789         Update.
1790         * python/python.c (gdbpy_get_current_objfile): Update.
1791         (gdbpy_objfiles): Update.
1792         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1793         Update.
1794         (objfile_to_objfile_object): Return a new reference.
1795         * python/py-symtab.c (stpy_get_objfile): Update.
1796         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1797         Update.
1798
1799 2018-09-16  Tom Tromey  <tom@tromey.com>
1800
1801         * python/py-inferior.c (infpy_get_progspace): Update.
1802         * python/python-internal.h (pspace_to_pspace_object): Change
1803         return type.
1804         * python/py-newobjfileevent.c
1805         (create_clear_objfiles_event_object): Update.
1806         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1807         Update.
1808         * python/python.c (gdbpy_get_current_progspace): Update.
1809         (gdbpy_progspaces): Update.
1810         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1811         reference.
1812         * python/py-objfile.c (objfpy_get_progspace): Update.
1813         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1814         Update.
1815
1816 2018-09-16  Tom Tromey  <tom@tromey.com>
1817
1818         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1819         (solib_name, block_for_pc, find_pc_line): New functions.
1820         (execute_unwinders): Update.
1821         * python/py-block.c (gdbpy_block_for_pc): Remove.
1822         * python/py-inferior.c (infpy_get_progspace): New function.
1823         (inferior_object_getset) <progspace>: Add.
1824         * python/py-progspace.c (pspy_objfiles): Rewrite.
1825         (pspy_solib_name, pspy_block_for_pc)
1826         (pspy_find_pc_line, pspy_is_valid): New functions.
1827         (progspace_object_methods): Add entries for solib_name,
1828         block_for_pc, find_pc_line, is_valid.
1829         * python/python-internal.h (gdbpy_block_for_pc)
1830         (build_objfiles_list): Don't declare.
1831         * python/python.c: Don't include solib.h.
1832         (gdbpy_solib_name, gdbpy_find_pc_line)
1833         (gdbpy_get_current_progspace, build_objfiles_list)
1834         (gdbpy_objfiles): Remove.
1835         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1836         solib_name, find_pc_line>: Remove entries.
1837
1838 2018-09-16  Tom Tromey  <tom@tromey.com>
1839
1840         * top.c (new_ui_command): Use GNU style for metasyntactic
1841         variables.
1842         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1843         variables.
1844         * maint.c (maintenance_translate_address): Remove "<>" around
1845         text.
1846         * interps.c (interpreter_exec_cmd): Use GNU style for
1847         metasyntactic variables.
1848         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1849         metasyntactic variables.
1850         * tracepoint.c (tfind_range_command): Use GNU style for
1851         metasyntactic variables.
1852         (tfind_outside_command): Likewise.
1853         (_initialize_tracepoint): Likewise.
1854         * remote.c (extended_remote_target::create_inferior): Use GNU
1855         style for metasyntactic variables.
1856         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1857         metasyntactic variables.
1858         (adi_assign_command): Likewise.
1859
1860 2018-09-16  Tom Tromey  <tom@tromey.com>
1861
1862         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1863         metasyntactic variables.  Print message if no disassembler options
1864         are available.
1865
1866 2018-09-15  Tom Tromey  <tom@tromey.com>
1867
1868         * infcmd.c (get_inferior_args): Return const char *.
1869         * inferior.h (get_inferior_args): Return type now const.
1870         * linux-tdep.c (linux_fill_prpsinfo): Update.
1871         * procfs.c (procfs_target::make_corefile_notes): Update.
1872
1873 2018-09-07  Tom Tromey  <tom@tromey.com>
1874
1875         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1876         inside the TRY.
1877
1878 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1879
1880         * nios2-tdep.c (nios2_type_align): New.
1881         (nios2_gdb_arch_init): Install type_align hook.
1882
1883 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1884
1885         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1886         type that is neither object file owned, nor gdbarch owned.
1887         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1888         gdbarch is non-NULL.
1889         (alloc_type_instance): Allocate non-objfile owned types on the
1890         gdbarch obstack.
1891         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1892         using TYPE_ALLOC to ensure memory is allocated on the correct
1893         obstack.
1894         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1895         obstack, or the gdbarch obstack.
1896         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1897
1898 2018-09-14  Tom Tromey  <tom@tromey.com>
1899
1900         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1901         block.
1902
1903 2018-09-14  Tom Tromey  <tom@tromey.com>
1904
1905         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1906
1907 2018-09-13  Tom Tromey  <tom@tromey.com>
1908
1909         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1910         static.
1911
1912 2018-09-13  Tom Tromey  <tom@tromey.com>
1913
1914         * exec.c (try_open_exec_file): Use std::string.
1915
1916 2018-09-13  Tom Tromey  <tom@tromey.com>
1917
1918         * utils.h (gdb_bfd_errmsg): Return std::string.
1919         * exec.c (exec_file_attach): Update.
1920         * compile/compile-object-load.c (compile_object_load): Update.
1921         * utils.c (gdb_bfd_errmsg): Return std::string.
1922
1923 2018-09-13  Tom Tromey  <tom@tromey.com>
1924
1925         * procfs.c (struct procinfo_deleter): New.
1926         (procinfo_up): New typedef.
1927         (do_destroy_procinfo_cleanup): Remove.
1928         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1929
1930 2018-09-13  Tom Tromey  <tom@tromey.com>
1931
1932         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1933
1934 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1935 2018-09-13  Tom Tromey  <tom@tromey.com>
1936
1937         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1938         (pspy_get_objfiles): New function.
1939         (progspace_object_methods): New.
1940         (pspace_object_type): Add tp_methods callback.
1941         * python/python-internal.h (build_objfiles_list): New
1942         declaration.
1943         * python/python.c (build_objfiles_list): New function.
1944         (gdbpy_objfiles): Implement using build_objfiles_list.
1945         * NEWS: Mention the Progspace.objfiles method.
1946
1947 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1948
1949         * python/py-inferior.c (infpy_get_progspace): New function.
1950         (inferior_object_getset): Add progspace property.
1951         * NEWS: Mention the new property.
1952
1953 2018-09-13  Tom Tromey  <tom@tromey.com>
1954
1955         PR rust/23650:
1956         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1957
1958 2018-09-13  Tom Tromey  <tom@tromey.com>
1959
1960         PR rust/23626:
1961         * rust-lang.c (rust_enum_variant): Now static.
1962         (rust_empty_enum_p): New function.
1963         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1964         Handle empty enum.
1965
1966 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1967
1968         * python/py-inferior.c (infpy_repr): New.
1969         (inferior_object_type): Register infpy_repr.
1970         * python/py-objfile.c (objfpy_repr): New.
1971         (objfile_object_type): Register objfpy_repr.
1972
1973 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1974
1975         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1976
1977 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1978
1979         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1980         typo.
1981
1982 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1983
1984         * common/common-utils.c: Don't include '<sys/stat.h>'.
1985         (is_regular_file): Move to...
1986         * common/filestuff.c (is_regular_file): ... here.
1987         * common/common-utils.h (is_regular_file): Move to...
1988         * common/filestuff.h (is_regular_file): ... here.
1989
1990 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1991
1992         * skip.c (debug_skip): New variable.
1993         (skiplist_entry::do_skip_file_p): Add debug output.
1994         (skiplist_entry::do_skip_gfile_p): Likewise.
1995         (skiplist_entry::skip_function_p): Likewise.
1996         (_initialize_step_skip): Create debug command.
1997         * NEWS: Mention set/show debug skip.
1998
1999 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2000
2001         * darwin-nat.c (should_disable_startup_with_shell):
2002         New function.
2003         (darwin_nat_target::create_inferior): Add call.
2004
2005 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2006
2007         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2008         inf_port, msg_state>: Initialize.
2009         (struct darwin_thread_info) <signaled, single_step>: Change
2010         type and initialize.
2011         (struct darwin_thread_info) <event>: Initialize.
2012
2013 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2014
2015         PR gdb/23555
2016         PR gdb/23558
2017         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2018         guesses.
2019
2020 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2021
2022         Revert:
2023         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2024
2025         PR gdb/23555
2026         PR gdb/23558
2027         * gnulib/aclocal.m4: Regenerate.
2028         * gnulib/config.in: Regenerate.
2029         * gnulib/configure: Regenerate.
2030         * gnulib/import/Makefile.am: Update.
2031         * gnulib/import/Makefile.in: Update.
2032         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2033         * gnulib/import/_Noreturn.h: ... this.
2034         * gnulib/import/alloca.in.h: Update.
2035         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2036         * gnulib/import/arg-nonnull.h: ... this.
2037         * gnulib/import/assure.h: Update.
2038         * gnulib/import/at-func.c: Update.
2039         * gnulib/import/basename-lgpl.c: Update.
2040         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2041         * gnulib/import/c++defs.h: ... this.
2042         * gnulib/import/canonicalize-lgpl.c: Update.
2043         * gnulib/import/cdefs.h: Update.
2044         * gnulib/import/chdir-long.c: Update.
2045         * gnulib/import/chdir-long.h: Update.
2046         * gnulib/import/cloexec.c: Update.
2047         * gnulib/import/cloexec.h: Update.
2048         * gnulib/import/close.c: Update.
2049         * gnulib/import/closedir.c: Update.
2050         * gnulib/import/config.charset: Update.
2051         * gnulib/import/dirent-private.h: Update.
2052         * gnulib/import/dirent.in.h: Update.
2053         * gnulib/import/dirfd.c: Update.
2054         * gnulib/import/dirname-lgpl.c: Update.
2055         * gnulib/import/dirname.h: Update.
2056         * gnulib/import/dosname.h: Update.
2057         * gnulib/import/dup-safer-flag.c: Update.
2058         * gnulib/import/dup-safer.c: Update.
2059         * gnulib/import/dup.c: Update.
2060         * gnulib/import/dup2.c: Update.
2061         * gnulib/import/errno.in.h: Update.
2062         * gnulib/import/error.c: Update.
2063         * gnulib/import/error.h: Update.
2064         * gnulib/import/exitfail.c: Update.
2065         * gnulib/import/exitfail.h: Update.
2066         * gnulib/import/extra/update-copyright: Update.
2067         * gnulib/import/fchdir.c: Update.
2068         * gnulib/import/fcntl.c: Update.
2069         * gnulib/import/fcntl.in.h: Update.
2070         * gnulib/import/fd-hook.c: Update.
2071         * gnulib/import/fd-hook.h: Update.
2072         * gnulib/import/fd-safer-flag.c: Update.
2073         * gnulib/import/fd-safer.c: Update.
2074         * gnulib/import/fdopendir.c: Update.
2075         * gnulib/import/filename.h: Update.
2076         * gnulib/import/filenamecat-lgpl.c: Update.
2077         * gnulib/import/filenamecat.h: Update.
2078         * gnulib/import/flexmember.h: Update.
2079         * gnulib/import/float+.h: Update.
2080         * gnulib/import/float.c: Update.
2081         * gnulib/import/float.in.h: Update.
2082         * gnulib/import/fnmatch.c: Update.
2083         * gnulib/import/fnmatch.in.h: Update.
2084         * gnulib/import/fnmatch_loop.c: Update.
2085         * gnulib/import/fpucw.h: Update.
2086         * gnulib/import/frexp.c: Update.
2087         * gnulib/import/frexpl.c: Update.
2088         * gnulib/import/fstat.c: Update.
2089         * gnulib/import/fstatat.c: Update.
2090         * gnulib/import/getcwd-lgpl.c: Update.
2091         * gnulib/import/getcwd.c: Update.
2092         * gnulib/import/getdtablesize.c: Update.
2093         * gnulib/import/getlogin_r.c: Update.
2094         * gnulib/import/getprogname.c: Update.
2095         * gnulib/import/getprogname.h: Update.
2096         * gnulib/import/gettext.h: Update.
2097         * gnulib/import/gettimeofday.c: Update.
2098         * gnulib/import/glob-libc.h: Update.
2099         * gnulib/import/glob.c: Update.
2100         * gnulib/import/glob.in.h: Update.
2101         * gnulib/import/glob_internal.h: Update.
2102         * gnulib/import/glob_pattern_p.c: Update.
2103         * gnulib/import/globfree.c: Update.
2104         * gnulib/import/hard-locale.c: Update.
2105         * gnulib/import/hard-locale.h: Update.
2106         * gnulib/import/intprops.h: Update.
2107         * gnulib/import/inttypes.in.h: Update.
2108         * gnulib/import/isnan.c: Update.
2109         * gnulib/import/isnand-nolibm.h: Update.
2110         * gnulib/import/isnand.c: Update.
2111         * gnulib/import/isnanl-nolibm.h: Update.
2112         * gnulib/import/isnanl.c: Update.
2113         * gnulib/import/itold.c: Update.
2114         * gnulib/import/libc-config.h: Update.
2115         * gnulib/import/limits.in.h: Update.
2116         * gnulib/import/localcharset.c: Update.
2117         * gnulib/import/localcharset.h: Update.
2118         * gnulib/import/localtime-buffer.c: Update.
2119         * gnulib/import/localtime-buffer.h: Update.
2120         * gnulib/import/lstat.c: Update.
2121         * gnulib/import/m4/00gnulib.m4: Update.
2122         * gnulib/import/m4/__inline.m4: Update.
2123         * gnulib/import/m4/absolute-header.m4: Update.
2124         * gnulib/import/m4/alloca.m4: Update.
2125         * gnulib/import/m4/builtin-expect.m4: Update.
2126         * gnulib/import/m4/canonicalize.m4: Update.
2127         * gnulib/import/m4/chdir-long.m4: Update.
2128         * gnulib/import/m4/close.m4: Update.
2129         * gnulib/import/m4/closedir.m4: Update.
2130         * gnulib/import/m4/configmake.m4: Update.
2131         * gnulib/import/m4/d-ino.m4: Update.
2132         * gnulib/import/m4/d-type.m4: Update.
2133         * gnulib/import/m4/dirent_h.m4: Update.
2134         * gnulib/import/m4/dirfd.m4: Update.
2135         * gnulib/import/m4/dirname.m4: Update.
2136         * gnulib/import/m4/double-slash-root.m4: Update.
2137         * gnulib/import/m4/dup.m4: Update.
2138         * gnulib/import/m4/dup2.m4: Update.
2139         * gnulib/import/m4/eealloc.m4: Update.
2140         * gnulib/import/m4/environ.m4: Update.
2141         * gnulib/import/m4/errno_h.m4: Update.
2142         * gnulib/import/m4/error.m4: Update.
2143         * gnulib/import/m4/exponentd.m4: Update.
2144         * gnulib/import/m4/exponentl.m4: Update.
2145         * gnulib/import/m4/extensions.m4: Update.
2146         * gnulib/import/m4/extern-inline.m4: Update.
2147         * gnulib/import/m4/fchdir.m4: Update.
2148         * gnulib/import/m4/fcntl-o.m4: Update.
2149         * gnulib/import/m4/fcntl.m4: Update.
2150         * gnulib/import/m4/fcntl_h.m4: Update.
2151         * gnulib/import/m4/fdopendir.m4: Update.
2152         * gnulib/import/m4/filenamecat.m4: Update.
2153         * gnulib/import/m4/flexmember.m4: Update.
2154         * gnulib/import/m4/float_h.m4: Update.
2155         * gnulib/import/m4/fnmatch.m4: Update.
2156         * gnulib/import/m4/fnmatch_h.m4: Update.
2157         * gnulib/import/m4/fpieee.m4: Update.
2158         * gnulib/import/m4/frexp.m4: Update.
2159         * gnulib/import/m4/frexpl.m4: Update.
2160         * gnulib/import/m4/fstat.m4: Update.
2161         * gnulib/import/m4/fstatat.m4: Update.
2162         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2163         * gnulib/import/m4/getcwd-path-max.m4: Update.
2164         * gnulib/import/m4/getcwd.m4: Update.
2165         * gnulib/import/m4/getdtablesize.m4: Update.
2166         * gnulib/import/m4/getlogin.m4: Update.
2167         * gnulib/import/m4/getlogin_r.m4: Update.
2168         * gnulib/import/m4/getpagesize.m4: Update.
2169         * gnulib/import/m4/getprogname.m4: Update.
2170         * gnulib/import/m4/gettimeofday.m4: Update.
2171         * gnulib/import/m4/glibc21.m4: Update.
2172         * gnulib/import/m4/glob.m4: Update.
2173         * gnulib/import/m4/glob_h.m4: Update.
2174         * gnulib/import/m4/gnulib-cache.m4: Update.
2175         * gnulib/import/m4/gnulib-common.m4: Update.
2176         * gnulib/import/m4/gnulib-comp.m4: Update.
2177         * gnulib/import/m4/gnulib-tool.m4: Update.
2178         * gnulib/import/m4/hard-locale.m4: Update.
2179         * gnulib/import/m4/include_next.m4: Update.
2180         * gnulib/import/m4/inttypes-pri.m4: Update.
2181         * gnulib/import/m4/inttypes.m4: Update.
2182         * gnulib/import/m4/isnand.m4: Update.
2183         * gnulib/import/m4/isnanl.m4: Update.
2184         * gnulib/import/m4/largefile.m4: Update.
2185         * gnulib/import/m4/limits-h.m4: Update.
2186         * gnulib/import/m4/localcharset.m4: Update.
2187         * gnulib/import/m4/locale-fr.m4: Update.
2188         * gnulib/import/m4/locale-ja.m4: Update.
2189         * gnulib/import/m4/locale-zh.m4: Update.
2190         * gnulib/import/m4/localtime-buffer.m4: Update.
2191         * gnulib/import/m4/longlong.m4: Update.
2192         * gnulib/import/m4/lstat.m4: Update.
2193         * gnulib/import/m4/malloc.m4: Update.
2194         * gnulib/import/m4/malloca.m4: Update.
2195         * gnulib/import/m4/math_h.m4: Update.
2196         * gnulib/import/m4/mbrtowc.m4: Update.
2197         * gnulib/import/m4/mbsinit.m4: Update.
2198         * gnulib/import/m4/mbsrtowcs.m4: Update.
2199         * gnulib/import/m4/mbstate_t.m4: Update.
2200         * gnulib/import/m4/memchr.m4: Update.
2201         * gnulib/import/m4/memmem.m4: Update.
2202         * gnulib/import/m4/mempcpy.m4: Update.
2203         * gnulib/import/m4/memrchr.m4: Update.
2204         * gnulib/import/m4/mkdir.m4: Update.
2205         * gnulib/import/m4/mkstemp.m4: Update.
2206         * gnulib/import/m4/mmap-anon.m4: Update.
2207         * gnulib/import/m4/mode_t.m4: Update.
2208         * gnulib/import/m4/msvc-inval.m4: Update.
2209         * gnulib/import/m4/msvc-nothrow.m4: Update.
2210         * gnulib/import/m4/multiarch.m4: Update.
2211         * gnulib/import/m4/nocrash.m4: Update.
2212         * gnulib/import/m4/off_t.m4: Update.
2213         * gnulib/import/m4/onceonly.m4: Update.
2214         * gnulib/import/m4/open-cloexec.m4: Update.
2215         * gnulib/import/m4/open.m4: Update.
2216         * gnulib/import/m4/openat.m4: Update.
2217         * gnulib/import/m4/opendir.m4: Update.
2218         * gnulib/import/m4/pathmax.m4: Update.
2219         * gnulib/import/m4/rawmemchr.m4: Update.
2220         * gnulib/import/m4/readdir.m4: Update.
2221         * gnulib/import/m4/readlink.m4: Update.
2222         * gnulib/import/m4/realloc.m4: Update.
2223         * gnulib/import/m4/rename.m4: Update.
2224         * gnulib/import/m4/rewinddir.m4: Update.
2225         * gnulib/import/m4/rmdir.m4: Update.
2226         * gnulib/import/m4/save-cwd.m4: Update.
2227         * gnulib/import/m4/secure_getenv.m4: Update.
2228         * gnulib/import/m4/setenv.m4: Update.
2229         * gnulib/import/m4/signal_h.m4: Update.
2230         * gnulib/import/m4/ssize_t.m4: Update.
2231         * gnulib/import/m4/stat-time.m4: Update.
2232         * gnulib/import/m4/stat.m4: Update.
2233         * gnulib/import/m4/std-gnu11.m4: Update.
2234         * gnulib/import/m4/stdbool.m4: Update.
2235         * gnulib/import/m4/stddef_h.m4: Update.
2236         * gnulib/import/m4/stdint.m4: Update.
2237         * gnulib/import/m4/stdio_h.m4: Update.
2238         * gnulib/import/m4/stdlib_h.m4: Update.
2239         * gnulib/import/m4/strchrnul.m4: Update.
2240         * gnulib/import/m4/strdup.m4: Update.
2241         * gnulib/import/m4/strerror.m4: Update.
2242         * gnulib/import/m4/string_h.m4: Update.
2243         * gnulib/import/m4/strstr.m4: Update.
2244         * gnulib/import/m4/strtok_r.m4: Update.
2245         * gnulib/import/m4/sys_socket_h.m4: Update.
2246         * gnulib/import/m4/sys_stat_h.m4: Update.
2247         * gnulib/import/m4/sys_time_h.m4: Update.
2248         * gnulib/import/m4/sys_types_h.m4: Update.
2249         * gnulib/import/m4/tempname.m4: Update.
2250         * gnulib/import/m4/time_h.m4: Update.
2251         * gnulib/import/m4/unistd-safer.m4: Update.
2252         * gnulib/import/m4/unistd_h.m4: Update.
2253         * gnulib/import/m4/warn-on-use.m4: Update.
2254         * gnulib/import/m4/wchar_h.m4: Update.
2255         * gnulib/import/m4/wchar_t.m4: Update.
2256         * gnulib/import/m4/wctype_h.m4: Update.
2257         * gnulib/import/m4/wint_t.m4: Update.
2258         * gnulib/import/malloc.c: Update.
2259         * gnulib/import/malloc/scratch_buffer.h: Update.
2260         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2261         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2262         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2263         * gnulib/import/malloca.c: Update.
2264         * gnulib/import/malloca.h: Update.
2265         * gnulib/import/malloca.valgrind: Update.
2266         * gnulib/import/math.in.h: Update.
2267         * gnulib/import/mbrtowc.c: Update.
2268         * gnulib/import/mbsinit.c: Update.
2269         * gnulib/import/mbsrtowcs-impl.h: Update.
2270         * gnulib/import/mbsrtowcs-state.c: Update.
2271         * gnulib/import/mbsrtowcs.c: Update.
2272         * gnulib/import/memchr.c: Update.
2273         * gnulib/import/memmem.c: Update.
2274         * gnulib/import/mempcpy.c: Update.
2275         * gnulib/import/memrchr.c: Update.
2276         * gnulib/import/mkdir.c: Update.
2277         * gnulib/import/mkstemp.c: Update.
2278         * gnulib/import/msvc-inval.c: Update.
2279         * gnulib/import/msvc-inval.h: Update.
2280         * gnulib/import/msvc-nothrow.c: Update.
2281         * gnulib/import/msvc-nothrow.h: Update.
2282         * gnulib/import/open.c: Update.
2283         * gnulib/import/openat-die.c: Update.
2284         * gnulib/import/openat-priv.h: Update.
2285         * gnulib/import/openat-proc.c: Update.
2286         * gnulib/import/openat.c: Update.
2287         * gnulib/import/openat.h: Update.
2288         * gnulib/import/opendir.c: Update.
2289         * gnulib/import/pathmax.h: Update.
2290         * gnulib/import/pipe-safer.c: Update.
2291         * gnulib/import/rawmemchr.c: Update.
2292         * gnulib/import/readdir.c: Update.
2293         * gnulib/import/readlink.c: Update.
2294         * gnulib/import/realloc.c: Update.
2295         * gnulib/import/ref-add.sin: Update.
2296         * gnulib/import/ref-del.sin: Update.
2297         * gnulib/import/rename.c: Update.
2298         * gnulib/import/rewinddir.c: Update.
2299         * gnulib/import/rmdir.c: Update.
2300         * gnulib/import/same-inode.h: Update.
2301         * gnulib/import/save-cwd.c: Update.
2302         * gnulib/import/save-cwd.h: Update.
2303         * gnulib/import/scratch_buffer.h: Update.
2304         * gnulib/import/secure_getenv.c: Update.
2305         * gnulib/import/setenv.c: Update.
2306         * gnulib/import/signal.in.h: Update.
2307         * gnulib/import/stat-time.c: Update.
2308         * gnulib/import/stat-time.h: Update.
2309         * gnulib/import/stat-w32.c: Update.
2310         * gnulib/import/stat-w32.h: Update.
2311         * gnulib/import/stat.c: Update.
2312         * gnulib/import/stdbool.in.h: Update.
2313         * gnulib/import/stddef.in.h: Update.
2314         * gnulib/import/stdint.in.h: Update.
2315         * gnulib/import/stdio.in.h: Update.
2316         * gnulib/import/stdlib.in.h: Update.
2317         * gnulib/import/str-two-way.h: Update.
2318         * gnulib/import/strchrnul.c: Update.
2319         * gnulib/import/strdup.c: Update.
2320         * gnulib/import/streq.h: Update.
2321         * gnulib/import/strerror-override.c: Update.
2322         * gnulib/import/strerror-override.h: Update.
2323         * gnulib/import/strerror.c: Update.
2324         * gnulib/import/string.in.h: Update.
2325         * gnulib/import/stripslash.c: Update.
2326         * gnulib/import/strnlen1.c: Update.
2327         * gnulib/import/strnlen1.h: Update.
2328         * gnulib/import/strstr.c: Update.
2329         * gnulib/import/strtok_r.c: Update.
2330         * gnulib/import/sys_stat.in.h: Update.
2331         * gnulib/import/sys_time.in.h: Update.
2332         * gnulib/import/sys_types.in.h: Update.
2333         * gnulib/import/tempname.c: Update.
2334         * gnulib/import/tempname.h: Update.
2335         * gnulib/import/time.in.h: Update.
2336         * gnulib/import/unistd--.h: Update.
2337         * gnulib/import/unistd-safer.h: Update.
2338         * gnulib/import/unistd.in.h: Update.
2339         * gnulib/import/unsetenv.c: Update.
2340         * gnulib/import/verify.h: Update.
2341         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2342         * gnulib/import/wchar.in.h: Update.
2343         * gnulib/import/wctype.in.h: Update.
2344         * gnulib/import/xalloc-oversized.h: Update.
2345         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2346         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2347
2348 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2349
2350         * record-btrace.c (get_thread_current_frame): Remove
2351         old_inferior_ptid.
2352
2353 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2354
2355         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2356         with check_tag to 1 if and only if the type is tagged and the
2357         component being searched cannot been found in the current
2358         view. Otherwise, always call ada_to_fixed_type with
2359         check_tag to 0.
2360
2361 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2362
2363         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2364         declaration.
2365         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2366         * ada-varobj.c (ada_varobj_get_number_of_children,
2367         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2368
2369 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2370
2371         * ada-valprint.c (ada_value_print): Use type instead of
2372         enclosing type.
2373
2374 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2375
2376         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2377         an array of access to unconstrained array.
2378
2379 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2380
2381         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2382         (ada_check_typedef): Use it.
2383
2384 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2385
2386         * ada-varobj.c (ada_varobj_describe_struct_child)
2387         (ada_varobj_describe_child): Handle union case like struct one.
2388
2389 2018-09-10  Tom Tromey  <tom@tromey.com>
2390
2391         PR python/18380:
2392         * python/python.c (_initialize_python): Make example in "python"
2393         help work in Python 3.
2394
2395 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2396
2397         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2398         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2399         $(EXEEXT) to the script, as it is not a program.
2400
2401 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2402
2403         * python/py-prettyprint.c (pretty_print_one_value): Return
2404         gdbpy_ref<>.
2405         (print_string_repr): Adjust.
2406         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2407         * python/python-internal.h (apply_varobj_pretty_printer): Return
2408         gdbpy_ref<>.
2409         * varobj.c (varobj_value_get_print_value): Adjust.
2410
2411 2018-09-08  Tom Tromey  <tom@tromey.com>
2412
2413         PR python/16047:
2414         * python/py-prettyprint.c (pretty_print_one_value): Check for
2415         to_string method.
2416
2417 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2418
2419         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2420         replace_operator_with_call.
2421
2422 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2423
2424         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2425
2426 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2427
2428         * ada-typeprint.c (print_range): Print the bounds using TYPE
2429         rather than its TYPE_TARGET_TYPE.
2430
2431 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2432
2433         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2434         call to ada_to_fixed_value_create.
2435
2436 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2437
2438         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2439
2440 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2441
2442         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2443         by calls to error.
2444
2445 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2446
2447         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2448         Move update of loop variable "fi".
2449
2450 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2451
2452         * ada-lang.c (value_assign_to_component): In the case of
2453         big-endian targets, extract the bits of the given VAL
2454         using an src_offset of zero if container is not a scalar.
2455
2456 2018-09-06  Simon Ser  <contact@emersion.fr>
2457
2458         PR gdb/23105
2459         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2460         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2461         * fbsd-tdep.c (fbsd_make_note_desc): New.
2462         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2463         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2464         * target.h (enum target_object) Add FreeBSD-specific
2465         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2466
2467 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2468
2469         * compile/compile-c.h (generate_c_for_variable_locations):
2470         Change reference to pointer.
2471         * compile/compile-c-support.c (compile_program) <compute>:
2472         Likewise.
2473         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2474         (generate_c_for_for_one_variable): Likewise
2475         (generate_c_for_variable_locations): Likewise
2476         * compile/compile-c-types.c (compile_c_instance::convert_type):
2477         Likewise
2478         * compile/compile-cplus-symbols.c (convert_one_symbol):
2479         std::move the scope passed to enter_scope.
2480         * compile/compile-cplus-types.c
2481         (compile_cplus_instance::enter_scope): Make parameter
2482         rvalue-reference.
2483         (compile_cplus_instance::new_scope): Change reference to
2484         pointer.
2485         (compile_cplus_instance::convert_type): Likewise
2486         (compile_cplus_convert_typedef): std::move the scope passed to
2487         enter_scope.
2488         (compile_cplus_convert_struct_or_union): Likewise.
2489         (compile_cplus_convert_enum): Likewise.
2490         (compile_cplus_convert_namespace): Likewise.
2491         * compile/compile-cplus.h (compile_cplus_instance)
2492         <enter_scope>: Make parameter rvalue-reference.
2493         * compile/compile-internal.h (compile_instance)
2494         <get_cached_type>: Likewise
2495         * compile/compile-loc2c.c (push): Likewise
2496         (pushf): Likewise
2497         (unary): Likewise
2498         (binary): Likewise
2499         (print_label): Likewise
2500         (pushf_register_address): Likewise
2501         (pushf_register): Likewise
2502         (do_compile_dwarf_expr_to_c): Likewise
2503         (compile_dwarf_expr_to_c): Likewise
2504         (compile_dwarf_bounds_to_c): Likewise
2505         * compile/compile.c (compile_instance::get_cached_type):
2506         Likewise
2507         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2508         (compile_dwarf_bounds_to_c): Likewise
2509         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2510         (dwarf2_compile_property_to_c): Likewise
2511         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2512         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2513         Likewise
2514
2515 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2516
2517         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2518         * tui/tui-data.c (init_content_element): Don't initialize it.
2519
2520 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2521
2522         * tui/tui-data.h (struct tui_win_info)
2523         <detail::opaque>: Remove.
2524         * tui/tui-data.c (init_win_info): Remove assignment.
2525
2526 2018-09-05  Tom Tromey  <tom@tromey.com>
2527
2528         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2529         -Wformat-nonliteral.
2530         * target-float.c (host_float_ops<T>::to_string)
2531         (host_float_ops<T>::from_string): Use
2532         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2533         * configure: Rebuild.
2534
2535 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2536
2537         * printcmd.c (printf_c_string): Use
2538         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2539         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2540
2541 2018-09-05  Tom Tromey  <tom@tromey.com>
2542
2543         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2544
2545 2018-09-05  Tom de Vries  <tdevries@suse.de>
2546
2547         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2548         with resolve_abstract_p == true.
2549         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2550         defaulting to false. Propagate resolve_abstract_p to
2551         dwarf2_fetch_die_loc_sect_off.
2552         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2553         parameter, defaulting to false.
2554         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2555         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2556         parameter.
2557         * dwarf2read.h (struct die_info): Forward-declare.
2558         (die_info_ptr): New typedef.
2559         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2560
2561 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2562
2563         GDB 8.2 released.
2564
2565 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2566             Pedro Alves  <palves@redhat.com>
2567
2568         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2569         "aclocal-m4-deps.mk".  Include file here.
2570         $(srcdir)/aclocal.m4: Add "configure.ac".
2571         * gnulib/aclocal-m4-deps.mk: New file.
2572         * gnulib/update-gnulib.sh: Automatically update
2573         "aclocal-m4-deps.mk".
2574
2575 2018-09-04  Tom Tromey  <tom@tromey.com>
2576
2577         * configure: Rebuild.
2578         * configure.ac: Remove multi-ice code.
2579
2580 2018-09-04  Tom Tromey  <tom@tromey.com>
2581
2582         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2583         (ada-exp.o): Update.
2584
2585 2018-09-04  Tom Tromey  <tom@tromey.com>
2586
2587         * Makefile.in (printcmd.o, target-float.o): Remove.
2588         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2589
2590 2018-09-04  Tom Tromey  <tom@tromey.com>
2591
2592         * gnulib/Makefile.in: Remove obsolete comment.
2593         * Makefile.in: Remove obsolete comment.
2594
2595 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2596
2597         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2598         line with '+'.
2599
2600 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2601
2602         * riscv-tdep.c: Add 'prologue-value.h' include.
2603         (struct riscv_unwind_cache): New struct.
2604         (riscv_debug_unwinder): New global.
2605         (riscv_scan_prologue): Update arguments, capture register details
2606         from prologue scan.
2607         (riscv_skip_prologue): Reformat arguments line, move end of
2608         prologue calculation into riscv_scan_prologue.
2609         (riscv_frame_cache): Update return type, create
2610         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2611         details.
2612         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2613         (riscv_frame_prev_register): Use the trad_frame within the
2614         riscv_unwind_cache.
2615         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2616         flag.
2617
2618 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2619
2620         * trad-frame.h (trad_frame_set_realreg): Declare.
2621         (trad_frame_set_addr): Declare.
2622         * trad-frame.c (trad_frame_set_realreg): Define new function.
2623         (trad_frame_set_addr): Define new function.
2624         (trad_frame_set_reg_realreg): Use new function.
2625         (trad_frame_set_reg_addr): Use new function.
2626
2627 2018-09-01  Keith Seitz  <keiths@redhat.com>
2628
2629         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2630         pulongest instead of "%lld".
2631         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2632         ATTRIBUTE_UNUSED.
2633
2634 2018-08-31  Tom Tromey  <tom@tromey.com>
2635
2636         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2637         variant part type.
2638
2639 2018-08-31  Pedro Alves  <palves@redhat.com>
2640
2641         * gdbarch.h: Regenerate.
2642
2643 2018-08-31  Pedro Alves  <palves@redhat.com>
2644
2645         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2646         * target.h (Hardware watchpoint interfaces): Describe
2647         continuable/steppable/non-steppable watchpoints.
2648         * gdbarch.h, gdbarch.c: Regenerate.
2649
2650 2018-08-31  Pedro Alves  <palves@redhat.com>
2651
2652         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2653         Delete.
2654         * s390-linux-nat.c
2655         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2656         * target.h (target_ops::have_continuable_watchpoint): Delete.
2657         (target_have_continuable_watchpoint): Delete.
2658         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2659         * target-delegates.c: Regenerate.
2660
2661 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2662
2663         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2664         the files present in "gnulib/import/m4/".
2665
2666 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2667
2668         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2669         c.sw, c.swsp, and c.sdsp.
2670
2671 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2672
2673         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2674         (riscv_read_misa_reg): Don't cache value read into inferior data.
2675         (riscv_new_inferior_data): Delete.
2676         (riscv_inferior_data_cleanup): Delete.
2677         (riscv_inferior_data): Delete.
2678         (riscv_invalidate_inferior_data): Delete.
2679         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2680
2681 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2682
2683         * compile/compile-cplus-types.c
2684         (compile_cplus_instance::leave_scope): Take the address of scope
2685         object.
2686         (compile_cplus_instance::convert_qualified_base): Compare quals
2687         to 0.
2688
2689 2018-08-30  Keith Seitz  <keiths@redhat.com>
2690
2691         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2692         Use "%s" and host_address_to_string instead of "%p" in printf.
2693
2694 2018-08-29  Keith Seitz  <keiths@redhat.com>
2695
2696         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2697         and compile-cplus-types.c.
2698         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2699         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2700         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2701         Declare.
2702         * compile/compile-c-support.c: Include compile-cplus.h.
2703         (load_libcompile): Templatize.
2704         (get_compile_context): "New" function.
2705         (c_get_compile_context): Use get_compile_context.
2706         (cplus_get_compile_context): New function.
2707         (cplus_push_user_expression, cplus_pop_user_expression)
2708         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2709         (cplus_compute_program): Define new structs/functions.
2710         * compile/compile-cplus-symmbols.c: New file.
2711         * compile/compile-cplus-types.c: New file.
2712         * compile/compile-cplus.h: New file.
2713         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2714         Declare.
2715         * compile/compile-object-load.c (get_out_value_type): Use
2716         strncmp_iw when comparing symbol names.
2717         (compile_object_load): Add mst_bss and mst_data.
2718         * compile/compile.c (_initialize_compile): Remove
2719         -Wno-implicit-function-declaration from `compile_args'.
2720         * compile/gcc-cp-plugin.h: New file.
2721         * NEWS: Mention C++ compile support and new debug options.
2722
2723 2018-08-29  Keith Seitz  <keiths@redhat.com>
2724
2725         * linespec.c (collect_info::add_symbol): Make virtual.
2726         (struct symbol_searcher_collect_info): New struct.
2727         (symbol_searcher::find_all_symbols): New method.
2728         * symtab.h (class symbol_searcher): New class.
2729
2730 2018-08-29  Keith Seitz  <keiths@redhat.com>
2731
2732         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2733         Change to vector of block_symbol.  Update all users.
2734         (struct collect_info) <symbols>: Likewise.
2735         (collect_info::add_symbol): Take block_symbol as argument.
2736         Update all callers.
2737         (decode_compound_collector) <m_symbols>: Change type to vector
2738         of block_symbol.  Update all users.
2739         (decode_compound_collector::operator ()): Change parameter type
2740         to block_symbol.
2741         (find_method, find_function_symbols, find_linespec_symbols)
2742         (find_label_symbols_in_block, find_label_symbols): Change symbol
2743         vectors to block_symbol vectors.
2744         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2745         block_symbol.
2746
2747 2018-08-29  Keith Seitz  <keiths@redhat.com>
2748
2749         * linespec.c (symbolp): Remove typedef and VEC definitions.
2750         (bound_minimal_symbol_d): Likewise.
2751
2752 2018-08-29  Keith Seitz  <keiths@redhat.com>
2753
2754         * linespec.c (decode_compound_collector::decode_compound_collector):
2755         Remove initialization for `m_symtabs'.
2756         (decode_compound_collector::release_symbols): Change return type
2757         to std::vector.  Update all callers.
2758         (class decode_compound_collector) <m_symbols>: Change type to
2759         std::vector.
2760         (lookup_prefix_sym): Change return type to std::vector.  Update all
2761         callers.
2762         (compare_symbols): Remove.
2763         (std_compare_symbols): Rename to `compare_symbols'.
2764         (find_method): Change `sym_classes' parameter to std::vector.
2765         Update all callers.  Use std::sort to sort sym_classes.
2766         (find_linespec_symbols): Remove cleanup.
2767
2768 2018-08-29  Keith Seitz  <keiths@redhat.com>
2769
2770         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2771         std::vector.  Update all users.
2772         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2773         (struct collect_info) <minimal_symbols>: Likewise.
2774         (compare_msymbols): Return bool.  Change parameters to const
2775         bound_minimal_symbol references.
2776         (find_method, find_function_symbols, find_linespec_symbols): Change
2777         `minsyms' parameter to std::vector.  Update all callers.
2778
2779 2018-08-29  Keith Seitz  <keiths@redhat.com>
2780
2781         * linespec.c (struct linespec) <label_symbols>: Change type to
2782         std::vector.  Update all users.
2783         (find_label_symbols_in_block): Change `result' parameter to
2784         std::vector.  Update all callers.
2785         (find_label_symbols): Return std::vector.  Update all callers.
2786
2787 2018-08-29  Keith Seitz  <keiths@redhat.com>
2788
2789         * linespec.c (struct linespec) <function_symbols>: Change type to
2790         std::vector.  Update all users.
2791         (struct collect_info) <function_symbols>: Likewise.
2792         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2793         (std_compare_symbols): New function.
2794         (find_method, find_function_symbols, find_linespec_symbols)
2795         (find_label_symbols_in_block): Change `symbols' parameter to
2796         std::vector.  Update all callers.
2797         (find_label_symbols): Likewise for `function_symbols' and
2798         `label_funcs_ret'.
2799
2800 2018-08-29  Keith Seitz  <keiths@redhat.com>
2801
2802         * linespec.c (symtab_vector_up): Define.
2803         (struct linespec) <file_symtabs>: Change type to std::vector *.
2804         Update all uses.
2805         (struct collect_info) <file_symtabs>: Likewise.
2806         (collect_symtabs_from_filename): Return symtab_vector_up.
2807         Update all callers.
2808         (decode_objc): Remove cleanup.
2809         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2810         (symtab_collector::release_symtabs): Return symtab_vector_up.
2811         Update all callers.
2812         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2813         Update all users.
2814         (collect_symtabs_from_filename, symtabs_from_filename): Return
2815         symtab_vector_up.  Update all callers.
2816
2817 2018-08-29  Tom Tromey  <tom@tromey.com>
2818
2819         * csky-tdep.c (csky_analyze_prologue): Use
2820         core_addr_to_string_nz.
2821
2822 2018-08-29  Tom Tromey  <tom@tromey.com>
2823
2824         * windows-nat.c (struct xlate_exception) <them>: Change type to
2825         DWORD.
2826         (xlate): Fix formatting.  Remove last entry.
2827         (struct xlate_exception, xlate): Comment out.
2828         (windows_nat_target::resume): Use ranged for.
2829
2830 2018-08-29  Jim Wilson  <jimw@sifive.com>
2831
2832         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2833         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2834         of NT_PRFPREG.
2835         (riscv_linux_nat_target::store_registers): Likewise.
2836
2837 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2838
2839         PR gdb/23555
2840         PR gdb/23558
2841         * gnulib/aclocal.m4: Regenerate.
2842         * gnulib/config.in: Regenerate.
2843         * gnulib/configure: Regenerate.
2844         * gnulib/import/Makefile.am: Update.
2845         * gnulib/import/Makefile.in: Update.
2846         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2847         * gnulib/import/_Noreturn.h: ... this.
2848         * gnulib/import/alloca.in.h: Update.
2849         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2850         * gnulib/import/arg-nonnull.h: ... this.
2851         * gnulib/import/assure.h: Update.
2852         * gnulib/import/at-func.c: Update.
2853         * gnulib/import/basename-lgpl.c: Update.
2854         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2855         * gnulib/import/c++defs.h: ... this.
2856         * gnulib/import/canonicalize-lgpl.c: Update.
2857         * gnulib/import/cdefs.h: Update.
2858         * gnulib/import/chdir-long.c: Update.
2859         * gnulib/import/chdir-long.h: Update.
2860         * gnulib/import/cloexec.c: Update.
2861         * gnulib/import/cloexec.h: Update.
2862         * gnulib/import/close.c: Update.
2863         * gnulib/import/closedir.c: Update.
2864         * gnulib/import/config.charset: Update.
2865         * gnulib/import/dirent-private.h: Update.
2866         * gnulib/import/dirent.in.h: Update.
2867         * gnulib/import/dirfd.c: Update.
2868         * gnulib/import/dirname-lgpl.c: Update.
2869         * gnulib/import/dirname.h: Update.
2870         * gnulib/import/dosname.h: Update.
2871         * gnulib/import/dup-safer-flag.c: Update.
2872         * gnulib/import/dup-safer.c: Update.
2873         * gnulib/import/dup.c: Update.
2874         * gnulib/import/dup2.c: Update.
2875         * gnulib/import/errno.in.h: Update.
2876         * gnulib/import/error.c: Update.
2877         * gnulib/import/error.h: Update.
2878         * gnulib/import/exitfail.c: Update.
2879         * gnulib/import/exitfail.h: Update.
2880         * gnulib/import/extra/update-copyright: Update.
2881         * gnulib/import/fchdir.c: Update.
2882         * gnulib/import/fcntl.c: Update.
2883         * gnulib/import/fcntl.in.h: Update.
2884         * gnulib/import/fd-hook.c: Update.
2885         * gnulib/import/fd-hook.h: Update.
2886         * gnulib/import/fd-safer-flag.c: Update.
2887         * gnulib/import/fd-safer.c: Update.
2888         * gnulib/import/fdopendir.c: Update.
2889         * gnulib/import/filename.h: Update.
2890         * gnulib/import/filenamecat-lgpl.c: Update.
2891         * gnulib/import/filenamecat.h: Update.
2892         * gnulib/import/flexmember.h: Update.
2893         * gnulib/import/float+.h: Update.
2894         * gnulib/import/float.c: Update.
2895         * gnulib/import/float.in.h: Update.
2896         * gnulib/import/fnmatch.c: Update.
2897         * gnulib/import/fnmatch.in.h: Update.
2898         * gnulib/import/fnmatch_loop.c: Update.
2899         * gnulib/import/fpucw.h: Update.
2900         * gnulib/import/frexp.c: Update.
2901         * gnulib/import/frexpl.c: Update.
2902         * gnulib/import/fstat.c: Update.
2903         * gnulib/import/fstatat.c: Update.
2904         * gnulib/import/getcwd-lgpl.c: Update.
2905         * gnulib/import/getcwd.c: Update.
2906         * gnulib/import/getdtablesize.c: Update.
2907         * gnulib/import/getlogin_r.c: Update.
2908         * gnulib/import/getprogname.c: Update.
2909         * gnulib/import/getprogname.h: Update.
2910         * gnulib/import/gettext.h: Update.
2911         * gnulib/import/gettimeofday.c: Update.
2912         * gnulib/import/glob-libc.h: Update.
2913         * gnulib/import/glob.c: Update.
2914         * gnulib/import/glob.in.h: Update.
2915         * gnulib/import/glob_internal.h: Update.
2916         * gnulib/import/glob_pattern_p.c: Update.
2917         * gnulib/import/globfree.c: Update.
2918         * gnulib/import/hard-locale.c: Update.
2919         * gnulib/import/hard-locale.h: Update.
2920         * gnulib/import/intprops.h: Update.
2921         * gnulib/import/inttypes.in.h: Update.
2922         * gnulib/import/isnan.c: Update.
2923         * gnulib/import/isnand-nolibm.h: Update.
2924         * gnulib/import/isnand.c: Update.
2925         * gnulib/import/isnanl-nolibm.h: Update.
2926         * gnulib/import/isnanl.c: Update.
2927         * gnulib/import/itold.c: Update.
2928         * gnulib/import/libc-config.h: Update.
2929         * gnulib/import/limits.in.h: Update.
2930         * gnulib/import/localcharset.c: Update.
2931         * gnulib/import/localcharset.h: Update.
2932         * gnulib/import/localtime-buffer.c: Update.
2933         * gnulib/import/localtime-buffer.h: Update.
2934         * gnulib/import/lstat.c: Update.
2935         * gnulib/import/m4/00gnulib.m4: Update.
2936         * gnulib/import/m4/__inline.m4: Update.
2937         * gnulib/import/m4/absolute-header.m4: Update.
2938         * gnulib/import/m4/alloca.m4: Update.
2939         * gnulib/import/m4/builtin-expect.m4: Update.
2940         * gnulib/import/m4/canonicalize.m4: Update.
2941         * gnulib/import/m4/chdir-long.m4: Update.
2942         * gnulib/import/m4/close.m4: Update.
2943         * gnulib/import/m4/closedir.m4: Update.
2944         * gnulib/import/m4/configmake.m4: Update.
2945         * gnulib/import/m4/d-ino.m4: Update.
2946         * gnulib/import/m4/d-type.m4: Update.
2947         * gnulib/import/m4/dirent_h.m4: Update.
2948         * gnulib/import/m4/dirfd.m4: Update.
2949         * gnulib/import/m4/dirname.m4: Update.
2950         * gnulib/import/m4/double-slash-root.m4: Update.
2951         * gnulib/import/m4/dup.m4: Update.
2952         * gnulib/import/m4/dup2.m4: Update.
2953         * gnulib/import/m4/eealloc.m4: Update.
2954         * gnulib/import/m4/environ.m4: Update.
2955         * gnulib/import/m4/errno_h.m4: Update.
2956         * gnulib/import/m4/error.m4: Update.
2957         * gnulib/import/m4/exponentd.m4: Update.
2958         * gnulib/import/m4/exponentl.m4: Update.
2959         * gnulib/import/m4/extensions.m4: Update.
2960         * gnulib/import/m4/extern-inline.m4: Update.
2961         * gnulib/import/m4/fchdir.m4: Update.
2962         * gnulib/import/m4/fcntl-o.m4: Update.
2963         * gnulib/import/m4/fcntl.m4: Update.
2964         * gnulib/import/m4/fcntl_h.m4: Update.
2965         * gnulib/import/m4/fdopendir.m4: Update.
2966         * gnulib/import/m4/filenamecat.m4: Update.
2967         * gnulib/import/m4/flexmember.m4: Update.
2968         * gnulib/import/m4/float_h.m4: Update.
2969         * gnulib/import/m4/fnmatch.m4: Update.
2970         * gnulib/import/m4/fnmatch_h.m4: Update.
2971         * gnulib/import/m4/fpieee.m4: Update.
2972         * gnulib/import/m4/frexp.m4: Update.
2973         * gnulib/import/m4/frexpl.m4: Update.
2974         * gnulib/import/m4/fstat.m4: Update.
2975         * gnulib/import/m4/fstatat.m4: Update.
2976         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2977         * gnulib/import/m4/getcwd-path-max.m4: Update.
2978         * gnulib/import/m4/getcwd.m4: Update.
2979         * gnulib/import/m4/getdtablesize.m4: Update.
2980         * gnulib/import/m4/getlogin.m4: Update.
2981         * gnulib/import/m4/getlogin_r.m4: Update.
2982         * gnulib/import/m4/getpagesize.m4: Update.
2983         * gnulib/import/m4/getprogname.m4: Update.
2984         * gnulib/import/m4/gettimeofday.m4: Update.
2985         * gnulib/import/m4/glibc21.m4: Update.
2986         * gnulib/import/m4/glob.m4: Update.
2987         * gnulib/import/m4/glob_h.m4: Update.
2988         * gnulib/import/m4/gnulib-cache.m4: Update.
2989         * gnulib/import/m4/gnulib-common.m4: Update.
2990         * gnulib/import/m4/gnulib-comp.m4: Update.
2991         * gnulib/import/m4/gnulib-tool.m4: Update.
2992         * gnulib/import/m4/hard-locale.m4: Update.
2993         * gnulib/import/m4/include_next.m4: Update.
2994         * gnulib/import/m4/inttypes-pri.m4: Update.
2995         * gnulib/import/m4/inttypes.m4: Update.
2996         * gnulib/import/m4/isnand.m4: Update.
2997         * gnulib/import/m4/isnanl.m4: Update.
2998         * gnulib/import/m4/largefile.m4: Update.
2999         * gnulib/import/m4/limits-h.m4: Update.
3000         * gnulib/import/m4/localcharset.m4: Update.
3001         * gnulib/import/m4/locale-fr.m4: Update.
3002         * gnulib/import/m4/locale-ja.m4: Update.
3003         * gnulib/import/m4/locale-zh.m4: Update.
3004         * gnulib/import/m4/localtime-buffer.m4: Update.
3005         * gnulib/import/m4/longlong.m4: Update.
3006         * gnulib/import/m4/lstat.m4: Update.
3007         * gnulib/import/m4/malloc.m4: Update.
3008         * gnulib/import/m4/malloca.m4: Update.
3009         * gnulib/import/m4/math_h.m4: Update.
3010         * gnulib/import/m4/mbrtowc.m4: Update.
3011         * gnulib/import/m4/mbsinit.m4: Update.
3012         * gnulib/import/m4/mbsrtowcs.m4: Update.
3013         * gnulib/import/m4/mbstate_t.m4: Update.
3014         * gnulib/import/m4/memchr.m4: Update.
3015         * gnulib/import/m4/memmem.m4: Update.
3016         * gnulib/import/m4/mempcpy.m4: Update.
3017         * gnulib/import/m4/memrchr.m4: Update.
3018         * gnulib/import/m4/mkdir.m4: Update.
3019         * gnulib/import/m4/mkstemp.m4: Update.
3020         * gnulib/import/m4/mmap-anon.m4: Update.
3021         * gnulib/import/m4/mode_t.m4: Update.
3022         * gnulib/import/m4/msvc-inval.m4: Update.
3023         * gnulib/import/m4/msvc-nothrow.m4: Update.
3024         * gnulib/import/m4/multiarch.m4: Update.
3025         * gnulib/import/m4/nocrash.m4: Update.
3026         * gnulib/import/m4/off_t.m4: Update.
3027         * gnulib/import/m4/onceonly.m4: Update.
3028         * gnulib/import/m4/open-cloexec.m4: Update.
3029         * gnulib/import/m4/open.m4: Update.
3030         * gnulib/import/m4/openat.m4: Update.
3031         * gnulib/import/m4/opendir.m4: Update.
3032         * gnulib/import/m4/pathmax.m4: Update.
3033         * gnulib/import/m4/rawmemchr.m4: Update.
3034         * gnulib/import/m4/readdir.m4: Update.
3035         * gnulib/import/m4/readlink.m4: Update.
3036         * gnulib/import/m4/realloc.m4: Update.
3037         * gnulib/import/m4/rename.m4: Update.
3038         * gnulib/import/m4/rewinddir.m4: Update.
3039         * gnulib/import/m4/rmdir.m4: Update.
3040         * gnulib/import/m4/save-cwd.m4: Update.
3041         * gnulib/import/m4/secure_getenv.m4: Update.
3042         * gnulib/import/m4/setenv.m4: Update.
3043         * gnulib/import/m4/signal_h.m4: Update.
3044         * gnulib/import/m4/ssize_t.m4: Update.
3045         * gnulib/import/m4/stat-time.m4: Update.
3046         * gnulib/import/m4/stat.m4: Update.
3047         * gnulib/import/m4/std-gnu11.m4: Update.
3048         * gnulib/import/m4/stdbool.m4: Update.
3049         * gnulib/import/m4/stddef_h.m4: Update.
3050         * gnulib/import/m4/stdint.m4: Update.
3051         * gnulib/import/m4/stdio_h.m4: Update.
3052         * gnulib/import/m4/stdlib_h.m4: Update.
3053         * gnulib/import/m4/strchrnul.m4: Update.
3054         * gnulib/import/m4/strdup.m4: Update.
3055         * gnulib/import/m4/strerror.m4: Update.
3056         * gnulib/import/m4/string_h.m4: Update.
3057         * gnulib/import/m4/strstr.m4: Update.
3058         * gnulib/import/m4/strtok_r.m4: Update.
3059         * gnulib/import/m4/sys_socket_h.m4: Update.
3060         * gnulib/import/m4/sys_stat_h.m4: Update.
3061         * gnulib/import/m4/sys_time_h.m4: Update.
3062         * gnulib/import/m4/sys_types_h.m4: Update.
3063         * gnulib/import/m4/tempname.m4: Update.
3064         * gnulib/import/m4/time_h.m4: Update.
3065         * gnulib/import/m4/unistd-safer.m4: Update.
3066         * gnulib/import/m4/unistd_h.m4: Update.
3067         * gnulib/import/m4/warn-on-use.m4: Update.
3068         * gnulib/import/m4/wchar_h.m4: Update.
3069         * gnulib/import/m4/wchar_t.m4: Update.
3070         * gnulib/import/m4/wctype_h.m4: Update.
3071         * gnulib/import/m4/wint_t.m4: Update.
3072         * gnulib/import/malloc.c: Update.
3073         * gnulib/import/malloc/scratch_buffer.h: Update.
3074         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3075         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3076         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3077         * gnulib/import/malloca.c: Update.
3078         * gnulib/import/malloca.h: Update.
3079         * gnulib/import/malloca.valgrind: Update.
3080         * gnulib/import/math.in.h: Update.
3081         * gnulib/import/mbrtowc.c: Update.
3082         * gnulib/import/mbsinit.c: Update.
3083         * gnulib/import/mbsrtowcs-impl.h: Update.
3084         * gnulib/import/mbsrtowcs-state.c: Update.
3085         * gnulib/import/mbsrtowcs.c: Update.
3086         * gnulib/import/memchr.c: Update.
3087         * gnulib/import/memmem.c: Update.
3088         * gnulib/import/mempcpy.c: Update.
3089         * gnulib/import/memrchr.c: Update.
3090         * gnulib/import/mkdir.c: Update.
3091         * gnulib/import/mkstemp.c: Update.
3092         * gnulib/import/msvc-inval.c: Update.
3093         * gnulib/import/msvc-inval.h: Update.
3094         * gnulib/import/msvc-nothrow.c: Update.
3095         * gnulib/import/msvc-nothrow.h: Update.
3096         * gnulib/import/open.c: Update.
3097         * gnulib/import/openat-die.c: Update.
3098         * gnulib/import/openat-priv.h: Update.
3099         * gnulib/import/openat-proc.c: Update.
3100         * gnulib/import/openat.c: Update.
3101         * gnulib/import/openat.h: Update.
3102         * gnulib/import/opendir.c: Update.
3103         * gnulib/import/pathmax.h: Update.
3104         * gnulib/import/pipe-safer.c: Update.
3105         * gnulib/import/rawmemchr.c: Update.
3106         * gnulib/import/readdir.c: Update.
3107         * gnulib/import/readlink.c: Update.
3108         * gnulib/import/realloc.c: Update.
3109         * gnulib/import/ref-add.sin: Update.
3110         * gnulib/import/ref-del.sin: Update.
3111         * gnulib/import/rename.c: Update.
3112         * gnulib/import/rewinddir.c: Update.
3113         * gnulib/import/rmdir.c: Update.
3114         * gnulib/import/same-inode.h: Update.
3115         * gnulib/import/save-cwd.c: Update.
3116         * gnulib/import/save-cwd.h: Update.
3117         * gnulib/import/scratch_buffer.h: Update.
3118         * gnulib/import/secure_getenv.c: Update.
3119         * gnulib/import/setenv.c: Update.
3120         * gnulib/import/signal.in.h: Update.
3121         * gnulib/import/stat-time.c: Update.
3122         * gnulib/import/stat-time.h: Update.
3123         * gnulib/import/stat-w32.c: Update.
3124         * gnulib/import/stat-w32.h: Update.
3125         * gnulib/import/stat.c: Update.
3126         * gnulib/import/stdbool.in.h: Update.
3127         * gnulib/import/stddef.in.h: Update.
3128         * gnulib/import/stdint.in.h: Update.
3129         * gnulib/import/stdio.in.h: Update.
3130         * gnulib/import/stdlib.in.h: Update.
3131         * gnulib/import/str-two-way.h: Update.
3132         * gnulib/import/strchrnul.c: Update.
3133         * gnulib/import/strdup.c: Update.
3134         * gnulib/import/streq.h: Update.
3135         * gnulib/import/strerror-override.c: Update.
3136         * gnulib/import/strerror-override.h: Update.
3137         * gnulib/import/strerror.c: Update.
3138         * gnulib/import/string.in.h: Update.
3139         * gnulib/import/stripslash.c: Update.
3140         * gnulib/import/strnlen1.c: Update.
3141         * gnulib/import/strnlen1.h: Update.
3142         * gnulib/import/strstr.c: Update.
3143         * gnulib/import/strtok_r.c: Update.
3144         * gnulib/import/sys_stat.in.h: Update.
3145         * gnulib/import/sys_time.in.h: Update.
3146         * gnulib/import/sys_types.in.h: Update.
3147         * gnulib/import/tempname.c: Update.
3148         * gnulib/import/tempname.h: Update.
3149         * gnulib/import/time.in.h: Update.
3150         * gnulib/import/unistd--.h: Update.
3151         * gnulib/import/unistd-safer.h: Update.
3152         * gnulib/import/unistd.in.h: Update.
3153         * gnulib/import/unsetenv.c: Update.
3154         * gnulib/import/verify.h: Update.
3155         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3156         * gnulib/import/wchar.in.h: Update.
3157         * gnulib/import/wctype.in.h: Update.
3158         * gnulib/import/xalloc-oversized.h: Update.
3159         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3160         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3161
3162 2018-08-16  Gary Benson <gbenson@redhat.com>
3163
3164         PR gdb/13000:
3165         * gdb/main.c (captured_main_1): Exit with nonzero status
3166         in batch mode if the last command to be executed failed.
3167         * NEWS: Mention the above.
3168
3169 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3170
3171         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3172         end of warning message.
3173
3174 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3175
3176         PR gdb/22943:
3177         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3178         (aarch64_extract_return_value): Use
3179         aapcs_is_vfp_call_or_return_candidate.
3180         (aarch64_return_in_memory): Likewise.
3181         (aarch64_store_return_value): Likewise.
3182
3183 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3184
3185         * aarch64-tdep.c
3186         (aapcs_is_vfp_call_or_return_candidate): Make static
3187         (pass_in_v_or_stack): Remove function.
3188         (pass_in_v_vfp_candidate): New function.
3189         (aarch64_push_dummy_call): Check for float register candidates.
3190
3191 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3192
3193         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3194         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3195         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3196
3197 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3198
3199         PR build/23399
3200         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3201         (struct ipa_sym_addresses): Rename to...
3202         (struct ipa_sym_addresses_common): ... this.
3203         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3204
3205 2018-08-28  Tom Tromey  <tom@tromey.com>
3206
3207         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3208         (token_fifo): Now a std::vector.
3209         (yylex, c_parse): Update.
3210         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3211         (token_fifo): Now a std::vector.
3212         (yylex, d_parse): Update.
3213         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3214         (token_fifo): Now a std::vector.
3215         (yylex, go_parse): Update.
3216
3217 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3218
3219         * parser-defs.h (struct type_stack) <elements>: Change type to
3220         std::vector<union type_stack_elt>.
3221         <depth, size>: Remove.
3222         * parse.c (parse_exp_in_context_1): Adjust.
3223         (type_stack_reserve): Remove.
3224         (check_type_stack_depth): Remove.
3225         (insert_into_type_stack): Adjust to std::vector.
3226         (insert_type): Likewise.
3227         (push_type): Likewise.
3228         (push_type_int): Likewise.
3229         (insert_type_address_space): Likewise.
3230         (pop_type): Likewise.
3231         (pop_type_int): Likewise.
3232         (pop_typelist): Likewise.
3233         (pop_type_stack): Likewise.
3234         (append_type_stack): Likewise.
3235         (push_type_stack): Likewise.
3236         (get_type_stack): Likewise.
3237         (type_stack_cleanup): Likewise.
3238         (push_typelist): Likewise.
3239         (follow_types): Likewise.
3240         (_initialize_parse): Likewise.
3241
3242 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3243
3244         * NEWS: Mention csky target.
3245
3246 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3247             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3248             Don Breazeal  <donb@codesourcery.com>
3249
3250         * csky-linux-tdep.c: New file.
3251         * csky-tdep.c: Likewise.
3252         * csky-tdep.h: Likewise.
3253         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3254         csky-tdep.o.
3255         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3256         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3257         * configure.tgt: Add csky support.
3258
3259 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3260
3261         * python/py-framefilter.c (py_print_frame): Print frame architecture
3262         when printing on an MI output.
3263
3264 2018-08-27  Tom Tromey  <tom@tromey.com>
3265
3266         PR build/23087:
3267         * configure: Rebuild.
3268         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3269
3270 2018-08-27  Tom Tromey  <tom@tromey.com>
3271
3272         * aarch64-linux-tdep.c
3273         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3274         casts to int.
3275
3276 2018-08-27  Tom Tromey  <tom@tromey.com>
3277
3278         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3279         unsigned.
3280         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3281         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3282         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3283         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3284         unsigned.
3285
3286 2018-08-27  Tom Tromey  <tom@tromey.com>
3287
3288         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3289         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3290
3291 2018-08-27  Tom Tromey  <tom@tromey.com>
3292
3293         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3294         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3295         ULONGEST_MAX.
3296         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3297         ULONGEST_MAX.
3298         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3299         ULONGEST_MAX.
3300         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3301         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3302         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3303         ULONGEST_MAX.
3304         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3305         (ppc64_linux_sigaction_tramp_frame)
3306         (ppc32_linux_sighandler_tramp_frame)
3307         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3308         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3309         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3310         * mn10300-linux-tdep.c (am33_linux_sigframe)
3311         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3312         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3313         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3314         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3315         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3316         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3317         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3318         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3319         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3320         * microblaze-linux-tdep.c
3321         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3322         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3323         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3324         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3325         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3326         * common/common-types.h (ULONGEST_MAX): New define.
3327         (CORE_ADDR_MAX): Fix formatting.
3328         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3329         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3330         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3331         (arm_linux_rt_sigreturn_tramp_frame)
3332         (arm_eabi_linux_sigreturn_tramp_frame)
3333         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3334         (thumb2_eabi_linux_sigreturn_tramp_frame)
3335         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3336         (arm_linux_restart_syscall_tramp_frame)
3337         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3338         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3339         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3340         ULONGEST_MAX.
3341         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3342
3343 2018-08-27  Tom Tromey  <tom@tromey.com>
3344
3345         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3346         CORE_ADDR_MAX.
3347         * mips-tdep.c (mips_deal_with_atomic_sequence)
3348         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3349         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3350         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3351         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3352         CORE_ADDR_MAX.
3353         * aarch64-tdep.c (aarch64_software_single_step): Use
3354         CORE_ADDR_MAX.
3355
3356 2018-08-27  Tom Tromey  <tom@tromey.com>
3357
3358         * linespec.c (complete_linespec_component): Add cast to "char".
3359         * completer.c (completion_tracker::build_completion_result): Add
3360         cast to "char".
3361
3362 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3363
3364         * solist.h (struct solist, struct target_so_ops): Fix
3365         indentation.
3366
3367 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3368
3369         * ada-tasks.c (ada_task_info_s): Remove typedef.
3370         (DEF_VEC_O(ada_task_info_s)): Remove.
3371         (struct ada_tasks_inferior_data): Initialize fields.
3372         <task_list>: Make an std::vector.
3373         (get_ada_tasks_inferior_data): Allocate with new.
3374         (ada_get_task_number): Adjust.
3375         (get_task_number_from_id): Likewise.
3376         (valid_task_id): Likewise.
3377         (ada_get_task_info_from_ptid): Likewise.
3378         (iterate_over_live_ada_tasks): Likewise.
3379         (add_ada_task): Likewise.
3380         (read_known_tasks): Likewise.
3381         (ada_build_task_list): Likewise.
3382         (print_ada_task_info): Likewise.
3383         (info_task): Likewise.
3384         (task_command_1): Likewise.
3385
3386 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3387
3388         * ada-lang.c (add_angle_brackets): Return std::string.
3389
3390 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3391
3392         * python/py-threadevent.c (py_get_event_thread): Initialize
3393         pythread.
3394
3395 2018-08-24  Pedro Alves  <palves@redhat.com>
3396
3397         * python/py-bpevent.c (create_breakpoint_event_object): Use
3398         copy-initialization.
3399         * python/py-continueevent.c (emit_continue_event): Use
3400         copy-initialization.
3401         * python/py-exitedevent.c (create_exited_event_object): Return a
3402         gdbpy_ref<>.
3403         (emit_exited_event): Use copy-initialization.
3404         * python/py-inferior.c (python_new_inferior)
3405         (python_inferior_deleted, add_thread_object): Use
3406         copy-initialization.
3407         * python/py-infevents.c (create_inferior_call_event_object)
3408         (create_register_changed_event_object)
3409         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3410         (emit_inferior_call_event, emit_memory_changed_event)
3411         (emit_register_changed_event): Use copy-initialization.
3412         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3413         Return a gdbpy_ref<>.
3414         (emit_new_objfile_event): Use copy-initialization.
3415         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3416         (emit_clear_objfiles_event): Use copy-initialization.
3417         * python/py-signalevent.c (create_signal_event_object): Use
3418         copy-initialization.
3419         * python/py-threadevent.c (create_thread_event_object): Use
3420         copy-initialization.
3421
3422 2018-08-24  Pedro Alves  <palves@redhat.com>
3423             Simon Marchi  <simon.marchi@ericsson.com>
3424
3425         PR gdb/23379
3426         * python/py-continueevent.c: Include "gdbthread.h".
3427         (create_continue_event_object): Add intro comment.  Add 'ptid'
3428         parameter.  Use it to find thread to pass to
3429         create_thread_event_object.
3430         (emit_continue_event): Pass PTID down to
3431         create_continue_event_object.
3432         * python/py-event.h (py_get_event_thread): Declare.
3433         (create_thread_event_object): Remove default from 'thread'
3434         parameter.
3435         * python/py-stopevent.c (create_stop_event_object): Use
3436         py_get_event_thread.
3437         * python/py-threadevent.c (get_event_thread): Rename to ...
3438         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3439         and use it to find the thread.
3440         (create_thread_event_object): Assert that THREAD isn't null.
3441         Don't find the event thread here.
3442
3443 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3444
3445         * block.h (blockrange, blockranges): New struct declarations.
3446         (struct block): Add new field named `ranges'.
3447         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3448         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3449         macros for accessing ranges in struct block.
3450         (make_blockranges): New declaration.
3451         block.c (make_blockranges): New function.
3452         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3453         for block.
3454         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3455         * blockframe.c (cache_pc_function_block): New static global.
3456         (clear_pc_function_cache): Clear cache_pc_function_block.
3457         (find_pc_partial_function): Move comment to symtab.h.  Add
3458         support for non-contiguous blocks.
3459         * cli/cli-cmds.c (block.h): Include.
3460         (print_disassembly): Handle printing of non-contiguous blocks.
3461         (disassemble_current_function): Likewise.
3462         (disassemble_command): Likewise.
3463
3464         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3465         BLOCK_START.
3466         * blockframe.c (get_pc_function_start): Likewise.
3467         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3468         (gcc_symbol_address): Likewise.
3469         * compile/compile-object-run.c (compile_object_run): Likewise.
3470         * compile/compile.c (get_expr_block_and_pc): Likewise.
3471         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3472         (func_addr_to_tail_call_list): Likewise.
3473         * findvar.c (default_read_var_value): Likewise.
3474         * inline-frame.c (inline_frame_this_id): Likewise.
3475         (skip-inline_frames): Likewise.
3476         * infcmd.c (until_next_command): Likewise.
3477         * linespec.c (convert_linespec_to_sals): Likewise.
3478         * parse.c (parse_exp_in_context_1): Likewise.
3479         * printcmd.c (build_address_symbolic): likewise.
3480         (info_address_command): Likewise.
3481         symtab.c (find_function_start_sal): Likewise.
3482         (skip_prologue_sal): Likewise.
3483         (find_function_alias_target): Likewise.
3484         (find_gnu_ifunc): Likewise.
3485         * stack.c (find_frame_funname): Likewise.
3486         * symtab.c (fixup_symbol_section): Likewise.
3487         (find_function_start_sal): Likewise.
3488         (skip_prologue_sal): Likewsie.
3489         (find_function_alias_target): Likewise.
3490         (find_gnu_ifunc): Likewise.
3491         * tracepoint.c (info_scope_command): Likewise.
3492         * value.c (value_fn_field): Likewise.
3493
3494         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3495         in place of find_pc_partial_function.
3496         * blockframe.c (find_function_entry_range_from_pc): New function.
3497         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3498         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3499         for each range in a block.
3500
3501
3502 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3503
3504         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3505         incrementation.
3506
3507 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3508
3509         * solib-svr4.c (read_program_headers_from_bfd): Return
3510         gdb::optional<gdb::byte_vector>.
3511         (svr4_exec_displacement): Adjust.
3512
3513 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3514
3515         * solib-svr4.c (read_program_header): Return
3516         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3517         (find_program_interpreter): Return
3518         gdb::optional<gdb::byte_vector>.
3519         (scan_dyntag_auxv): Adjust.
3520         (enable_break): Adjust.
3521         (svr4_exec_displacement): Adjust.
3522
3523 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3524
3525         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3526         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3527
3528 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3529
3530         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3531         string_vprintf.
3532         * guile/scm-utils.c (gdbscm_printf): Likewise.
3533         * serial.c (serial_printf): Likewise.
3534         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3535
3536 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3537
3538         * stack.c (print_frame): Print frame architecture when printing on
3539         an MI output.
3540         * NEWS: Mention new "arch" attribute in frame output.
3541
3542 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3543
3544         * arch/aarch64.h (aarch64_regnum): Update comment.
3545
3546 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3547
3548         * NEWS: Add SVE to 8.2 section.
3549
3550 2018-08-21  Pedro Alves  <palves@redhat.com>
3551
3552         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3553         out from gdbscm_parse_function_args.
3554         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3555         gdbscm_parse_function_args_1.
3556
3557 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3558
3559         PR gdb/17816
3560         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3561         operator.
3562
3563 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3564
3565         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3566
3567 2018-08-19  Michael Spang  <spang@google.com>
3568
3569         PR gdb/11786
3570         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3571         for PT_TLS segments.
3572
3573 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3574
3575         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3576         dwarf_variable_value.
3577         * dwarf2-frame.c (class dwarf_expr_executor):
3578         Add override for dwarf_variable_value.
3579         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3580         (class symbol_needs_eval_context): Likewise.
3581         (indirect_synthetic_pointer): Add forward declaration.
3582         (sect_variable_value): New function.
3583         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3584         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3585         for DW_OP_GNU_variable_value.
3586
3587 2018-08-16  Tom Tromey  <tom@tromey.com>
3588
3589         * top.c (read_command_file): Update.
3590         (command_line_input): Remove "repeat" argument.
3591         * ada-lang.c (get_selections): Update.
3592         * linespec.c (decode_line_2): Update.
3593         * defs.h (command_line_input): Remove argument.
3594         * cli/cli-script.c (read_next_line): Update.
3595         * python/py-gdb-readline.c: Update.
3596
3597 2018-08-17  Tom Tromey  <tom@tromey.com>
3598
3599         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3600         command_line_input.
3601
3602 2018-08-15  Tom Tromey  <tom@tromey.com>
3603
3604         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3605
3606 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3607
3608         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3609         If used, use find_pc_partial_function to find address range
3610         to disassemble.
3611         * mi/mi-main.c (mi_cmd_list_features): Report
3612         "data-disassemble-a-option" feature.
3613         * NEWS: Mention new -data-disassemble option -a.
3614
3615 2018-08-13  Tom Tromey  <tom@tromey.com>
3616
3617         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3618
3619 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3620
3621         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3622         (aarch64_linux_collect_sve_regset): Likewise.
3623         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3624         * regcache.h (regcache_map_entry_size): New function.
3625
3626 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3627
3628         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3629         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3630         (SVE_HEADER_VL_LENGTH): Likewise.
3631         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3632         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3633         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3634         (SVE_HEADER_SIZE_OFFSET): Likewise.
3635         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3636         (SVE_HEADER_VL_OFFSET): Likewise.
3637         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3638         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3639         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3640         (SVE_HEADER_SIZE): Likewise.
3641         (aarch64_linux_core_read_vq): Add function.
3642         (aarch64_linux_core_read_description): Check for SVE section.
3643
3644 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3645
3646         * aarch64-fbsd-tdep.c
3647         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3648         collect_size.
3649         * aarch64-linux-tdep.c
3650         (aarch64_linux_iterate_over_regset_sections): Likewise.
3651         * alpha-linux-tdep.c
3652         (alpha_linux_iterate_over_regset_sections):
3653         * alpha-nbsd-tdep.c
3654         (alphanbsd_iterate_over_regset_sections): Likewise.
3655         * amd64-fbsd-tdep.c
3656         (amd64fbsd_iterate_over_regset_sections): Likewise.
3657         * amd64-linux-tdep.c
3658         (amd64_linux_iterate_over_regset_sections): Likewise.
3659         * arm-bsd-tdep.c
3660         (armbsd_iterate_over_regset_sections): Likewise.
3661         * arm-fbsd-tdep.c
3662         (arm_fbsd_iterate_over_regset_sections): Likewise.
3663         * arm-linux-tdep.c
3664         (arm_linux_iterate_over_regset_sections): Likewise.
3665         * corelow.c (get_core_registers_cb): Likewise.
3666         (core_target::fetch_registers): Likewise.
3667         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3668         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3669         * gdbarch.h (void): Regenerate.
3670         * gdbarch.sh: Add supply_size and collect_size.
3671         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3672         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3673         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3674         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3675         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3676         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3677         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3678         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3679         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3680         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3681         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3682         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3683         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3684         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3685         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3686         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3687         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3688         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3689         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3690         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3691         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3692         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3693         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3694         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3695         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3696         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3697         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3698         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3699         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3700         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3701
3702 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3703
3704         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3705         with string_printf.
3706
3707 2018-08-10  Keith Seitz  <keiths@redhat.com>
3708
3709         * compile/compile-c-support.c (add_code_header, add_code_footer):
3710         Move into policy class.
3711         (c_push_user_expression, pop_user_expression_nop)
3712         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3713         (compile_program): New host class.
3714         (c_compile_program): New typedef.
3715         (c_compute_porgram): Use c_compile_program.
3716
3717 2018-08-10  Keith Seitz  <keiths@redhat.com>
3718
3719         * compile/compile-internal.h (compile_instance::~compile_instance):
3720         Remove calls to htab_delete.
3721         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3722         * compile.c (compile_instance::compile_instance): Initialize
3723         htab unique pointers.
3724         (compile_instance::get_cached_type, compile_instance::insert_type)
3725         (compile_instance::error_symbol_once): Update for unique_ptr.
3726
3727 2018-08-10  Keith Seitz  <keiths@redhat.com>
3728
3729         * compile/compile-c-symbols.c (struct symbol_error)
3730         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3731         (compile_instance::insert_symbol_error)
3732         (compile_instance::error_symbol_once): Move to ...
3733         * compile/compile.c: ... here.
3734
3735 2018-08-10  Keith Seitz  <keiths@redhat.com>
3736
3737         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3738         instead of `new_compile_instance'.
3739         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3740         Update description.
3741         If the symbol error map is not initialized, create it.
3742         (generate_c_for_for_one_symbol): Do not check/initialize
3743         the symbol error map.
3744         * compile/compile-c-types.c (compile_c_instance): Make a class.
3745         Update all callers.
3746         (compile_instance::compile_instance): Initialize the type cache.
3747         (get_cached_type): New function.
3748         (insert_type): Update description.
3749         (compile_c_instance::m_default_cflags): Define.
3750         (convert_type): Update description.  Use get_cached_type.
3751         (delete_instance): Moved to destructor.
3752         (new_compile_instance): Moved to constructor.
3753         * compile/compile-c.h (compile_c_instance): Make class inheriting
3754         from compile_instance.
3755         <base>: Remove field.
3756         <type_map, symbol_err_map>: Move to base class.
3757         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3758         * compile/compile-internal.h (compile_instance): Make class.
3759         <type_map_t, symbol_err_map_t>: Define.
3760         <fe>: Rename to `m_gcc_fe'.
3761         <scope, block, gcc_target_options>: Add `m_' prefix.
3762         <m_type_map, m_symbol_err_map>: New fields, moved from
3763         compile_c_instance.
3764         <destroy>: Remove.
3765         (convert_type, new_compile_instance): Remove.
3766         * compile/compile.c (cleanup_compile_instance): Remove.
3767         (compile_to_object): Use unique_ptr to eliminate cleanups.
3768         (compile_instance::set_print_callback, compile_instance::version)
3769         (compile_instance::set_verbose)
3770         (compile_instance::set_driver_filename)
3771         (compile_instance::set_triplet_regexp)
3772         (compile_instance::set_arguments)
3773         (compile_instance::set_source_file)
3774         (compile_instance::compile): Define.
3775
3776 2018-08-10  Keith Seitz  <keiths@redhat.com>
3777
3778         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3779         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3780         gcc-c-fe.def to define C plugin.
3781         (delete_instance): Delete `c_plugin'.
3782         (new_compile_instance): Initialize `c_plugin'.
3783         * compile/compile-c.h: Include gcc_c_plugin.h.
3784         (struct compile_c_instance) <c_plugin>: New member.
3785         * gcc-c-plugin.h: New file.
3786         Update all callers with API change.
3787
3788 2018-08-10  Keith Seitz  <keiths@redhat.com>
3789
3790         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3791         (HFILES_NO_SRCDIR): ... to here.
3792         Add compile-internal.h and compile-c.h.
3793         * compile/compile-c-support.c: Include compile-c.h.
3794         * compile/compile-c-symbols.c: Include compile-c.h.
3795         (generate_c_for_variable_locations): Update comment.
3796         * compile/compile-c-types.c: Include compile-c.h.
3797         * compile/compile-c.h: New file -- moved C language declarations
3798         from other files here.
3799         * compile/compile-internal.h: Do not include hashtab.h or
3800         common/enum-flags.h.
3801         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3802         (gcc_convert_symbol, gcc_symbol_address)
3803         (generate_c_for_variable_locations, c_get_mode_for_size)
3804         (c_get_range_decl_name): Definitions moved to compile-c.h.
3805         * compile/compile-loc2c.c: Include compile-c.h.
3806
3807 2018-08-10  Keith Seitz  <keiths@redhat.com>
3808
3809         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3810         (c_symbol_substitution_name): ... this.
3811         Update all callers.
3812
3813 2018-08-10  Keith Seitz  <keiths@redhat.com>
3814
3815         * compile/compile-c-support.c (c_compute_program): Use
3816         unique_xmalloc_ptr to eliminate cleanup.
3817         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3818         Return a unique_xmalloc_ptr and eliminate cleanup.
3819         * compile/compile-internal.h (generate_c_for_variable_locations):
3820         Return unique_xmalloc_ptr and update description.
3821
3822 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3823
3824         * corelow.c (core_target::get_core_register_section): Rename
3825         min_size to section_min_size.
3826
3827 2018-08-09  Jim Wilson  <jimw@sifive.com>
3828
3829         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3830         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3831         * NEWS: Mention new GNU/Linux RISC-V target.
3832         * configure.host: Add riscv*-*-linux*.
3833         * configure.nat: Add riscv*.
3834         * configure.tgt: Add riscv*-*-linux*.
3835         * riscv-linux-nat.c: New file.
3836         * riscv-linux-tdep.c: New file.
3837
3838 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3839
3840         * infrun.c (resume): Make static, add forward declaration.
3841         (proceed): Update header comment.
3842         * infrun.h (resume): Delete declaration.
3843
3844 2018-08-09  Tom Tromey  <tom@tromey.com>
3845
3846         * riscv-tdep.h: Minor formatting fixes.
3847
3848 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3849
3850         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3851         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3852         (test_mkdir_recursive): Likewise.
3853         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3854
3855 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3856
3857         * valarith.c (value_subscripted_rvalue): If an array is not in
3858         memory, and we don't know the upper bound, then we can't know that
3859         the requested element exists or not.
3860
3861 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3862
3863         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3864         (target_options_to_string): Add comment.
3865
3866 2018-08-08  Tom Tromey  <tom@tromey.com>
3867
3868         * unittests/scoped_mmap-selftests.c: Check result of "write".
3869
3870 2018-08-08  Jim Wilson  <jimw@sifive.com>
3871
3872         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3873         (decode_register_index_short): New.
3874         (decode_j_type_insn, decode_cj_type_insn): New.
3875         (decode_b_type_insn, decode_cb_type_insn): New.
3876         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3877         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3878         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3879         is_c_sw_insn instead of is_sw_insn.
3880         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3881         (riscv_software_single_step): New.
3882         * riscv-tdep.h (riscv_software_single_step): Declare.
3883
3884         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3885         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3886
3887 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3888
3889         PR gdb/18050:
3890         * target.c (dispose_inferior): Don't dispose of inferiors that are
3891         already killed.
3892
3893 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3894
3895         * remote.c (remote_target::download_tracepoint): Change char* to
3896         const char*.
3897
3898 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3899
3900         * target.h (target_options_to_string): Return an std::string.
3901         * target.c (str_comma_list_concat_elem): Return void, use
3902         std::string.
3903         (do_option): Likewise.
3904         (target_options_to_string): Return an std::string.
3905         * linux-nat.c (linux_nat_target::wait): Adjust.
3906         * target-debug.h (target_debug_print_options): Adjust.
3907
3908 2018-08-07  Tom Tromey  <tom@tromey.com>
3909
3910         * Makefile.in (CPPFLAGS): New variable.
3911         (INTERNAL_CPPFLAGS): Use it.
3912
3913 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3914
3915         * NEWS: Mention the index cache.
3916
3917 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3918
3919         * common/pathstuff.h (get_standard_cache_dir): New.
3920         * common/pathstuff.c (get_standard_cache_dir): New.
3921         * build-id.h (build_id_to_string): New.
3922         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3923         DEBUG_STR_SUFFIX): Move to here.
3924         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3925         DEBUG_STR_SUFFIX): Move from there.
3926         (write_psymtabs_to_index): Make non-static, add basename
3927         parameter.  Write to temporary files, rename when done.
3928         (save_gdb_index_command): Adjust call to
3929         write_psymtabs_to_index.
3930         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3931         field.
3932         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3933         (get_gdb_index_contents_from_cache): New.
3934         (get_gdb_index_contents_from_cache_dwz): New.
3935         (dwarf2_initialize_objfile): Read index from cache.
3936         (dwarf2_build_psymtabs): Save to index.
3937         * dwarf-index-cache.h: New file.
3938         * dwarf-index-cache.c: New file.
3939         * dwarf-index-write.h: New file.
3940
3941 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3942
3943         * gnulib/aclocal.m4: Re-generate.
3944         * gnulib/config.in: Re-generate.
3945         * gnulib/configure: Re-generate.
3946         * gnulib/import/Makefile.am: Re-generate.
3947         * gnulib/import/Makefile.in: Re-generate.
3948         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3949         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3950         * gnulib/import/m4/mkdir.m4: New file.
3951         * gnulib/import/mkdir.c: New file.
3952         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3953         module.
3954
3955 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3956
3957         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3958         * common/scoped_mmap.c: New file.
3959         * common/scoped_mmap.h (destroy): New method.
3960         (~scoped_mmap, reset): Use destroy.
3961         (scoped_mmap): New move constructor.
3962         (mmap_file): New declaration.
3963         * unittests/scoped_mmap-selftests.c (test_normal,
3964         test_invalid_filename, run_tests): New functions.
3965         (_initialize_scoped_mmap_selftests): Register selftest.
3966
3967 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3968
3969         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3970         (read_gdb_index_from_buffer): ... this.  Remove section
3971         parameter, add buffer parameter.
3972         (get_gdb_index_contents_ftype,
3973         get_gdb_index_contents_dwz_ftype): New typedefs.
3974         (dwarf2_read_gdb_index): Add callback parameters to get the
3975         index contents.
3976         (get_gdb_index_contents_from_section): New.
3977         (dwarf2_initialize_objfile): Update call to
3978         dwarf2_read_gdb_index.
3979
3980 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3981
3982         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3983         (gdb_open_cloexec): Likewise.
3984         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3985         (commandline_from_pid): Likewise.
3986         (linux_xfer_osdata_threads): Likewise.
3987         (linux_xfer_osdata_fds): Likewise.
3988         * ada-lang.c (is_package_name): Likewise.
3989         * auxv.c (procfs_xfer_auxv): Likewise.
3990         * breakpoint.c (print_one_breakpoint_location): Use
3991         uiout::field_fmt.
3992         (print_one_catch_solib): Use string_printf.
3993         * coff-pe-read.c (add_pe_exported_sym): Likewise.
3994         (add_pe_forwarded_sym): Likewise.
3995         * dwarf2read.c (create_type_unit_group): Likewise.
3996         (build_error_marker_type): Likewise.
3997         * infcall.c (get_function_name): Likewise.
3998         * valprint.c (print_converted_chars_to_obstack): Likewise.
3999         * xtensa-tdep.c (xtensa_register_type): Likewise.
4000
4001 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4002
4003         * remote.c (remote_target::download_tracepoint): Fix format
4004         string errors.
4005
4006 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4007
4008         * tracefile.c: Include common/byte-vector.h.
4009         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4010         with trace_regblock_size if needed.  Update uses of buf.
4011
4012 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4013
4014         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4015         std::vector<unsigned char>.
4016         * tracepoint.c (collection_list::collection_list): Remove
4017         m_regs_mask initializer from initializer list.  Resize
4018         m_regs_mask using the largest remote register number.
4019         (collection_list::add_remote_register): Remove size check on
4020         m_regs_mask.  Use at to access element.
4021         (collection_list::stringify): Change type of temp_buf to
4022         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4023         stringify the register mask.  Use pack_hex_byte for the register
4024         mask.
4025
4026 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4027
4028         * tracepoint.h (class collection_list) <add_register>: Remove.
4029         <add_remote_register, add_ax_registers, add_local_register>:
4030         Declare.
4031         <add_memrange>: Add scope parameter.
4032         * tracepoint.c (encode_actions_1): Likewise.
4033         (collection_list::add_register): Rename to ...
4034         (collection_list::add_remote_register): ... this.  Update
4035         comment.
4036         (collection_list::add_ax_registers, add_local_register): New
4037         methods.
4038         (collection_list::add_memrange): Add scope parameter.  Call
4039         add_local_register instead of add_register.
4040         (finalize_tracepoint_aexpr): New function.
4041         (collection_list::collect_symbol): Update calls to add_memrange.
4042         Call add_local_register instead of add_register.  Call
4043         add_ax_registers.  Call finalize_tracepoint_aexpr.
4044         (encode_actions_1): Get remote regnos for $reg action.  Call
4045         add_remote_register, add_ax_registers, and add_local_register.
4046         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4047         (validate_actionline): Call finalize_tracepoint_aexpr.
4048
4049 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4050
4051         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4052         Replace array buf with gdb::char_vector buf, of size
4053         get_remote_packet_size ().  Replace references to buf and
4054         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4055         and xsnprintf with snprintf.  Raise errors if the buffer is too
4056         small.
4057
4058 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4059
4060         * remote.c (remote_target::download_tracepoint): Fix the has_more
4061         predicate in the QTDP action list iteration.
4062
4063 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4064
4065         * remote.c (remote_target::download_tracepoint): Fix indentation
4066         in for block.
4067
4068 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4069
4070         * proc-api.c (_initialize_proc_api): Remove c, unused.
4071         * procfs.c (procfs_init_inferior): Remove signals, unused.
4072         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4073         unused.
4074
4075 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4076             Andrew Burgess  <andrew.burgess@embecosm.com>
4077
4078         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4079         'W_STOPCODE (0)' as this could be ambiguous.
4080
4081 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4082
4083         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4084         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4085         "ai_socktype").
4086
4087 2018-08-02  Tom Tromey  <tom@tromey.com>
4088
4089         PR symtab/16842.
4090         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4091         symbols.
4092         (process_structure_scope): Likewise.
4093
4094 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4095
4096         PR gdb/22629:
4097         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4098         kill inferior.
4099
4100 2018-08-02  Tom Tromey  <tom@tromey.com>
4101
4102         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4103         (darwin_suspend_inferior, darwin_resume_inferior)
4104         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4105         (darwin_check_new_threads): Check result of get_darwin_inferior.
4106
4107 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4108
4109         GDB 8.1.1 released.
4110
4111 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4112
4113         * varobj.c (varobj_get_path_expr_parent): Report an error if
4114         parent is a dynamic varobj.
4115
4116 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4117
4118         * gnulib/aclocal.m4: Re-generate.
4119         * gnulib/config.in: Re-generate.
4120         * gnulib/configure: Re-generate.
4121         * gnulib/import/Makefile.in: Re-generate.
4122         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4123         * gnulib/import/m4/onceonly.m4: Re-generate.
4124
4125 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4126
4127         * target-descriptions.c (struct xml_test_tdesc): New.
4128         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4129         (record_xml_tdesc): Update.
4130         (maintenance_check_xml_descriptions): Update.
4131         * target-descriptions.h (record_xml_tdesc): Update comment.
4132
4133 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4134
4135         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4136         checking array bounds are defined.
4137
4138 2018-07-30  Tom Tromey  <tom@tromey.com>
4139
4140         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4141         irreflexivity violation.
4142
4143 2018-07-30  Tom Tromey  <tom@tromey.com>
4144
4145         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4146         * value.c (unpack_long): Remove lint code.
4147         * valops.c (value_ind): Remove lint code.
4148         * valarith.c (value_x_binop, value_x_unop, value_equal)
4149         (value_pos): Remove lint code.
4150
4151 2018-07-28  Tom de Vries  <tdevries@suse.de>
4152
4153         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4154         with undefined upper bound as <optimized out>.
4155
4156 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4157
4158         * gcore.in: Rename variable "name" to "prefix".  Expand
4159         "usage" text.
4160
4161 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4162
4163         * windows-nat.c (windows_nat_target::create_inferior): Update to
4164         call close() in global namespace.
4165
4166 2018-07-26  Tom Tromey  <tom@tromey.com>
4167
4168         * dwarf-index-write.c (add_address_entry): Don't add objfile
4169         offsets.
4170         * dbxread.c (find_stab_function): Rename from
4171         find_stab_function_addr.  Return a bound_minimal_symbol.
4172         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4173         Don't add objfile offsets.
4174         (end_psymtab): Use raw_text_low, raw_text_high,
4175         MSYMBOL_VALUE_RAW_ADDRESS.
4176         (read_ofile_symtab): Update.
4177         (process_one_symbol): Update.
4178         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4179         offsets.
4180         (dw2_relocate): Remove.
4181         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4182         searching addrmap.
4183         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4184         Update.
4185         (process_psymtab_comp_unit_reader, add_partial_symbol)
4186         (add_partial_subprogram, dwarf2_ranges_read): Update.
4187         (load_partial_dies): Update.
4188         (add_address_entry): Don't add objfile offsets.
4189         (dwarf2_build_include_psymtabs): Update.
4190         (create_addrmap_from_aranges): Don't add objfile offsets.
4191         (dw2_find_pc_sect_compunit_symtab): Update.
4192         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4193         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4194         Update.
4195         (parse_partial_symbols): Don't add objfile offsets.  Use
4196         raw_text_low, raw_text_high.  Update.
4197         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4198         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4199         or call 'relocate' quick function.  Clear psymbol_map.
4200         * psympriv.h (struct partial_symbol) <address>: Add section
4201         offset.
4202         <set_unrelocated_address>: Rename from set_address.
4203         <raw_text_low, raw_text_high>: New methods.
4204         <text_low, text_high>: Add objfile parameter.
4205         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4206         set_unrelocated_address.
4207         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4208         (find_pc_psymbol): Update.
4209         (fixup_psymbol_section, relocate_psymtabs): Remove.
4210         (dump_psymtab, psym_functions): Update.
4211         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4212         parameter.
4213         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4214         (start_psymtab_common): Update.
4215         * symfile-debug.c (debug_qf_relocate): Remove.
4216         (debug_sym_quick_functions): Update.
4217         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4218         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4219         Update.
4220
4221 2018-07-26  Tom Tromey  <tromey@redhat.com>
4222
4223         * dbxread.c (end_psymtab): Use text_high_valid and
4224         text_low_valid.
4225         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4226         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4227         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4228         Update comment.
4229         <text_low_valid, text_high_valid>: New fields.
4230         <set_text_low, set_text_high>: Update.
4231         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4232
4233 2018-07-26  Tom Tromey  <tom@tromey.com>
4234
4235         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4236         Update.
4237         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4238         textlow and texthigh fields.
4239         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4240         Update.
4241         * mdebugread.c (parse_lines, parse_partial_symbols)
4242         (psymtab_to_symtab_1): Update.
4243         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4244         Rename fields.  Update comment.  Now private.
4245         <text_low, text_high, set_text_low, set_text_high>: New methods.
4246         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4247         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4248         (start_psymtab_common, maintenance_info_psymtabs)
4249         (maintenance_check_psymtabs): Update.
4250         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4251         texthigh fields.
4252         (scan_xcoff_symtab): Update.
4253
4254 2018-07-26  Tom Tromey  <tromey@redhat.com>
4255
4256         * psympriv.h (struct partial_symbol) <unrelocated_address,
4257         address, set_address>: New methods.
4258         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4259         (fixup_psymbol_section, relocate_psymtabs): Update.
4260         (print_partial_symbols): Add 'objfile' parameter.  Update.
4261         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4262         Update.
4263
4264 2018-07-26  Tom Tromey  <tom@tromey.com>
4265
4266         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4267         (debug_names::write_psymbols): Update.
4268         * psympriv.h (struct partial_symbol): Derive from
4269         general_symbol_info.
4270         <obj_section>: New method.
4271         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4272         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4273         (find_pc_sect_psymbol, fixup_psymbol_section)
4274         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4275         (print_partial_symbols, recursively_search_psymtabs)
4276         (compare_psymbols, psymbol_hash, psymbol_compare)
4277         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4278         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4279
4280 2018-07-26  Tom Tromey  <tromey@redhat.com>
4281
4282         * dbxread.c (end_psymtab): Remove dead code.
4283
4284 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4285
4286         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4287         DWARF unwinders are disabled.
4288         * dwarf2-frame.c: Add dwarf2read.h include.
4289         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4290         disabled.
4291         (dwarf2_frame_unwinders_enabled_p): Define.
4292         (show_dwarf_unwinders_enabled_p): New function.
4293         (_initialize_dwarf2_frame): Register switch to control DWARF
4294         unwinder use.
4295         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4296         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4297         (show_dwarf_cmdlist): Remove static keyword.
4298         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4299         (show_dwarf_cmdlist): Declare.
4300         * NEWS: Document new feature.
4301
4302 2018-07-26  Tom de Vries  <tdevries@suse.de>
4303
4304         PR breakpoints/23366
4305         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4306
4307 2018-07-26  Tom de Vries  <tdevries@suse.de>
4308
4309         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4310         DW_AT_count can't be translated to a dynamic prop.
4311
4312 2018-07-25  Tom de Vries  <tdevries@suse.de>
4313
4314         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4315         try/catch.
4316
4317 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4318
4319         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4320
4321 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4322
4323         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4324
4325 2018-07-24  Keith Seitz  <keiths@redhat.comt
4326
4327         PR symtab/23010
4328         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4329         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4330         instead of add_symbol_to_list.
4331         (read_file_scope): Call prepare_one_comp_unit before reading
4332         any other DIEs.
4333
4334 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4335
4336         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4337
4338 2018-07-24  Tom Tromey  <tom@tromey.com>
4339
4340         * utils.c (malloc, realloc, free): Don't declare.
4341         * configure, config.in: Rebuild.
4342         * configure.ac: Don't check for declarations of free, malloc, or
4343         realloc.
4344
4345 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4346
4347         * aarch64-linux-nat.c
4348         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4349         variable.
4350         * arm-linux-nat.c (fetch_regs): Likewise.
4351         (store_regs): Likewise.
4352         (fetch_vfp_regs): Likewise.
4353         (store_vfp_regs): Likewise.
4354         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4355         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4356         (arm_linux_nat_target::insert_watchpoint): Likewise.
4357         (arm_linux_nat_target::remove_watchpoint): Likewise.
4358         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4359         Likewise.
4360         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4361         Likewise.
4362         * ppc-linux-nat.c (fetch_register): Likewise.
4363         (fetch_all_gp_regs): Likewise.
4364         (fetch_ppc_registers): Likewise.
4365         (store_all_gp_regs): Likewise.
4366         (store_ppc_registers): Likewise.
4367         (hwdebug_insert_point): Likewise.
4368         (can_use_watchpoint_cond_accel): Likewise.
4369         * remote-sim.c (gdb_os_write_stdout): Likewise.
4370
4371 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4372             Tom Tromey  <tom@tromey.com>
4373
4374         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4375         test for it.
4376         * configure: Rebuild.
4377
4378 2018-07-22  Tom Tromey  <tom@tromey.com>
4379
4380         * regformats/regdat.sh: Define xmltarget_${name} inside
4381         #ifndef IN_PROCESS_AGENT.
4382
4383 2018-07-22  Tom Tromey  <tom@tromey.com>
4384
4385         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4386
4387 2018-07-22  Tom Tromey  <tom@tromey.com>
4388
4389         * symfile.c (reread_symbols): Notify iter, not objfile.
4390
4391 2018-07-22  Tom Tromey  <tom@tromey.com>
4392
4393         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4394         Use arch_ops.
4395         (ravenscar_thread_target::prepare_to_store): Likewise.
4396
4397 2018-07-22  Tom Tromey  <tom@tromey.com>
4398
4399         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4400         unused variable.  Call value_fetch_lazy when needed.
4401         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4402         Remove unused variable.  Call value_fetch_lazy when needed.
4403
4404 2018-07-22  Tom Tromey  <tom@tromey.com>
4405
4406         * m32c-tdep.c (mark_dma): Return void.
4407         (make_regs): Remove unused declarations.
4408
4409 2018-07-22  Tom Tromey  <tom@tromey.com>
4410
4411         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4412         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4413         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4414         bkscm_get_valid_block_smob_arg_unsafe for effect.
4415
4416 2018-07-22  Tom Tromey  <tom@tromey.com>
4417
4418         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4419         value_type.
4420
4421 2018-07-22  Tom Tromey  <tom@tromey.com>
4422
4423         * windows-nat.c (saved_context): Conditionally define.
4424         * remote.c (remote_target::remote_btrace_maybe_reopen):
4425         Conditionally declare "warned".
4426         * inflow.c (sigquit_ours): Conditionally define.
4427         (new_tty): Move "tty" declaration inside #if.
4428         * guile/guile.c (guile_datadir): Conditionally define.
4429         * charset.c (set_be_le_names): Move some declarations inside #if.
4430         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4431         #if.
4432         (parse_xml_btrace_conf): Likewise.
4433
4434 2018-07-22  Tom Tromey  <tom@tromey.com>
4435
4436         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4437
4438 2018-07-22  Tom Tromey  <tom@tromey.com>
4439
4440         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4441         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4442         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4443         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4444         * stack.c (frame_apply_level_command): Remove unused variable.
4445         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4446         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4447         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4448         unused variable.
4449         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4450         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4451         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4452         variable.
4453         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4454         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4455         variable.
4456         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4457         Remove unused variable.
4458         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4459         variable.
4460         * common/tdesc.c (print_xml_feature::visit): Remove unused
4461         variable.
4462         * compile/compile-object-load.c (store_regs): Remove unused
4463         variables.
4464         * complaints.c (clear_complaints): Remove unused variable.
4465         * corelow.c (core_target_open): Remove unused variable.
4466         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4467         variable.
4468         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4469         variable.
4470         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4471         variable.
4472         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4473         variable.
4474         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4475         variable.
4476         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4477         variable.
4478         * ia64-tdep.c (examine_prologue): Remove unused variable.
4479         * infcall.c (run_inferior_call): Remove unused variable.
4480         * inferior.c (exit_inferior): Remove unused variable.
4481         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4482         * linespec.c (decode_line_2): Remove unused variable.
4483         * linux-nat.c (super_close): Remove.
4484         * linux-tdep.c (linux_info_proc): Remove unused variable.
4485         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4486         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4487         Remove unused variable.
4488         * parse.c (find_minsym_type_and_address): Remove unused variable.
4489         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4490         variable.
4491         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4492         variable.
4493         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4494         variables.
4495         * record-btrace.c (record_btrace_target::store_registers): Remove
4496         unused variable.
4497         (cmd_show_record_btrace_cpu): Remove unused variable.
4498         * riscv-tdep.c (riscv_register_reggroup_p)
4499         (riscv_push_dummy_call, riscv_return_value): Remove unused
4500         variable.
4501         * rust-exp.y (literal): Remove unused variable.
4502         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4503         unused variable.
4504         <STRUCTOP_ANONYMOUS>: Likewise.
4505         * s390-linux-tdep.c (s390_linux_init_abi_31)
4506         (s390_linux_init_abi_64): Remove unused variable.
4507         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4508         (file_select_thread, net_windows_open, _initialize_ser_windows):
4509         Remove unused variables.
4510         * symtab.c (find_pc_sect_line): Remove unused variable.
4511         * target-memory.c (compute_garbled_blocks): Remove unused
4512         variable.
4513         (target_write_memory_blocks): Remove unused variable.
4514         * target.c (target_stack::unpush): Remove unused variables.
4515         * tracepoint.c (start_tracing, all_tracepoint_actions)
4516         (merge_uploaded_trace_state_variables)
4517         (print_one_static_tracepoint_marker): Remove unused variable.
4518         * unittests/basic_string_view/element_access/char/1.cc (test01):
4519         Remove unused variable.
4520         * windows-nat.c (windows_continue, windows_add_all_dlls)
4521         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4522         Remove unused variables.
4523
4524 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4525
4526         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4527         attr_profile in HAVE_ELF.
4528         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4529         HAVE_ELF.
4530
4531 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4532
4533         * frame.c (frame_register_unwind): Change parameter name.
4534         (frame_unwind_register): Likewise.
4535         (frame_unwind_register_value): Likewise.
4536         (frame_unwind_register_signed): Likewise.
4537         (frame_unwind_register_unsigned): Likewise.
4538         * frame.h (frame_register_unwind): Likewise.
4539         (frame_unwind_register): Likewise.
4540         (frame_unwind_register_value): Likewise.
4541         (frame_unwind_register_signed): Likewise.
4542         (frame_unwind_register_unsigned): Likewise.
4543         (frame_unwind_arch): Likewise.
4544
4545 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4546
4547         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4548         ISA maintenance.
4549
4550 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4551
4552         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4553         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4554         hand.
4555
4556 2018-07-20  Keith Seitz  <keiths@redhat.com>
4557
4558         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4559         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4560         m_compunit_symtab, m_language>: Add "m_" prefix.
4561         Update all uses.
4562         * buildsym.c: Update all uses.
4563
4564 2018-07-20  Tom Tromey  <tom@tromey.com>
4565
4566         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4567         * buildsym.h (record_line_ftype): Remove typedef.
4568
4569 2018-07-20  Tom Tromey  <tom@tromey.com>
4570
4571         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4572         (end_expandable_symtab): Likewise.
4573         (end_symtab_get_static_block): Likewise.
4574         (end_symtab_from_static_block): Likewise.
4575         * buildsym-legacy.c (augment_type_symtab): Remove.
4576         (end_expandable_symtab): Remove.
4577         (end_symtab_get_static_block): Remove.
4578         (end_symtab_from_static_block): Remove.
4579
4580 2018-07-20  Tom Tromey  <tom@tromey.com>
4581
4582         * dwarf2read.c: Include buildsym.h.
4583         (struct dwarf2_cu) <builder>: New method.
4584         (fixup_go_packaging): Update.
4585         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4586         use scoped_free_pendings.
4587         (using_directives): Add "cu" parameter, remove "language".
4588         (read_import_statement, setup_type_unit_groups, )
4589         (read_func_scope, read_lexical_block_scope)
4590         (dwarf2_record_block_ranges, read_namespace): Update.
4591         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4592         (lnp_state_machine::handle_end_sequence): Update.
4593         (class lnp_state_machine) <m_cu>: New member.
4594         <m_record_line_callback>: Remove.
4595         <m_currently_recording_lines>: New member.
4596         (lnp_state_machine::handle_set_file): Update.
4597         (noop_record_line): Remove.
4598         (dwarf_record_line_p): Add cu parameter.
4599         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4600         (lnp_state_machine::record_line)
4601         (lnp_state_machine::lnp_state_machine)
4602         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4603         (dwarf_decode_lines): Update.
4604         (dwarf2_start_subfile): Add cu parameter.
4605         (dwarf2_start_symtab, new_symbol): Update.
4606         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4607         Remove dwarf2_per_objfile parameter.
4608         (dwarf_decode_macros): Update.
4609
4610 2018-07-20  Tom Tromey  <tom@tromey.com>
4611
4612         * stabsread.c (define_symbol): Update.
4613         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4614         * dwarf2read.c (new_symbol): Update.
4615         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4616         * cp-namespace.c: Include buildsym.h.
4617         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4618         * buildsym-legacy.c (get_buildsym_compunit): New function.
4619
4620 2018-07-20  Tom Tromey  <tom@tromey.com>
4621
4622         * xcoffread.c: Include buildsym-legacy.h.
4623         * windows-nat.c: Include buildsym-legacy.h.
4624         * stabsread.c: Include buildsym-legacy.h.
4625         * mdebugread.c: Include buildsym-legacy.h.
4626         * buildsym-legacy.h: New file.
4627         * buildsym-legacy.c: New file, from buildsym.c.
4628         * go32-nat.c: Include buildsym-legacy.h.
4629         * dwarf2read.c: Include buildsym-legacy.h.
4630         * dbxread.c: Include buildsym-legacy.h.
4631         * cp-namespace.c: Include buildsym-legacy.h.
4632         * coffread.c: Include buildsym-legacy.h.
4633         * buildsym.h: Move some contents to buildsym-legacy.h.
4634         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4635         buildsym-legacy.c.
4636         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4637
4638 2018-07-20  Tom Tromey  <tom@tromey.com>
4639
4640         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4641         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4642         (buildsym_compunit::buildsym_compunit)
4643         (buildsym_compunit::~buildsym_compunit)
4644         (buildsym_compunit::get_macro_table): Define.
4645
4646 2018-07-20  Tom Tromey  <tom@tromey.com>
4647
4648         * buildsym.c (reset_symtab_globals): Remove.
4649         (buildsym_compunit::end_symtab_from_static_block): Update.
4650         (buildsym_compunit::augment_type_symtab): Update.
4651         (end_symtab_from_static_block): Call free_buildsym_compunit.
4652         (augment_type_symtab, end_symtab, end_expandable_symtab):
4653         Likewise.
4654
4655 2018-07-20  Tom Tromey  <tom@tromey.com>
4656
4657         * arch-utils.c: Do not include buildsym.h.
4658         * mipsread.c: Do not include buildsym.h.
4659         * machoread.c: Do not include buildsym.h.
4660         * elfread.c: Do not include buildsym.h.
4661
4662 2018-07-20  Tom Tromey  <tom@tromey.com>
4663
4664         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4665         initialization.
4666         (buildsym_compunit): Add new constructor.
4667         (struct buildsym_compunit) <get_last_source_file, finish_block,
4668         record_block_range, start_subfile, patch_subfile_names,
4669         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4670         set_last_source_start_addr, get_last_source_start_addr,
4671         get_local_using_directives, set_local_using_directives,
4672         get_global_using_directives, outermost_context_p,
4673         get_current_context_stack, get_context_stack_depth,
4674         get_current_subfile, get_local_symbols, get_file_symbols,
4675         get_global_symbols, record_debugformat, record_producer,
4676         push_context, pop_context, end_symtab_get_static_block,
4677         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4678         New public methods.
4679         <record_pending_block, finish_block_internal, make_blockvector,
4680         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4681         private methods.
4682         Update all users.
4683
4684 2018-05-22  Tom Tromey  <tom@tromey.com>
4685
4686         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4687         parameter.
4688         (finish_block_internal): Update.
4689
4690 2018-07-20  Tom Tromey  <tom@tromey.com>
4691
4692         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4693         parameter.
4694         (finish_block_internal): Update.
4695
4696 2018-07-20  Tom Tromey  <tom@tromey.com>
4697
4698         * buildsym.h (EXTERN): Don't define or undef.
4699         * buildsym.c (EXTERN): Don't define.
4700
4701 2018-07-20  Tom Tromey  <tom@tromey.com>
4702
4703         * buildsym.c: Remove TODO comment.
4704
4705 2018-07-20  Tom Tromey  <tom@tromey.com>
4706
4707         * coffread.c (coff_symtab_read): Update.
4708         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4709         (xcoff_new_init): Update.
4710         * mipsread.c (mipscoff_new_init): Update.
4711         * mdebugread.c (mdebug_build_psymtabs): Update.
4712         * elfread.c (elf_new_init): Update.
4713         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4714         Update.
4715         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4716         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4717         (stabsect_build_psymtabs): Update.
4718         * buildsym.h (buildsym_init): Don't declare.
4719         * buildsym.c: Update comment.
4720         (prepare_for_building): Remove.
4721         (start_symtab, restart_symtab): Update.
4722         (reset_symtab_globals): Update comment.
4723         (buildsym_init): Remove.
4724
4725 2018-07-20  Tom Tromey  <tom@tromey.com>
4726
4727         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4728         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4729         (read_enum_type, common_block_start, common_block_end)
4730         (cleanup_undefined_types_1, finish_global_stabs): Update.
4731         * mdebugread.c (psymtab_to_symtab_1): Update.
4732         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4733         (read_lexical_block_scope, new_symbol): Update.
4734         * dbxread.c (process_one_symbol): Update.
4735         * coffread.c (coff_symtab_read, process_coff_symbol)
4736         (coff_read_enum_type): Update.
4737         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4738         declare.
4739         (get_local_symbols, get_file_symbols, get_global_symbols): New
4740         functions.
4741         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4742         m_global_symbols.
4743         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4744         (~scoped_free_pendings): Update.
4745         (finish_block, prepare_for_building, reset_symtab_globals)
4746         (end_symtab_get_static_block, end_symtab_with_blockvector)
4747         (augment_type_symtab, push_context): Update.
4748         (get_local_symbols, get_file_symbols, get_global_symbols): New
4749         functions.
4750         (buildsym_init): Update.
4751
4752 2018-07-20  Tom Tromey  <tom@tromey.com>
4753
4754         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4755         (process_full_type_unit): Likewise.
4756         (dwarf2_start_symtab): Set list_in_scope.
4757
4758 2018-07-20  Tom Tromey  <tom@tromey.com>
4759
4760         * dwarf2read.c (process_psymtab_comp_unit_reader)
4761         (build_type_psymtabs_reader): Do not set list_in_scope.
4762
4763 2018-07-20  Tom Tromey  <tom@tromey.com>
4764
4765         * buildsym.c (free_pendings): Remove.
4766         (add_symbol_to_list, scoped_free_pendings)
4767         (finish_block_internal, buildsym_init): Update.
4768
4769 2018-07-20  Tom Tromey  <tom@tromey.com>
4770
4771         * xcoffread.c (read_xcoff_symtab): Update.
4772         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4773         Update.
4774         * dbxread.c (process_one_symbol): Update.
4775         * coffread.c (coff_symtab_read): Update.
4776         * buildsym.h (finish_block): Update.
4777         * buildsym.c (finish_block): Remove "listhead" argument.
4778         (end_symtab_get_static_block): Update.
4779
4780 2018-07-20  Tom Tromey  <tom@tromey.com>
4781
4782         * buildsym.h (class scoped_free_pendings): Remove constructor.
4783         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4784         method.
4785         <m_pending_block_obstack, m_pending_blocks>: New members.
4786         (pending_block_obstack, pending_blocks): Remove.
4787         (scoped_free_pendings::scoped_free_pendings): Default.
4788         (~scoped_free_pendings): Update.
4789         (free_pending_blocks): Remove.
4790         (finish_block_internal, record_pending_block, make_blockvector)
4791         (end_symtab_get_static_block, augment_type_symtab, push_context)
4792         (buildsym_init): Update.
4793
4794 2018-07-20  Tom Tromey  <tom@tromey.com>
4795
4796         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4797         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4798         members.
4799         (pending_addrmap, pending_addrmap_obstack)
4800         (pending_addrmap_interesting): Remove.
4801         (scoped_free_pendings, record_block_range, make_blockvector)
4802         (prepare_for_building, reset_symtab_globals, buildsym_init):
4803         Update.
4804
4805 2018-07-20  Tom Tromey  <tom@tromey.com>
4806
4807         * xcoffread.c (process_linenos): Update.
4808         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4809         * mdebugread.c (psymtab_to_symtab_1): Update.
4810         * dwarf2read.c (setup_type_unit_groups)
4811         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4812         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4813         * dbxread.c (process_one_symbol): Update.
4814         * coffread.c (coff_symtab_read, enter_linenos)
4815         (process_coff_symbol): Update.
4816         * buildsym.h (current_subfile): Don't declare.
4817         (get_current_subfile): Declare.
4818         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4819         member.
4820         (start_subfile, free_buildsym_compunit, push_subfile)
4821         (prepare_for_building, start_symtab): Update.
4822         (get_current_subfile): New function.
4823
4824 2018-07-20  Tom Tromey  <tom@tromey.com>
4825
4826         * coffread.c (coff_symtab_read): Update.
4827         * xcoffread.c (read_xcoff_symtab): Update.
4828         * dwarf2read.c (new_symbol): Update.
4829         (read_func_scope, read_lexical_block_scope): Update.
4830         * dbxread.c (process_one_symbol): Update.
4831         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4832         (outermost_context_p): Remove macro.
4833         (outermost_context_p, get_current_context_stack)
4834         (get_context_stack_depth): Declare.
4835         (pop_context): Return struct context_stack.
4836         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4837         member.
4838         (context_stack_size): Remove.
4839         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4840         (prepare_for_building, end_symtab_get_static_block)
4841         (augment_type_symtab, push_context): Update.
4842         (pop_context): Return struct context_stack.
4843         (outermost_context_p, get_current_context_stack)
4844         (get_context_stack_depth): New functions.
4845         (buildsym_init): Update.
4846
4847 2018-07-20  Tom Tromey  <tom@tromey.com>
4848
4849         * rust-exp.y: Now a pure parser.  Update all rules.
4850         (%union): Move earlier.
4851         (current_parser, work_obstack): Remove globals.
4852         (rust_parser, ~rust_parser): Update.
4853         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4854         lex_character, lex_number, lex_string, lex_identifier,
4855         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4856         convert_name, convert_params_to_expression,
4857         convert_ast_to_expression, ast_basic_type, ast_operation,
4858         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4859         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4860         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4861         ast_array_type, ast_slice_type, ast_reference_type,
4862         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4863         (rust_parse): Update.
4864         (rustyyerror, rustyylex): Add parser parameter.
4865         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4866         (rust_lex_stringish_test, rust_lex_test_sequence)
4867         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4868         (rust_lex_test_push_back, rust_lex_tests): Update.
4869
4870 2018-07-19  Pedro Alves  <palves@redhat.com>
4871
4872         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4873         gdb::unique_xmalloc_ptr.
4874         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4875         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4876         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4877         copy-initialization.
4878         * guile/scm-pretty-print.c (ppscm_print_children): Use
4879         gdb::unique_xmalloc_ptr instead of cleanups.
4880         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4881         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4882         gdb::unique_xmalloc_ptr.
4883         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4884         Adjust to use gdb::unique_xmalloc_ptr.
4885         * guile/scm-utils.c (extract_arg): Adjust.
4886         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4887         gdb::unique_xmalloc_ptr instead of a cleanup.
4888
4889 2018-07-19  Tom Tromey  <tom@tromey.com>
4890
4891         * utils.c (do_value_free_to_mark)
4892         (make_cleanup_value_free_to_mark): Remove.
4893         * utils.h (make_cleanup_value_free_to_mark): Remove.
4894
4895 2018-07-19  Pedro Alves  <palves@redhat.com>
4896
4897         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4898         forwarding reference.
4899
4900 2018-07-18  Pedro Alves  <palves@redhat.com>
4901
4902         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4903         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4904         cleanup.
4905
4906 2018-07-18  Pedro Alves  <palves@redhat.com>
4907
4908         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4909         exceptions.
4910         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4911         (gdbscm_wrap): New.
4912         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4913         directly instead of a cleanup.
4914         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4915         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4916         (vlscm_binop_gdbthrow): New, factored out from ...
4917         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4918         (vlscm_rich_compare): Use gdbscm_wrap.
4919         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4920         instead of a cleanup.
4921         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4922         cleanup.
4923         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4924         Use xfree directly instead of a cleanup.
4925         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4926         Adjust to use gdbscm_wrap and scoped_value_mark.
4927         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4928         (gdbscm_value_address, gdbscm_value_dereference)
4929         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4930         scoped_value_mark.
4931         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4932         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4933         scoped_value_mark.
4934         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4935         gdbscm_wrap and scoped_value_mark.
4936         (gdbscm_value_to_string): Use xfree directly instead of a
4937         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4938         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4939         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4940         scoped_value_mark.
4941         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4942         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4943         scoped_value_mark.
4944         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4945         gdbscm_wrap.
4946
4947 2018-07-18  Tom de Vries  <tdevries@suse.de>
4948
4949         * findvar.c (default_read_var_value): Also resolve dynamic type for
4950         LOC_OPTIMIZED_OUT vars.
4951
4952 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4953
4954         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4955         decoding.
4956
4957 2018-07-17  Tom Tromey  <tom@tromey.com>
4958
4959         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4960         (compute_enum_list, pascm_set_param_value_x)
4961         (gdbscm_parameter_value): Update.
4962         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4963         (gdbscm_scm_to_host_string): Update.
4964         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4965         Update.
4966         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4967         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4968         * guile/scm-string.c (gdbscm_scm_to_string): Return
4969         unique_xmalloc_ptr.
4970         (gdbscm_scm_to_host_string): Likewise.
4971
4972 2018-07-17  Tom Tromey  <tom@tromey.com>
4973
4974         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4975         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4976         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4977         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4978         unique_xmalloc_ptr.
4979
4980 2018-07-17  Tom Tromey  <tom@tromey.com>
4981
4982         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4983         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4984         Update.
4985         * guile/scm-cmd.c (cmdscm_function): Update.
4986         * guile/scm-pretty-print.c
4987         (ppscm_print_exception_unless_memory_error): Update.
4988         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4989         Return unique_xmalloc_ptr.
4990
4991 2018-07-17  Tom Tromey  <tom@tromey.com>
4992
4993         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
4994         Use string_printf.
4995
4996 2018-07-17  Jim Wilson  <jimw@sifive.com>
4997
4998         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
4999         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5000         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5001         unecessary braces after EF_RISCV_RVC test.  Delete call to
5002         set_gdbarch_decr_pc_after_break.
5003
5004         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5005         RISCV_LAST_FP_REGNUM + 1.
5006         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5007
5008 2018-07-17  Tom Tromey  <tom@tromey.com>
5009
5010         * configure.ac: Remove --disable-gdbcli.
5011         * configure: Rebuild.
5012         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5013         (SUBDIR_CLI_CFLAGS): Remove.
5014         (SFILES): Use SUBDIR_CLI_SRCS.
5015         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5016
5017 2018-07-17  Tom Tromey  <tom@tromey.com>
5018
5019         PR gdb/18624:
5020         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5021
5022 2018-07-16  Jim Wilson  <jimw@sifive.com>
5023
5024         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5025
5026 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5027
5028         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5029         variable.
5030         (libunwind_frame_sniffer): Likewise.
5031         (libunwind_frame_prev_register): Likewise.
5032         (libunwind_sigtramp_frame_sniffer): Likewise.
5033         * ia64-tdep.c (ia64_access_reg): Likewise.
5034         (ia64_access_rse_reg): Likewise.
5035         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5036         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5037
5038 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5039
5040         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5041
5042 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5043
5044         * remote-sim.c (gdbsim_target::close,
5045         gdbsim_target::mourn_inferior): Remove unused variables.
5046
5047 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5048
5049         * ia64-tdep.c (ktab_buf): New global.
5050         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5051         (get_kernel_table): Adjust.
5052
5053 2018-07-16  Tom Tromey  <tom@tromey.com>
5054
5055         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5056         * dwarf2read.c (using_directives, new_symbol): Use
5057         outermost_context_p.
5058         * dbxread.c (process_one_symbol): Use outermost_context_p.
5059         * coffread.c (coff_symtab_read): Use outermost_context_p.
5060
5061 2018-07-16  Tom Tromey  <tom@tromey.com>
5062
5063         * dwarf2read.c (using_directives, read_func_scope)
5064         (read_lexical_block_scope): Update.
5065         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5066         * buildsym.h (local_using_directives, global_using_directives):
5067         Don't declare.
5068         (get_local_using_directives, set_local_using_directives)
5069         (get_global_using_directives): Declare.
5070         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5071         m_global_using_directives>: New members.
5072         (finish_block_internal, prepare_for_building)
5073         (reset_symtab_globals, end_symtab_get_static_block)
5074         (push_context): Update.
5075         (get_local_using_directives, set_local_using_directives)
5076         (get_global_using_directives): New functions.
5077         (buildsym_init): Update.
5078
5079 2018-07-16  Tom Tromey  <tom@tromey.com>
5080
5081         * xcoffread.c (xcoff_initial_scan): Don't call
5082         free_pending_blocks.
5083         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5084         * buildsym.h (class scoped_free_pendings): Add constructor.
5085         (free_pending_blocks): Don't declare.
5086         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5087         (free_pending_blocks): Now static.
5088
5089 2018-07-16  Tom Tromey  <tom@tromey.com>
5090
5091         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5092         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5093         member.
5094         (struct subfile_stack): Remove.
5095         (subfile_stack): Remove.
5096         (push_subfile, pop_subfile, buildsym_init): Update.
5097
5098 2018-07-16  Tom Tromey  <tom@tromey.com>
5099
5100         * buildsym.c (push_subfile): Use gdb_assert.
5101         (pop_subfile): Use gdb_assert.
5102
5103 2018-07-16  Tom Tromey  <tom@tromey.com>
5104
5105         * buildsym.h (merge_symbol_lists): Remove.
5106         * buildsym.c (merge_symbol_lists): Remove.
5107
5108 2018-07-16  Tom Tromey  <tom@tromey.com>
5109
5110         * stabsread.c (scan_file_globals): Update comment.
5111         * stabsread.h (scan_file_globals): Move from buildsym.h.
5112         * buildsym.h (scan_file_globals): Move to stabsread.h.
5113
5114 2018-07-16  Tom Tromey  <tom@tromey.com>
5115
5116         * xcoffread.c (xcoff_new_init): Update.
5117         * mipsread.c (mipscoff_new_init): Update.
5118         * mdebugread.c (mdebug_build_psymtabs): Update.
5119         * elfread.c (elf_new_init): Update.
5120         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5121         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5122         * buildsym.h (buildsym_new_init): Don't declare.
5123         * buildsym.c (buildsym_new_init): Remove.
5124
5125 2018-07-16  Tom Tromey  <tom@tromey.com>
5126
5127         * stabsread.h (within_function): Move from buildsym.h.
5128         * stabsread.c (start_stabs): Clear within_function.
5129         * coffread.c (coff_start_symtab): Clear within_function.
5130         * buildsym.h (within_function): Move to stabsread.h.
5131         * buildsym.c (prepare_for_building): Update.
5132
5133 2018-07-16  Tom Tromey  <tom@tromey.com>
5134
5135         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5136         * dwarf2read.c (dwarf2_start_symtab): Don't set
5137         processing_gcc_compilation.
5138         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5139
5140 2018-07-16  Tom Tromey  <tom@tromey.com>
5141
5142         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5143         (next_symbol_text_func): Move from buildsym.h.
5144         * stabsread.c (hashname): Move from buildsym.c.
5145         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5146         (next_symbol_text_func, hashname): Move to stabsread.h.
5147         * buildsym.c: Don't include bcache.h
5148         (hashname): Move to stasbread.c.
5149
5150 2018-07-16  Tom Tromey  <tom@tromey.com>
5151
5152         * buildsym.h (context_stack_size): Don't declare.
5153         * buildsym.c (context_stack_size): New global.
5154
5155 2018-07-16  Tom Tromey  <tom@tromey.com>
5156
5157         * dbxread.c (processing_acc_compilation): New global.
5158         * buildsym.h (processing_acc_compilation): Don't declare.
5159
5160 2018-07-16  Tom Tromey  <tom@tromey.com>
5161
5162         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5163         * dbxread.c (read_ofile_symtab): Update.
5164         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5165         * buildsym.h (last_source_start_addr): Remove.
5166         (set_last_source_start_addr, get_last_source_start_addr):
5167         Declare.
5168         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5169         parameter.
5170         (struct buildsym_compunit) <m_last_source_start_addr>: New
5171         member.
5172         (prepare_for_building): Remove start_addr parameter.
5173         (start_symtab, restart_symtab, end_symtab_get_static_block)
5174         (end_symtab_with_blockvector): Update.
5175         (set_last_source_start_addr, get_last_source_start_addr): New
5176         functions.
5177
5178 2018-07-16  Tom Tromey  <tom@tromey.com>
5179
5180         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5181         member.
5182         (have_line_numbers): Remove.
5183         (record_line, prepare_for_building, end_symtab_get_static_block)
5184         (augment_type_symtab): Update.
5185
5186 2018-07-16  Tom Tromey  <tom@tromey.com>
5187
5188         * buildsym.c (~buildsym_compunit): Free the macro table.
5189         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5190         methods.
5191         <m_pending_macros>: New member.
5192         (pending_macros): Remove.
5193         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5194         (reset_symtab_globals, end_symtab_get_static_block)
5195         (end_symtab_with_blockvector, augment_type_symtab)
5196         (buildsym_init): Update.
5197
5198 2018-07-16  Tom Tromey  <tom@tromey.com>
5199
5200         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5201         parameter.
5202         (buildsym_compunit::set_last_source_file): New method.
5203         <m_last_source_file>: New member.
5204         (prepare_for_building): Remove "name" parameter.
5205         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5206         (last_source_file): Remove.
5207         (set_last_source_file, get_last_source_file): Update.
5208
5209 2018-07-16  Tom Tromey  <tom@tromey.com>
5210
5211         * buildsym.c (prepare_for_building): Add assert.
5212
5213 2018-07-16  Tom Tromey  <tom@tromey.com>
5214
5215         * buildsym.c (~buildsym_compunit): Update.
5216         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5217         (start_subfile, patch_subfile_names)
5218         (end_symtab_with_blockvector): Update.
5219
5220 2018-07-16  Tom Tromey  <tom@tromey.com>
5221
5222         * buildsym.c (struct buildsym_compunit): Add constructor,
5223         destructor, initializers.
5224         (start_buildsym_compunit): Remove.
5225         (free_buildsym_compunit): Use "delete".
5226         (start_symtab, restart_symtab): Use "new".
5227
5228 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5229
5230         * symfile.c (set_objfile_default_section_offset): Remove struct
5231         keyword.
5232
5233 2018-07-14  Stafford Horne  <shorne@gmail.com>
5234
5235         * (Responsible Maintainers): Add myself as or1k maintainer.
5236
5237 2018-07-13  Tom Tromey  <tom@tromey.com>
5238
5239         * symfile.c (set_objfile_default_section_offset): Use extra braces
5240         around initializer.
5241
5242 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5243
5244         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5245         non-branching basr.
5246
5247 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5248
5249         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5250         unittests/cli-utils-selftests.c
5251         * unittests/cli-utils-selftests.c: New file.
5252
5253 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5254
5255         * NEWS: Mention new commands. Mention change to 'thread apply'.
5256
5257 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5258
5259         * thread.c (thr_try_catch_cmd): New function.
5260         (thread_apply_all_command): Handle qcs flags.
5261         (thread_apply_command): Handle qcs flags.
5262         (taas_command): New function.
5263         (tfaas_command): New function.
5264         (_initialize_thread): Update to setup the new commands 'taas
5265         and 'tfaas'. Change doc string for 'thread apply'.
5266
5267 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5268
5269         * stack.c: (trailing_outermost_frame): New function, mostly
5270         extracted from backtrace_command_1.
5271         (leading_innermost_frame): New function.
5272         (backtrace_command_1): Update to call trailing_outermost_frame.
5273         (frame_apply_command_count): New function.
5274         (frame_apply_level_command): New function.
5275         (frame_apply_all_command): New function.
5276         (frame_apply_command): New function.
5277         (faas_command): New function.
5278         (frame_cmd_list): New variable.
5279         (_initialize_stack): Update to setup the new commands 'frame apply'
5280         and 'faas'.
5281
5282 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5283
5284         * cli-utils.c (number_or_range_parser::get_number): Only handle
5285         numbers or convenience var as numbers.
5286         (parse_flags): New function.
5287         (parse_flags_qcs): New function.
5288         (number_or_range_parser::finished): Ensure parsing end is detected
5289         before end of string.
5290         * cli-utils.h (parse_flags): New function.
5291         (parse_flags_qcs): New function.
5292         (number_or_range_parser): Remove m_finished bool.
5293         (number_or_range_parser::skip_range): Set m_in_range to false.
5294
5295 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5296
5297         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5298         on Windows.
5299
5300 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5301             Jan Kratochvil  <jan.kratochvil@redhat.com>
5302             Paul Fertser  <fercerpav@gmail.com>
5303             Tsutomu Seki  <sekiriki@gmail.com>
5304             Pedro Alves  <palves@redhat.com>
5305
5306         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5307         'unittests/parse-connection-spec-selftests.c'.
5308         (COMMON_SFILES): Add 'common/netstuff.c'.
5309         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5310         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5311         * common/netstuff.c: New file.
5312         * common/netstuff.h: New file.
5313         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5314         (wait_for_connect): Update comment.  New parameter
5315         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5316         Use 'sock' directly instead of 'scb->fd'.
5317         (try_connect): New function, with code from 'net_open'.
5318         (net_open): Rewrite main loop to deal with multiple
5319         sockets/addresses.  Handle IPv6-style hostnames; implement
5320         support for IPv6 connections.
5321         * unittests/parse-connection-spec-selftests.c: New file.
5322
5323 2018-07-11  Pedro Alves  <palves@redhat.com>
5324
5325         PR gdb/23377
5326         * remote.c (remote_target::remote_detach_pid): Call
5327         set_current_process.
5328
5329 2018-07-11  Pedro Alves  <palves@redhat.com>
5330
5331         * h8300-tdep.c (h8300_gdbarch_init): Remove
5332         set_gdbarch_ecoff_reg_to_regnum calls.
5333
5334 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5335
5336         PR c++/23373
5337         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5338         offsets/sizes for static members of a class/struct.
5339
5340 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5341
5342         * target-descriptions.c (tdesc_register_bitsize): Rename.
5343         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5344         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5345         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5346
5347 2018-07-10  Tom Tromey  <tom@tromey.com>
5348
5349         * breakpoint.c (moribund_locations): Now static and a
5350         std::vector.
5351         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5352         (build_bpstat_chain, update_global_location_list)
5353         (breakpoint_retire_moribund): Update.
5354         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5355         VEC.
5356
5357 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5358
5359         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5360         (riscv_register_reggroup_p): Use new function, remove unneeded
5361         parenthesis.
5362         (riscv_push_dummy_call): Extend assert to compare against xlen or
5363         flen based on register type.
5364
5365 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5366
5367         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5368
5369 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5370
5371         * remote.c (show_hardware_watchpoint_limit): New function.
5372         (show_hardware_watchpoint_length_limit): New function.
5373         (show_hardware_breakpoint_limit): New function.
5374         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5375         where appropriate, update help text.
5376
5377 2018-07-09  Tom Tromey  <tom@tromey.com>
5378
5379         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5380         (CLIBS): Don't mention NAT_CLIBS.
5381
5382 2018-07-09  Tom Tromey  <tom@tromey.com>
5383
5384         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5385         (LIBGDB_OBS, clean mostlyclean): Update.
5386         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5387
5388 2018-07-09  Tom Tromey  <tom@tromey.com>
5389
5390         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5391         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5392         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5393
5394 2018-07-09  Tom Tromey  <tom@tromey.com>
5395
5396         * Makefile.in (ALLDEPFILES): Remove exec.c.
5397         (COMMON_OBS): Remove exec.o.
5398         (COMMON_SFILES): Add exec.c.
5399
5400 2018-07-09  Tom Tromey  <tom@tromey.com>
5401
5402         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5403
5404 2018-07-09  Tom Tromey  <tom@tromey.com>
5405
5406         * Makefile.in (clean mostlyclean): Remove stamp-version.
5407         (version.c): Depend on stamp-version.
5408         (stamp-version): New rule, from version.c rule.
5409
5410 2018-07-09  Tom Tromey  <tom@tromey.com>
5411
5412         * Makefile.in (init.c): Depend on stamp-init.
5413         (stamp-init): New rule, from init.c rule.
5414         (clean mostlyclean): Remove stamp-init.
5415
5416 2018-07-09  Tom Tromey  <tom@tromey.com>
5417
5418         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5419         SUBDIR_GCC_COMPILE_SRCS.
5420
5421 2018-07-09  Tom Tromey  <tom@tromey.com>
5422
5423         * Makefile.in (init.c): Remove some unused sed rules.
5424
5425 2018-07-09  Tom Tromey  <tom@tromey.com>
5426
5427         * Makefile.in (TSOBS): Remove.
5428         (INIT_FILES): Update.
5429         (LIBGDB_OBS): Update.
5430         (COMMON_SFILES): Add inflow.c.
5431         (SFILES): Remove inflow.c.
5432
5433 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5434
5435         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5436
5437 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5438
5439         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5440         get_saveloc_name, is_signal_frame_name, step_name,
5441         init_remote_name, create_addr_space_name,
5442         destroy_addr_space_name, search_unwind_table_name,
5443         find_dyn_list_name): Constify.
5444
5445 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5446
5447         * darwin-nat.c (darwin_pthread_kill): New function.
5448         (darwin_resume_thread): Use darwin_pthread_kill.
5449
5450 2018-07-05  Tom de Vries  <tdevries@suse.de>
5451
5452         * macroexp.c (macro_buffer) <operator=>: New member function.
5453
5454 2018-07-04  Tom Tromey  <tom@tromey.com>
5455
5456         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5457
5458 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5459
5460         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5461         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5462         * maint.c: Likewise.
5463         * top.c: Likewise.
5464
5465 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5466
5467         * NEWS: Create a new section for the next release branch.
5468         Rename the section of the current branch, now that it has
5469         been cut.
5470
5471 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5472
5473         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5474         * version.in: Bump version to 8.2.50.DATE-git.
5475
5476 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5477             Pedro Alves  <palves@redhat.com>
5478
5479         * linux-nat.c (linux_init_ptrace): Rename to ...
5480         (linux_init_ptrace_procfs): ... this.  Call
5481         linux_proc_init_warnings.
5482         (linux_nat_target::post_attach)
5483         (linux_nat_target::post_startup_inferior): Adjust.
5484         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5485         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5486
5487 2018-07-04  Tom de Vries  <tdevries@suse.de>
5488
5489         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5490         check ...
5491         (read_comp_unit_head): ... here.
5492
5493 2018-07-03  Tom Tromey  <tom@tromey.com>
5494
5495         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5496         (stop_tracing, tstatus_command)
5497         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5498         (print_one_static_tracepoint_marker): Update.
5499         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5500         std::vector.
5501         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5502         VEC.
5503         (all_tracepoints, static_tracepoints_here): Return std::vector.
5504
5505 2018-07-03  Tom Tromey  <tom@tromey.com>
5506
5507         * common/ptid.c (ptid_equal): Remove.
5508         * common/ptid.h (ptid_equal): Don't declare.
5509         * ada-tasks.c: Update.
5510         * breakpoint.c: Update.
5511         * common/agent.c: Update.
5512         * corelow.c: Update.
5513         * darwin-nat-info.c: Update.
5514         * darwin-nat.c: Update.
5515         * dcache.c: Update.
5516         * dtrace-probe.c: Update.
5517         * dummy-frame.c: Update.
5518         * fbsd-nat.c: Update.
5519         * frame.c: Update.
5520         * gdbthread.h: Update.
5521         * gnu-nat.c: Update.
5522         * go32-nat.c: Update.
5523         * inf-loop.c: Update.
5524         * inf-ptrace.c: Update.
5525         * infcall.c: Update.
5526         * infcmd.c: Update.
5527         * inflow.c: Update.
5528         * infrun.c: Update.
5529         * linux-fork.c: Update.
5530         * linux-nat.c: Update.
5531         * linux-thread-db.c: Update.
5532         * mi/mi-cmd-var.c: Update.
5533         * mi/mi-interp.c: Update.
5534         * mi/mi-main.c: Update.
5535         * nto-procfs.c: Update.
5536         * ppc-linux-tdep.c: Update.
5537         * procfs.c: Update.
5538         * python/py-inferior.c: Update.
5539         * python/py-record-btrace.c: Update.
5540         * python/py-record.c: Update.
5541         * ravenscar-thread.c: Update.
5542         * regcache.c: Update.
5543         * remote-sim.c: Update.
5544         * remote.c: Update.
5545         * sol-thread.c: Update.
5546         * solib.c: Update.
5547         * target.c: Update.
5548         * tui/tui-stack.c: Update.
5549         * varobj.c: Update.
5550         * windows-nat.c: Update.
5551         * windows-tdep.c: Update.
5552
5553 2018-07-03  Tom Tromey  <tom@tromey.com>
5554
5555         * common/ptid.c (ptid_match): Remove.
5556         * common/ptid.h (ptid_match): Don't declare.
5557         * fbsd-nat.c: Update.
5558         * infcmd.c: Update.
5559         * infrun.c: Update.
5560         * linux-nat.c: Update.
5561         * record-btrace.c: Update.
5562         * regcache.c: Update.
5563         * remote.c: Update.
5564
5565 2018-07-03  Tom Tromey  <tom@tromey.com>
5566
5567         * common/ptid.c (ptid_tid_p): Remove.
5568         * common/ptid.h (ptid_tid_p): Don't declare.
5569         * sol-thread.c: Update.
5570
5571 2018-07-03  Tom Tromey  <tom@tromey.com>
5572
5573         * common/ptid.c (ptid_lwp_p): Remove.
5574         * common/ptid.h (ptid_lwp_p): Don't declare.
5575         * fbsd-nat.c: Update.
5576         * linux-nat.c: Update.
5577         * nat/linux-procfs.c: Update.
5578         * nat/x86-linux-dregs.c: Update.
5579         * sol-thread.c: Update.
5580
5581 2018-07-03  Tom Tromey  <tom@tromey.com>
5582
5583         * common/ptid.c (ptid_is_pid): Remove.
5584         * common/ptid.h (ptid_is_pid): Don't declare.
5585         * infrun.c: Update.
5586         * linux-nat.c: Update.
5587         * mi/mi-interp.c: Update.
5588         * remote.c: Update.
5589         * thread.c: Update.
5590
5591 2018-07-03  Tom Tromey  <tom@tromey.com>
5592
5593         * common/ptid.c (ptid_get_tid): Remove.
5594         * common/ptid.h (ptid_get_tid): Don't declare.
5595         * ada-tasks.c: Update.
5596         * aix-thread.c: Update.
5597         * bsd-uthread.c: Update.
5598         * darwin-nat.c: Update.
5599         * fbsd-nat.c: Update.
5600         * i386-darwin-nat.c: Update.
5601         * infrun.c: Update.
5602         * linux-tdep.c: Update.
5603         * nto-procfs.c: Update.
5604         * ppc-ravenscar-thread.c: Update.
5605         * python/py-infthread.c: Update.
5606         * ravenscar-thread.c: Update.
5607         * sol-thread.c: Update.
5608         * sparc-ravenscar-thread.c: Update.
5609         * windows-nat.c: Update.
5610
5611 2018-07-03  Tom Tromey  <tom@tromey.com>
5612
5613         * common/ptid.c (ptid_get_lwp): Remove.
5614         * common/ptid.h (ptid_get_lwp): Don't declare.
5615         * aarch64-linux-nat.c: Update.
5616         * ada-tasks.c: Update.
5617         * aix-thread.c: Update.
5618         * amd64-linux-nat.c: Update.
5619         * arm-linux-nat.c: Update.
5620         * corelow.c: Update.
5621         * fbsd-nat.c: Update.
5622         * fbsd-tdep.c: Update.
5623         * gnu-nat.c: Update.
5624         * i386-cygwin-tdep.c: Update.
5625         * i386-gnu-nat.c: Update.
5626         * i386-linux-nat.c: Update.
5627         * ia64-linux-nat.c: Update.
5628         * inf-ptrace.c: Update.
5629         * infrun.c: Update.
5630         * linux-fork.c: Update.
5631         * linux-nat.c: Update.
5632         * linux-tdep.c: Update.
5633         * linux-thread-db.c: Update.
5634         * mips-linux-nat.c: Update.
5635         * nat/aarch64-linux-hw-point.c: Update.
5636         * nat/aarch64-linux.c: Update.
5637         * nat/linux-btrace.c: Update.
5638         * nat/linux-osdata.c: Update.
5639         * nat/linux-procfs.c: Update.
5640         * nat/x86-linux-dregs.c: Update.
5641         * obsd-nat.c: Update.
5642         * ppc-fbsd-nat.c: Update.
5643         * ppc-linux-nat.c: Update.
5644         * procfs.c: Update.
5645         * python/py-infthread.c: Update.
5646         * ravenscar-thread.c: Update.
5647         * remote.c: Update.
5648         * s390-linux-nat.c: Update.
5649         * sol-thread.c: Update.
5650         * sol2-tdep.c: Update.
5651         * spu-linux-nat.c: Update.
5652         * x86-linux-nat.c: Update.
5653         * xtensa-linux-nat.c: Update.
5654
5655 2018-07-03  Tom Tromey  <tom@tromey.com>
5656
5657         * common/ptid.c (ptid_get_pid): Remove.
5658         * common/ptid.h (ptid_get_pid): Don't declare.
5659         * aarch64-linux-nat.c: Update.
5660         * ada-lang.c: Update.
5661         * aix-thread.c: Update.
5662         * alpha-bsd-nat.c: Update.
5663         * amd64-fbsd-nat.c: Update.
5664         * amd64-linux-nat.c: Update.
5665         * arm-linux-nat.c: Update.
5666         * arm-nbsd-nat.c: Update.
5667         * auxv.c: Update.
5668         * break-catch-syscall.c: Update.
5669         * breakpoint.c: Update.
5670         * bsd-uthread.c: Update.
5671         * corelow.c: Update.
5672         * ctf.c: Update.
5673         * darwin-nat.c: Update.
5674         * fbsd-nat.c: Update.
5675         * fbsd-tdep.c: Update.
5676         * gcore.c: Update.
5677         * gnu-nat.c: Update.
5678         * hppa-nbsd-nat.c: Update.
5679         * hppa-obsd-nat.c: Update.
5680         * i386-fbsd-nat.c: Update.
5681         * ia64-linux-nat.c: Update.
5682         * inf-ptrace.c: Update.
5683         * infcmd.c: Update.
5684         * inferior.c: Update.
5685         * inferior.h: Update.
5686         * inflow.c: Update.
5687         * infrun.c: Update.
5688         * linux-fork.c: Update.
5689         * linux-nat.c: Update.
5690         * linux-tdep.c: Update.
5691         * linux-thread-db.c: Update.
5692         * m68k-bsd-nat.c: Update.
5693         * mi/mi-interp.c: Update.
5694         * mi/mi-main.c: Update.
5695         * mips-linux-nat.c: Update.
5696         * mips-nbsd-nat.c: Update.
5697         * mips64-obsd-nat.c: Update.
5698         * nat/aarch64-linux-hw-point.c: Update.
5699         * nat/aarch64-linux.c: Update.
5700         * nat/linux-btrace.c: Update.
5701         * nat/linux-osdata.c: Update.
5702         * nat/linux-procfs.c: Update.
5703         * nat/x86-linux-dregs.c: Update.
5704         * nto-procfs.c: Update.
5705         * obsd-nat.c: Update.
5706         * ppc-linux-nat.c: Update.
5707         * ppc-nbsd-nat.c: Update.
5708         * ppc-obsd-nat.c: Update.
5709         * proc-service.c: Update.
5710         * procfs.c: Update.
5711         * python/py-inferior.c: Update.
5712         * python/py-infthread.c: Update.
5713         * ravenscar-thread.c: Update.
5714         * record.c: Update.
5715         * remote-sim.c: Update.
5716         * remote.c: Update.
5717         * rs6000-nat.c: Update.
5718         * s390-linux-nat.c: Update.
5719         * sh-nbsd-nat.c: Update.
5720         * sol-thread.c: Update.
5721         * sparc-nat.c: Update.
5722         * sparc64-tdep.c: Update.
5723         * spu-linux-nat.c: Update.
5724         * spu-tdep.c: Update.
5725         * target-debug.h: Update.
5726         * target.c: Update.
5727         * thread.c: Update.
5728         * tid-parse.c: Update.
5729         * tracefile-tfile.c: Update.
5730         * vax-bsd-nat.c: Update.
5731         * windows-nat.c: Update.
5732         * x86-linux-nat.c: Update.
5733         * x86-nat.c: Update.
5734
5735 2018-07-03  Tom Tromey  <tom@tromey.com>
5736
5737         * common/ptid.c (pid_to_ptid): Remove.
5738         * common/ptid.h (pid_to_ptid): Don't declare.
5739         * aix-thread.c: Update.
5740         * arm-linux-nat.c: Update.
5741         * common/ptid.c: Update.
5742         * common/ptid.h: Update.
5743         * corelow.c: Update.
5744         * ctf.c: Update.
5745         * darwin-nat.c: Update.
5746         * fbsd-nat.c: Update.
5747         * fork-child.c: Update.
5748         * gnu-nat.c: Update.
5749         * go32-nat.c: Update.
5750         * inf-ptrace.c: Update.
5751         * infcmd.c: Update.
5752         * inferior.c: Update.
5753         * infrun.c: Update.
5754         * linux-fork.c: Update.
5755         * linux-nat.c: Update.
5756         * nat/aarch64-linux-hw-point.c: Update.
5757         * nat/fork-inferior.c: Update.
5758         * nat/x86-linux-dregs.c: Update.
5759         * nto-procfs.c: Update.
5760         * obsd-nat.c: Update.
5761         * procfs.c: Update.
5762         * progspace.c: Update.
5763         * remote.c: Update.
5764         * rs6000-nat.c: Update.
5765         * s390-linux-nat.c: Update.
5766         * sol-thread.c: Update.
5767         * spu-linux-nat.c: Update.
5768         * target.c: Update.
5769         * top.c: Update.
5770         * tracefile-tfile.c: Update.
5771         * windows-nat.c: Update.
5772
5773 2018-07-03  Tom Tromey  <tom@tromey.com>
5774
5775         * common/ptid.h (ptid_build): Don't declare.
5776         * common/ptid.c (ptid_build): Remove.
5777         * aix-thread.c: Update.
5778         * bsd-kvm.c: Update.
5779         * bsd-uthread.c: Update.
5780         * common/agent.c: Update.
5781         * common/ptid.c: Update.
5782         * common/ptid.h: Update.
5783         * corelow.c: Update.
5784         * darwin-nat.c: Update.
5785         * fbsd-nat.c: Update.
5786         * gnu-nat.c: Update.
5787         * linux-fork.c: Update.
5788         * linux-nat.c: Update.
5789         * linux-thread-db.c: Update.
5790         * nat/linux-osdata.c: Update.
5791         * nat/linux-procfs.c: Update.
5792         * nto-procfs.c: Update.
5793         * obsd-nat.c: Update.
5794         * proc-service.c: Update.
5795         * procfs.c: Update.
5796         * ravenscar-thread.c: Update.
5797         * remote-sim.c: Update.
5798         * remote.c: Update.
5799         * sol-thread.c: Update.
5800         * target.c: Update.
5801         * windows-nat.c: Update.
5802
5803 2018-07-03  Tom Tromey  <tom@tromey.com>
5804
5805         * infrun.c (follow_exec): Use exit_inferior_silent.
5806         * inferior.c (exit_inferior_num_silent): Remove.
5807         * inferior.h (exit_inferior_num_silent): Don't declare.
5808
5809 2018-07-03  Tom Tromey  <tom@tromey.com>
5810
5811         PR cli/23340:
5812         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5813         inferior_ptid on error.
5814
5815 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5816             Simon Marchi  <simon.marchi@polymtl.ca>
5817
5818         PR tdep/8282
5819         * disasm.h (gdb_disassembler): Add
5820         `m_disassembler_options_holder'. member
5821         * disasm.c (get_all_disassembler_options): New function.
5822         (gdb_disassembler::gdb_disassembler): Use it.
5823         (gdb_buffered_insn_length_init_dis): Likewise.
5824         (gdb_buffered_insn_length): Adjust accordingly.
5825         (set_disassembler_options): Handle options with arguments.
5826         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5827         line if showing options with descriptions.
5828         (disassembler_options_completer): Adapt to using the
5829         `disasm_options_and_args_t' structure.
5830         * mips-tdep.c (mips_disassembler_options): New variable.
5831         (mips_disassembler_options_o32): Likewise.
5832         (mips_disassembler_options_n32): Likewise.
5833         (mips_disassembler_options_n64): Likewise.
5834         (gdb_print_insn_mips): Don't set `disassembler_options'.
5835         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5836         functions.
5837         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5838         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5839         `gdbarch_disassembler_options_implicit' and
5840         `gdbarch_valid_disassembler_options'.
5841         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5842         `disasm_options_and_args_t' structure.
5843         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5844         method.
5845         (valid_disassembler_options): Switch from `disasm_options_t' to
5846         the `disasm_options_and_args_t' structure.
5847         * NEWS: Document `set disassembler-options' support for the MIPS
5848         target.
5849         * gdbarch.h: Regenerate.
5850         * gdbarch.c: Regenerate.
5851
5852 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5853
5854         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5855
5856 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5857
5858         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5859         parameter in call to amd64_target_description.
5860         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5861         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5862         (amd64fbsd_init_abi): Likewise.
5863         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5864         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5865         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5866         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5867
5868 2018-06-29  Pedro Alves  <palves@redhat.com>
5869
5870         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5871         "segments" parameter.
5872         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5873         (_initialize_amd64_tdep): Update call to
5874         amd64_create_target_description.
5875         (amd64_target_description): Add "segments" parameter.  Adjust
5876         the implementation to use it.
5877         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5878         call to amd64_create_target_description.
5879         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5880         * gdb/arch/amd64.h (amd64_create_target_description): Add
5881         "segments" register.
5882         * gdb/arch/amd64.c (amd64_create_target_description): Add
5883         "segments" parameter.  Call create_feature_i386_64bit_segments
5884         only if SEGMENTS is true.
5885         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5886         call to amd64_create_target_description.
5887
5888 2018-06-29  Pedro Alves  <palves@redhat.com>
5889
5890         * thread.c (thread_target_id_str): New, factored out from ...
5891         (print_thread_info_1): ... here.  Use it to compute the max
5892         "Target Id" column width.
5893
5894 2018-06-29  Pedro Alves  <palves@redhat.com>
5895
5896         * remote.c (remote_target::extra_thread_info): Delete
5897         'display_buf' and 'n' locals.  from the cache, regardless of
5898         packet mechanims is in use.  Use cache for qThreadExtra and qP
5899         methods too.
5900
5901 2018-06-29  Pedro Alves  <palves@redhat.com>
5902
5903         * blockframe.c (find_pc_sect_containing_function): New function.
5904         * breakpoint.c (print_breakpoint_location): Don't call
5905         find_pc_sect_function.
5906         * linespec.c (create_sals_line_offset): Record the location's
5907         symbol in the sal.
5908         * linespec.c (convert_address_location_to_sals): Fill in sal's
5909         symbol with find_pc_sect_containing_function.
5910         * symtab.c (find_function_start_sal): Rename to ...
5911         (find_function_start_sal_1): ... this.
5912         (find_function_start_sal): Reimplement as wrapper around
5913         find_function_start_sal_1, and use
5914         find_pc_sect_containing_function to fill in the sal's symbol.
5915         (find_function_start_sal(symbol*, bool)): Adjust.
5916         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5917         comments.
5918         (find_pc_sect_containing_function): Declare.
5919
5920 2018-06-29  Pedro Alves  <palves@redhat.com>
5921
5922         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5923         true if the the location has no symbol.
5924
5925 2018-06-28  Tom Tromey  <tom@tromey.com>
5926
5927         * NEWS: Mention --enable-codesign.
5928         * silent-rules.mk (ECHO_SIGN): New variable.
5929         * configure.ac: Add --enable-codesign.
5930         * configure: Rebuild.
5931         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5932         (gdb$(EXEEXT)): Optionally invoke codesign.
5933
5934 2018-06-28  Pedro Alves  <palves@redhat.com>
5935
5936         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5937         comments.
5938         (switch_to_thread_no_regs): Adjust comment.
5939         * infcmd.c (stop_pc): Delete.
5940         (post_create_inferior, info_program_command): Replace references
5941         to stop_pc with references to thread_info->suspend.stop_pc.
5942         * inferior.h (stop_pc): Delete declaration.
5943         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5944         (handle_inferior_event_1, handle_signal_stop)
5945         (process_event_stop_test, keep_going_stepped_thread)
5946         (handle_step_into_function, handle_step_into_function_backward)
5947         (print_stop_location): Replace references to stop_pc with
5948         references to thread_info->suspend.stop_pc.
5949         (struct infcall_suspend_state) <stop_pc>: Delete field.
5950         (save_infcall_suspend_state, restore_infcall_suspend_state):
5951         Remove references to inf_stat->stop_pc.
5952         * linux-fork.c (fork_load_infrun_state): Likewise.
5953         * record-btrace.c (record_btrace_set_replay): Likewise.
5954         * record-full.c (record_full_goto_entry): Likewise.
5955         * remote.c (print_one_stopped_thread): Likewise.
5956         * target.c (target_resume): Extend comment.
5957         * thread.c (set_executing_thread): New.
5958         (set_executing): Use it.
5959         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5960         Remove references to stop_pc.
5961
5962 2018-06-28  Pedro Alves  <palves@redhat.com>
5963
5964         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5965         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5966
5967 2018-06-28  Tom Tromey  <tom@tromey.com>
5968
5969         * coffread.c (coff_symfile_finish): Update.
5970         * xcoffread.c (xcoff_symfile_finish): Update.
5971         * elfread.c (elf_symfile_finish): Update.
5972         * symfile.h (dwarf2_free_objfile): Don't declare.
5973         * dwarf2read.c (_initialize_dwarf2_read): Use
5974         register_objfile_data_with_cleanup.
5975         (dwarf2_free_objfile): Now static.  Change signature.
5976
5977 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5978
5979         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5980         option "-o" to add-symbol-file-load to add an offset to each
5981         section's load address.
5982         * symfile.c (set_objfile_default_section_offset): New function.
5983
5984 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5985
5986         * symfile.c (add_symbol_file_command): Make sure that sections
5987         with the same name are sorted in the same order.
5988
5989 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5990
5991         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
5992         require the second argument.  If omitted, load sections at the
5993         addresses specified in the file.
5994
5995 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5996
5997         * symfile.c (symbol_file_command, symbol_file_add_main_1)
5998         (_initialize_symfile): Add option "-o" to symbol-file to add an
5999         offset to each section of the symbol file.
6000
6001 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6002
6003         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6004
6005 2018-06-27  Tom Tromey  <tom@tromey.com>
6006
6007         * stack.c (_initialize_stack): Update "func" help text.
6008
6009 2018-06-27  Tom Tromey  <tom@tromey.com>
6010
6011         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6012         std::vector.
6013         (unwind_infopy_str, pyuw_create_unwind_info)
6014         (unwind_infopy_add_saved_register, pyuw_sniffer)
6015         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6016         Update.
6017         (struct saved_reg): Add constructor.
6018         <value>: Now a gdbpy_ref<>.
6019
6020 2018-06-27  Tom Tromey  <tom@tromey.com>
6021
6022         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6023
6024 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6025
6026         * gdb-gdb.py.in: Format using autopep8.
6027
6028 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6029
6030         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6031         (type_lookup_function): Recognize CORE_ADDR values.
6032
6033 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6034
6035         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6036         print tag_name.
6037
6038 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6039
6040         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6041         <__lt__>: Add.
6042
6043 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6044
6045         * gdb-gdb.py: Move to...
6046         * gdb-gdb.py.in: ... here.
6047         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6048         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6049         dependencies.
6050         (distclean): Remove gdb-gdb.py when cleaning.
6051         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6052         * configure: Re-generate.
6053
6054 2018-06-27  Pedro Alves  <palves@redhat.com>
6055
6056         * proc-service.c (get_ps_regcache): New.
6057         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6058         (ps_lsetfpregs): Use it.
6059
6060 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6061
6062         PR gdb/21695
6063         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6064         (dwarf_decode_lines_1): Adjust.
6065
6066 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6067
6068         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6069         override.
6070         <info_proc>: Likewise.
6071
6072 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6073
6074         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6075         to windows_fetch_one_register, and only handle the case of
6076         fetching one register.  Move the code that reloads the context
6077         and iterates over all registers if R is negative to...
6078         (windows_nat_target::fetch_registers): ... here.
6079         (do_windows_store_inferior_registers): Rename to
6080         windows_store_one_register, and only handle the case of storing
6081         one register.  Move the code that handles the case where r is
6082         negative to...
6083         (windows_nat_target::store_registers) ... here.
6084
6085 2018-06-26  Tom Tromey  <tom@tromey.com>
6086
6087         PR rust/22574:
6088         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6089         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6090         Update.
6091         (rust_internal_print_type): Add podata parameter.
6092         (rust_print_type): Update.
6093
6094 2018-06-26  Tom Tromey  <tom@tromey.com>
6095
6096         * typeprint.h (struct print_offset_data) <update, finish,
6097         maybe_print_hole>: New methods.
6098         <indentation>: New constant.
6099         * typeprint.c (print_offset_data::indentation): Define.
6100         (print_offset_data::maybe_print_hole, print_offset_data::update)
6101         (print_offset_data::finish): Move from c-typeprint.c and rename.
6102         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6103         (print_spaces_filtered_with_print_options): Update.
6104         (c_print_type_union_field_offset, maybe_print_hole)
6105         (c_print_type_struct_field_offset): Move to typeprint.c and
6106         rename.
6107         (c_type_print_base_struct_union): Update.
6108
6109 2018-06-25  Pedro Alves  <palves@redhat.com>
6110
6111         * gdbthread.h (thread_info_ref, delete_thread)
6112         (delete_thread_silent, first_thread_of_inferior)
6113         (any_thread_of_inferior, switch_to_thread)
6114         (enable_thread_stack_temporaries)
6115         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6116         (get_last_thread_stack_temporary)
6117         (value_in_thread_stack_temporaries, can_access_registers_thread):
6118         Spell out "struct thread_info" instead of just "thread_info".
6119         * inferior.h (notice_new_inferior): Likewise.
6120
6121 2018-06-25  Pedro Alves  <palves@redhat.com>
6122
6123         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6124         pass thread_info pointer to delete_thread.
6125         (windows_nat_target::detach): Pass inferior pointer to
6126         detach_inferior.
6127         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6128         delete_thread.
6129         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6130         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6131         and pass a thread_info pointer to delete_thread.
6132         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6133         pass thread_info pointer to delete_thread.
6134         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6135         delete_thread_silent call.
6136         * procfs.c (procfs_target::detach): Pass inferior pointer to
6137         detach_inferior.
6138         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6139         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6140         delete_thread_silent call.
6141         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6142         pass thread_info pointer to delete_thread.
6143         (windows_nat_target::detach): Pass inferior pointer to
6144         delete_inferior.
6145
6146 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6147
6148         * regcache.c (readable_regcache::read_part): Fix asserts.
6149         (reg_buffer::raw_collect_part): New function.
6150         (regcache::write_part): Fix asserts.
6151         (reg_buffer::raw_supply_part): New function.
6152         (regcache::transfer_regset_register): New helper function.
6153         (regcache::transfer_regset): Call new functions.
6154         (regcache_supply_regset): Use gdb_byte*.
6155         (regcache::supply_regset): Likewise.
6156         (regcache_collect_regset): Likewise.
6157         (regcache::collect_regset): Likewise.
6158         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6159         (reg_buffer::raw_supply_part): Likewise.
6160         (regcache::transfer_regset_register): Likewise.
6161         (regcache::transfer_regset): Use gdb_byte*.
6162
6163 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6164
6165         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6166
6167 2018-06-21  Pedro Alves  <palves@redhat.com>
6168
6169         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6170         instead of a ptid_t.  All callers adjusted.
6171         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6172         adjusted.
6173         (print_ada_task_info, display_current_task_id, task_command_1):
6174         Adjust.
6175         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6176         inferior_thread.
6177         (breakpoint_kind): Adjust.
6178         (remove_breakpoints_pid): Rename to ...
6179         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6180         pointer.  All callers adjusted.
6181         (bpstat_clear_actions): Use inferior_thread.
6182         (get_bpstat_thread): New.
6183         (bpstat_do_actions): Use it.
6184         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6185         to take a thread_info pointer.  All callers adjusted.
6186         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6187         (breakpoint_re_set_thread): Use inferior_thread.
6188         * breakpoint.h (struct inferior): Forward declare.
6189         (bpstat_stop_status): Update.
6190         (remove_breakpoints_pid): Delete.
6191         (remove_breakpoints_inf): New.
6192         * bsd-uthread.c (bsd_uthread_target::wait)
6193         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6194         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6195         (maint_btrace_packet_history_cmd)
6196         (maint_btrace_clear_packet_history_cmd): Adjust.
6197         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6198         inferior_thread.
6199         * cli/cli-interp.c: Include "inferior.h".
6200         * common/refcounted-object.h (struct
6201         refcounted_object_ref_policy): New.
6202         * compile/compile-object-load.c: Include gdbthread.h.
6203         (store_regs): Use inferior_thread.
6204         * corelow.c (core_target::close): Use current_inferior.
6205         (core_target_open): Adjust to use first_thread_of_inferior and use
6206         the current inferior.
6207         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6208         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6209         <thread>: ... this new field.  All references adjusted.
6210         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6211         Take a thread_info pointer instead of a ptid_t.
6212         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6213         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6214         thread_info pointer instead of a ptid_t.
6215         * elfread.c: Include "inferior.h".
6216         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6217         Use inferior_thread.
6218         * eval.c (evaluate_subexp): Likewise.
6219         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6220         inferior_thread.
6221         * gdb_proc_service.h (struct thread_info): Forward declare.
6222         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6223         <thread>: ... this new field.  All references adjusted.
6224         * gdbarch.h, gdbarch.c: Regenerate.
6225         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6226         'thread' parameter.  All implementations and callers adjusted.
6227         * gdbthread.h (thread_info) <set_running>: New method.
6228         (delete_thread, delete_thread_silent): Take a thread_info pointer
6229         instead of a ptid.
6230         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6231         (first_thread_of_process): Delete, replaced by ...
6232         (first_thread_of_inferior): ... this new function.  All callers
6233         adjusted.
6234         (any_live_thread_of_process): Delete, replaced by ...
6235         (any_live_thread_of_inferior): ... this new function.  All callers
6236         adjusted.
6237         (switch_to_thread, switch_to_no_thread): Declare.
6238         (is_executing): Delete.
6239         (enable_thread_stack_temporaries): Update comment.
6240         <enable_thread_stack_temporaries>: Take a thread_info pointer
6241         instead of a ptid_t.  Incref the thread.
6242         <~enable_thread_stack_temporaries>: Decref the thread.
6243         <m_ptid>: Delete
6244         <m_thr>: New.
6245         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6246         (get_last_thread_stack_temporary)
6247         (value_in_thread_stack_temporaries, can_access_registers_thread):
6248         Take a thread_info pointer instead of a ptid_t.  All callers
6249         adjusted.
6250         * infcall.c (get_call_return_value): Use inferior_thread.
6251         (run_inferior_call): Work with thread pointers instead of ptid_t.
6252         (call_function_by_hand_dummy): Work with thread pointers instead
6253         of ptid_t.  Use thread_info_ref.
6254         * infcmd.c (proceed_thread_callback): Access thread's state
6255         directly.
6256         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6257         access thread's state directly.
6258         (continue_command): Use inferior_thread.
6259         (info_program_command): Use find_thread_ptid and access thread
6260         state directly.
6261         (proceed_after_attach_callback): Use thread state directly.
6262         (notice_new_inferior): Take a thread_info pointer instead of a
6263         ptid_t.  All callers adjusted.
6264         (exit_inferior): Take an inferior pointer instead of a pid.  All
6265         callers adjusted.
6266         (exit_inferior_silent): New.
6267         (detach_inferior): Delete.
6268         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6269         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6270         (detach_inferior_command, kill_inferior_command): Use
6271         find_inferior_id instead of valid_gdb_inferior_id and
6272         gdb_inferior_id_to_pid.
6273         (inferior_command): Use inferior and thread pointers.
6274         * inferior.h (struct thread_info): Forward declare.
6275         (notice_new_inferior): Take a thread_info pointer instead of a
6276         ptid_t.  All callers adjusted.
6277         (detach_inferior): Delete declaration.
6278         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6279         instead of a pid.  All callers adjusted.
6280         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6281         (valid_gdb_inferior_id): Delete.
6282         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6283         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6284         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6285         ...
6286         <inf>: ... this new field.
6287         <step_ptid>: Delete, replaced by ...
6288         <step_thread>: ... this new field.
6289         (get_displaced_stepping_state): Take an inferior pointer instead
6290         of a pid.  All callers adjusted.
6291         (displaced_step_in_progress_any_inferior): Adjust.
6292         (displaced_step_in_progress_thread): Take a thread pointer instead
6293         of a ptid_t.  All callers adjusted.
6294         (displaced_step_in_progress, add_displaced_stepping_state): Take
6295         an inferior pointer instead of a pid.  All callers adjusted.
6296         (get_displaced_step_closure_by_addr): Adjust.
6297         (remove_displaced_stepping_state): Take an inferior pointer
6298         instead of a pid.  All callers adjusted.
6299         (displaced_step_prepare_throw, displaced_step_prepare)
6300         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6301         All callers adjusted.
6302         (start_step_over): Adjust.
6303         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6304         displaced step queue.
6305         (do_target_resume): Adjust.
6306         (fetch_inferior_event): Use inferior_thread.
6307         (context_switch, get_inferior_stop_soon): Take an
6308         execution_control_state pointer instead of a ptid_t.  All callers
6309         adjusted.
6310         (switch_to_thread_cleanup): Delete.
6311         (stop_all_threads): Use scoped_restore_current_thread.
6312         * inline-frame.c: Include "gdbthread.h".
6313         (inline_state) <inline_state>: Take a thread pointer instead of a
6314         ptid_t.  All callers adjusted.
6315         <ptid>: Delete, replaced by ...
6316         <thread>: ... this new field.
6317         (find_inline_frame_state): Take a thread pointer instead of a
6318         ptid_t.  All callers adjusted.
6319         (skip_inline_frames, step_into_inline_frame)
6320         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6321         pointer instead of a ptid_t.  All callers adjusted.
6322         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6323         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6324         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6325         pointers directly.
6326         * linux-nat.c (get_detach_signal): Likewise.
6327         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6328         (thread_db_notice_clone): Adjust.
6329         (thread_db_find_new_threads_silently)
6330         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6331         a thread pointer instead of a ptid_t.  All callers adjusted.
6332         * mi/mi-cmd-var.c: Include "inferior.h".
6333         (mi_cmd_var_update_iter): Update to use thread pointers.
6334         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6335         inferior directly.
6336         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6337         out to ...
6338         (mi_output_running): ... this new function.
6339         (mi_on_resume_1): Adjust to use it.
6340         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6341         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6342         directly.
6343         (interrupt_thread_callback): : Adjust to use thread and inferior
6344         pointers.
6345         * proc-service.c: Include "gdbthread.h".
6346         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6347         * progspace-and-thread.c: Include "inferior.h".
6348         * progspace.c: Include "inferior.h".
6349         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6350         hold a reference to an inferior_object.
6351         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6352         inferior_thread.
6353         * python/py-inferior.c (struct inferior_object): Give the type a
6354         tag name instead of a typedef.
6355         (python_on_normal_stop): No need to check if the current thread is
6356         listed.
6357         (inferior_to_inferior_object): Change return type to
6358         inferior_object.  All callers adjusted.
6359         (find_thread_object): Delete, bits factored out to ...
6360         (thread_to_thread_object): ... this new function.
6361         * python/py-infthread.c (create_thread_object): Use
6362         inferior_to_inferior_object.
6363         (thpy_is_stopped): Use thread pointer directly.
6364         (gdbpy_selected_thread): Use inferior_thread.
6365         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6366         field, replaced with ...
6367         <thread>: ... this new field.  All users adjusted.
6368         (btpy_insn_or_gap_new): Drop const.
6369         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6370         callers adjusted.
6371         * python/py-record.c: Include "gdbthread.h".
6372         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6373         a ptid_t.  All callers adjusted.
6374         (gdbpy_current_recording): Use inferior_thread.
6375         * python/py-record.h (recpy_record_object) <ptid>: Delete
6376         field, replaced with ...
6377         <thread>: ... this new field.  All users adjusted.
6378         (recpy_element_object) <ptid>: Delete
6379         field, replaced with ...
6380         <thread>: ... this new field.  All users adjusted.
6381         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6382         a ptid_t.  All callers adjusted.
6383         * python/py-threadevent.c: Include "gdbthread.h".
6384         (get_event_thread): Use thread_to_thread_object.
6385         * python/python-internal.h (struct inferior_object): Forward
6386         declare.
6387         (find_thread_object, find_inferior_object): Delete declarations.
6388         (thread_to_thread_object, inferior_to_inferior_object): New
6389         declarations.
6390         * record-btrace.c: Include "inferior.h".
6391         (require_btrace_thread): Use inferior_thread.
6392         (record_btrace_frame_sniffer)
6393         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6394         (get_thread_current_frame): Use scoped_restore_current_thread and
6395         switch_to_thread.
6396         (get_thread_current_frame): Use thread pointer directly.
6397         (record_btrace_replay_at_breakpoint): Use thread's inferior
6398         pointer directly.
6399         * record-full.c: Include "inferior.h".
6400         * regcache.c: Include "gdbthread.h".
6401         (get_thread_arch_regcache): Use the inferior's address space
6402         directly.
6403         (get_thread_regcache, registers_changed_thread): New.
6404         * regcache.h (get_thread_regcache(thread_info *thread)): New
6405         overload.
6406         (registers_changed_thread): New.
6407         (remote_target) <remote_detach_1>: Swap order of parameters.
6408         (remote_add_thread): <remote_add_thread>: Return the new thread.
6409         (get_remote_thread_info(ptid_t)): New overload.
6410         (remote_target::remote_notice_new_inferior): Use thread pointers
6411         directly.
6412         (remote_target::process_initial_stop_replies): Use
6413         thread_info::set_running.
6414         (remote_target::remote_detach_1, remote_target::detach)
6415         (extended_remote_target::detach): Adjust.
6416         * stack.c (frame_show_address): Use inferior_thread.
6417         * target-debug.h (target_debug_print_thread_info_pp): New.
6418         * target-delegates.c: Regenerate.
6419         * target.c (default_thread_address_space): Delete.
6420         (memory_xfer_partial_1): Use current_inferior.
6421         (target_detach): Use current_inferior.
6422         (target_thread_address_space): Delete.
6423         (generic_mourn_inferior): Use current_inferior.
6424         * target.h (struct target_ops) <thread_address_space>: Delete.
6425         (target_thread_address_space): Delete.
6426         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6427         pointers directly.
6428         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6429         thread pointer instead of a ptid_t.  Adjust all callers.
6430         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6431         (first_thread_of_process): Delete, replaced by ...
6432         (first_thread_of_inferior): ... this new function.  All callers
6433         adjusted.
6434         (any_thread_of_process): Rename to ...
6435         (any_thread_of_inferior): ... this, and take an inferior pointer.
6436         (any_live_thread_of_process): Rename to ...
6437         (any_live_thread_of_inferior): ... this, and take an inferior
6438         pointer.
6439         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6440         (value_in_thread_stack_temporaries)
6441         (get_last_thread_stack_temporary): Take a thread pointer instead
6442         of a ptid_t.  Adjust all callers.
6443         (thread_info::set_running): New.
6444         (validate_registers_access): Use inferior_thread.
6445         (can_access_registers_ptid): Rename to ...
6446         (can_access_registers_thread): ... this, and take a thread
6447         pointer.
6448         (print_thread_info_1): Adjust to compare thread pointers instead
6449         of ptids.
6450         (switch_to_no_thread, switch_to_thread): Make extern.
6451         (scoped_restore_current_thread::~scoped_restore_current_thread):
6452         Use m_thread pointer directly.
6453         (scoped_restore_current_thread::scoped_restore_current_thread):
6454         Use inferior_thread.
6455         (thread_command): Use thread pointer directly.
6456         (thread_num_make_value_helper): Use inferior_thread.
6457         * top.c (execute_command): Use inferior_thread.
6458         * tui/tui-interp.c: Include "inferior.h".
6459         * varobj.c (varobj_create): Use inferior_thread.
6460         (value_of_root_1): Use find_thread_global_id instead of
6461         global_thread_id_to_ptid.
6462
6463 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6464
6465         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6466         possible.
6467         (regcache::write_part): Likewise.
6468         (readable_regcache::cooked_read_part): Update comment.
6469         (readable_regcache::cooked_write_part): Likewise.
6470         * regcache.h: (readable_regcache::read_part): Likewise.
6471         (regcache::write_part): Likewise.
6472
6473 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6474             Dirk Schubert  <dirk.schubert@arm.com>
6475
6476         * aarch64-linux-nat.c (post_attach): New.
6477         (aarch64_linux_nat_target::post_attach): Override post_attach to
6478         record the number of hardware debug registers.
6479
6480 2018-06-20  Tom Tromey  <tom@tromey.com>
6481
6482         * python/py-param.c (add_setshow_generic): Make parameters const.
6483         (parmpy_init): Update.
6484
6485 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6486
6487         * regcache.h (regcache_cooked_read_ftype): Rename to...
6488         (register_read_ftype): ...this, change type to function_view.
6489         (class reg_buffer) <save>: Remove src parameter.
6490         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6491         parameter non-const in first overload.  Remove src parameter in
6492         second overload.
6493         * regcache.c (do_cooked_read): Remove.
6494         (readonly_detached_regcache::readonly_detached_regcache): Make
6495         parameter non-const, adjust call to other constructor.
6496         (reg_buffer::save): Remove src parameter.
6497         * frame.c (do_frame_register_read): Remove.
6498         (frame_save_as_regcache): Use lambda function.
6499         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6500         parameter to ppu2spu_data *.
6501         (ppu2spu_sniffer): Use lambda function.
6502
6503 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6504
6505         * record-full.c (record_full_target::insert_breakpoint): Remove
6506         "struct" keyword, add const.
6507
6508 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6509
6510         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6511         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6512         * configure.ac: Remove AC_PREREQ, add missing quoting.
6513         * gnulib/configure.ac: Modernize usage of
6514         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6515         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6516         (AUTOMAKE_VERSION): Bump to 1.15.1.
6517         * configure: Re-generate.
6518         * config.in: Re-generate.
6519         * aclocal.m4: Re-generate.
6520         * gnulib/aclocal.m4: Re-generate.
6521         * gnulib/config.in: Re-generate.
6522         * gnulib/configure: Re-generate.
6523         * gnulib/import/Makefile.in: Re-generate.
6524
6525 2018-06-19  Pedro Alves  <palves@redhat.com>
6526
6527         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6528         (lookup_minimal_symbol_by_pc_section): ... here with
6529         gdb_assert_not_reached added.
6530
6531 2018-06-19  Pedro Alves  <palves@redhat.com>
6532
6533         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6534         parameter with a block parameter.  Compare location's block symbol
6535         with the frame's block instead of addresses.
6536         (skip_inline_frames): Pass the current block instead of the
6537         frame's address.  Break out as soon as we determine the frame
6538         should not be skipped.
6539
6540 2018-06-18  Tom Tromey  <tom@tromey.com>
6541
6542         * solib-aix.c (solib_aix_get_section_offsets): Return
6543         unique_xmalloc_ptr.
6544         (solib_aix_solib_create_inferior_hook): Update.
6545
6546 2018-06-18  Tom Tromey  <tom@tromey.com>
6547
6548         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6549
6550 2018-06-18  Tom Tromey  <tom@tromey.com>
6551
6552         * solib-frv.c (frv_relocate_main_executable): Use
6553         unique_xmalloc_ptr.
6554         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6555         unique_xmalloc_ptr.
6556
6557 2018-06-18  Tom Tromey  <tom@tromey.com>
6558
6559         * objfiles.h (inhibit_section_map_updates): Update.
6560         (resume_section_map_updates, resume_section_map_updates_cleanup):
6561         Remove.
6562         * solib-svr4.c (svr4_handle_solib_event): Update.
6563         * objfiles.c (inhibit_section_map_updates): Return
6564         scoped_restore_tmpl<int>.
6565         (resume_section_map_updates, resume_section_map_updates_cleanup):
6566         Remove.
6567
6568 2018-06-18  Tom Tromey  <tom@tromey.com>
6569
6570         * valprint.h (read_string): Update.
6571         * valprint.c (read_string): Change type of "buffer".
6572         (val_print_string): Update.
6573         * python/py-value.c (valpy_string): Update.
6574         * language.h (struct language_defn) <la_get_string>: Change
6575         type of "buffer".
6576         (default_get_string, c_get_string): Update.
6577         * language.c (default_get_string): Change type of "buffer".
6578         * guile/scm-value.c (gdbscm_value_to_string): Update.
6579         * c-lang.c (c_get_string): Change type of "buffer".
6580
6581 2018-06-18  Tom Tromey  <tom@tromey.com>
6582
6583         * ser-mingw.c (struct pipe_state_destroyer): New.
6584         (pipe_state_up): New typedef.
6585         (cleanup_pipe_state): Remove.
6586         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6587
6588 2018-06-18  Tom Tromey  <tom@tromey.com>
6589
6590         * rust-lang.h (rust_yyerror): Don't declare.
6591         * rust-lang.c (rust_language_defn): Update.
6592         * rust-exp.y (yyerror): Now static.
6593         * parse.c (parse_exp_in_context_1): Update.
6594         * p-lang.h (p_yyerror): Don't declare.
6595         * p-lang.c (p_language_defn): Update.
6596         * p-exp.y (yyerror): Now static.
6597         * opencl-lang.c (opencl_language_defn): Update.
6598         * objc-lang.c (objc_language_defn): Update.
6599         * m2-lang.h (m2_yyerror): Don't declare.
6600         * m2-lang.c (m2_language_defn): Update.
6601         * m2-exp.y (yyerror): Now static.
6602         * language.h (struct language_defn) <la_error>: Remove.
6603         * language.c (unk_lang_error): Remove.
6604         (unknown_language_defn, auto_language_defn): Remove.
6605         * go-lang.h (go_yyerror): Don't declare.
6606         * go-lang.c (go_language_defn): Update.
6607         * go-exp.y (yyerror): Now static.
6608         * f-lang.h (f_yyerror): Don't declare.
6609         * f-lang.c (f_language_defn): Update.
6610         * f-exp.y (yyerror): Now static.
6611         * d-lang.h (d_yyerror): Don't declare.
6612         * d-lang.c (d_language_defn): Update.
6613         * d-exp.y (yyerror): Now static.
6614         * c-lang.h (c_yyerror): Don't declare.
6615         * c-lang.c (c_language_defn, cplus_language_defn)
6616         (asm_language_defn, minimal_language_defn): Update.
6617         * c-exp.y (yyerror): Now static.
6618         * ada-lang.h (ada_yyerror): Don't declare.
6619         * ada-lang.c (ada_language_defn): Update.
6620         * ada-exp.y (yyerror): Now static.
6621
6622 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6623
6624         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6625         (store_sveregs_to_thread): Likewise.
6626         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6627         (aarch64_linux_store_inferior_registers): Likewise.
6628         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6629         function.
6630         (aarch64_sve_regs_copy_to_regcache): Likewise.
6631         (aarch64_sve_regs_copy_from_regcache): Likewise.
6632         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6633         declaration.
6634         (aarch64_sve_regs_copy_to_regcache): Likewise.
6635         (aarch64_sve_regs_copy_from_regcache): Likewise.
6636         (sve_context): Structure from Linux headers.
6637         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6638         (SVE_SIG_ZREG_SIZE): Likewise.
6639         (SVE_SIG_PREG_SIZE): Likewise.
6640         (SVE_SIG_FFR_SIZE): Likewise.
6641         (SVE_SIG_REGS_OFFSET): Likewise.
6642         (SVE_SIG_ZREGS_OFFSET): Likewise.
6643         (SVE_SIG_ZREG_OFFSET): Likewise.
6644         (SVE_SIG_ZREGS_SIZE): Likewise.
6645         (SVE_SIG_PREGS_OFFSET): Likewise.
6646         (SVE_SIG_PREG_OFFSET): Likewise.
6647         (SVE_SIG_PREGS_SIZE): Likewise.
6648         (SVE_SIG_FFR_OFFSET): Likewise.
6649         (SVE_SIG_REGS_SIZE): Likewise.
6650         (SVE_SIG_CONTEXT_SIZE): Likewise.
6651         (SVE_PT_REGS_MASK): Likewise.
6652         (SVE_PT_REGS_FPSIMD): Likewise.
6653         (SVE_PT_REGS_SVE): Likewise.
6654         (SVE_PT_VL_INHERIT): Likewise.
6655         (SVE_PT_VL_ONEXEC): Likewise.
6656         (SVE_PT_REGS_OFFSET): Likewise.
6657         (SVE_PT_FPSIMD_OFFSET): Likewise.
6658         (SVE_PT_FPSIMD_SIZE): Likewise.
6659         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6660         (SVE_PT_SVE_PREG_SIZE): Likewise.
6661         (SVE_PT_SVE_FFR_SIZE): Likewise.
6662         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6663         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6664         (__SVE_SIG_TO_PT): Likewise.
6665         (SVE_PT_SVE_OFFSET): Likewise.
6666         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6667         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6668         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6669         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6670         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6671         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6672         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6673         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6674         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6675         (SVE_PT_SVE_SIZE): Likewise.
6676         (SVE_PT_SIZE): Likewise.
6677         (HAS_SVE_STATE): New define.
6678
6679 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6680
6681         * nat/aarch64-sve-linux-sigcontext.h: New file.
6682         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6683         new files.
6684         (SVE_VQ_MIN): Likewise.
6685         (SVE_VQ_MAX): Likewise.
6686         (SVE_VL_MIN): Likewise.
6687         (SVE_VL_MAX): Likewise.
6688         (SVE_NUM_ZREGS): Likewise.
6689         (SVE_NUM_PREGS): Likewise.
6690         (sve_vl_valid): Likewise.
6691         (struct user_sve_header): Likewise.
6692
6693 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6694             Richard Bunt <Richard.Bunt@arm.com>
6695
6696         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6697         was requested by GDB.
6698
6699 2018-06-15  Tom de Vries  <tdevries@suse.de>
6700
6701         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6702
6703 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6704
6705         * gnulib/update-gnulib.sh: Print expected versions of
6706         autoconf/aclocal.
6707
6708 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6709
6710         * arch-utils.c (default_type_align): Use type_length_units.
6711         * gdbtypes.c (type_align): Use type_length_units.
6712
6713 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6714
6715         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6716         of 'define' command.
6717
6718 2018-06-14  Tom de Vries  <tdevries@suse.de>
6719
6720         PR cli/22573
6721         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6722         get_no_prettyformat_print_options.
6723
6724 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6725
6726         * sparc-nat.h: Include target.h.
6727         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6728         <fetch_registers>: Remove this argument in function call.
6729         <store_registers>: Remove this argument in function call, remove
6730         extra semicolon.
6731         <low_forget_process>: Call sparc64_forget_process instead of
6732         sparc_forget_process.
6733
6734 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6735
6736         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6737         (procfs_target::make_corefile_notes): Adjust to new
6738         target_read_alloc return type.
6739
6740 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6741             Stephen Roberts  <stephen.roberts@arm.com>
6742
6743         PR gdb/22882
6744         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
6745         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6746         Move should_notify_stop local into more inner scope.
6747
6748 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6749             Stephen Roberts  <stephen.roberts@arm.com>
6750
6751         PR gdb/22882
6752         * infrun.c (resume_1): Add call to mark_async_event_handler.
6753
6754 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6755
6756         * infrun.c (do_target_wait): Change old version of $pc printed.
6757
6758 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6759
6760         * dwarf2read.c (read_index_from_section): Rename to...
6761         (read_gdb_index_from_section): ... this, update all callers.
6762         (dwarf2_read_index): Rename to...
6763         (dwarf2_read_gdb_index): ... this, update all callers.
6764
6765 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6766
6767         * gdb/hppa-linux-nat.c
6768         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6769         hppa_linux_nat_target::fetch_registers.
6770
6771 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6772
6773         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6774         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6775         (AARCH64_DWARF_SVE_FFR): Likewise.
6776         (AARCH64_DWARF_SVE_P0): Likewise.
6777         (AARCH64_DWARF_SVE_Z0): Likewise.
6778
6779 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6780
6781         * common/common-regcache.h (raw_compare): New function.
6782         * regcache.c (regcache::raw_compare): Likewise.
6783         * regcache.h (regcache::raw_compare): New declaration.
6784
6785 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6786
6787         * common/common-regcache.h (reg_buffer_common): New structure.
6788         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6789         (reg_buffer::raw_supply): Likewise.
6790         (reg_buffer::raw_supply_integer): Likewise.
6791         (reg_buffer::raw_supply_zeroed): Likewise.
6792         (reg_buffer::raw_collect): Likewise.
6793         (reg_buffer::raw_collect_integer): Likewise.
6794         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6795         (reg_buffer::raw_supply): Likewise.
6796         (reg_buffer::raw_supply_integer): Likewise.
6797         (reg_buffer::raw_supply_zeroed): Likewise.
6798         (reg_buffer::raw_collect): Likewise.
6799         (reg_buffer::raw_collect_integer): Likewise.
6800
6801 2018-06-10  Tom Tromey  <tom@tromey.com>
6802
6803         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6804         (class remote_state) <stop_reply_queue>: Now std::vector.
6805         (remote_state::~remote_state)
6806         (remote_target::stop_reply_queue_length): Update.
6807         (struct queue_iter_param, remove_child_of_pending_fork)
6808         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6809         (check_pending_event_prevents_wildcard_vcont_callback)
6810         (remove_stop_reply_for_inferior)
6811         (remove_stop_reply_of_remote_state)
6812         (remote_notif_remove_once_on_match)
6813         (stop_reply_match_ptid_and_ws)
6814         (remote_kill_child_of_pending_fork): Remove.
6815         (remote_target::remove_new_fork_children)
6816         (remote_target::check_pending_events_prevent_wildcard_vcont)
6817         (remote_target::discard_pending_stop_replies)
6818         (remote_target::discard_pending_stop_replies_in_queue)
6819         (remote_target::remote_notif_remove_queued_reply)
6820         (remote_target::queued_stop_reply)
6821         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6822         (remote_target::wait, remote_target::kill_new_fork_children)
6823         (remote_target::async): Update.
6824
6825 2018-06-10  Tom Tromey  <tom@tromey.com>
6826
6827         * record-full.c (record_full_arch_list_cleanups): Remove.
6828         (record_full_message): Use try/catch.
6829         (record_full_wait_cleanups): Remove.
6830         (record_full_wait_1): Use try/catch.
6831         (record_full_restore): Likewise.
6832
6833 2018-06-10  Tom Tromey  <tom@tromey.com>
6834
6835         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6836         declare VEC.  Add constructor.
6837         <in_target_beneath>: Now bool.
6838         (record_full_breakpoints): Now a std::vector, static.
6839         (record_full_sync_record_breakpoints)
6840         (record_full_init_record_breakpoints)
6841         (record_full_target::insert_breakpoint)
6842         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6843
6844 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6845
6846         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6847         * serial.c (serial_interface_lookup): Remove struct keyword.
6848
6849 2018-06-10  Tom Tromey  <tom@tromey.com>
6850
6851         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6852         method.
6853         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6854         a method.
6855         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6856         method.
6857         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6858         "beneath" as a method.
6859         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6860         Use "beneath" as a method.
6861
6862 2018-06-10  Tom Tromey  <tom@tromey.com>
6863
6864         * tracefile.c (struct trace_file_writer_deleter): New.
6865         <operator()>: Rename from trace_file_writer_xfree.
6866         (trace_file_writer_up): New typedef.
6867         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6868
6869 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6870
6871         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6872         <m_registers, m_register_status>: Change type to
6873         std::unique_ptr.
6874         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6875         XCNEWVEC.
6876
6877 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6878
6879         * common/common-regcache.h (enum register_status): Add
6880         underlying type "signed char".
6881         * regcache.h (reg_buffer) <m_register_status>: Change type to
6882         register_status *.
6883         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6884         register_status instead of signed char.
6885         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6886         (reg_buffer::get_register_status): Remove cast.
6887         (readable_regcache::raw_read): Remove cast.
6888         (readable_regcache::cooked_read): Remove cast.
6889
6890 2018-06-09  Tom Tromey  <tom@tromey.com>
6891
6892         * source.c (reverse_search_command, forward_search_command): Use
6893         scoped_fd.
6894
6895 2018-06-09  Tom Tromey  <tom@tromey.com>
6896
6897         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6898         (serial_ops_list): Now static, std::vector.
6899         (serial_interface_lookup, serial_add_interface): Update.
6900
6901 2018-06-09  Tom Tromey  <tom@tromey.com>
6902
6903         * dwarf2read.c (process_cu_includes): Update.
6904         (process_full_comp_unit): Update.
6905         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6906         std::vector.
6907
6908 2018-06-08  Paul Koning  <paul_koning@dell.com>
6909
6910         PR gdb/23252
6911
6912         * python/python.c (do_start_initialization):
6913         Avoid call to internal Python API.
6914         (init__gdb_module): New function.
6915
6916 2018-06-08  Gary Benson <gbenson@redhat.com>
6917
6918         * linux-thread-db.c (valprint.h): New include.
6919         (struct check_thread_db_info): New structure.
6920         (check_thread_db_on_load, tdb_testinfo): New static globals.
6921         (check_thread_db, check_thread_db_callback): New functions.
6922         (try_thread_db_load_1): Run integrity checks if requested.
6923         (maintenance_check_libthread_db): New function.
6924         (_initialize_thread_db): Register "maint check libthread-db"
6925         and "maint set/show check-libthread-db".
6926         * NEWS: Mention the above new commands.
6927
6928 2018-06-08  Tom Tromey  <tom@tromey.com>
6929
6930         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6931         now a method.
6932
6933 2018-06-08  Tom Tromey  <tom@tromey.com>
6934
6935         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6936
6937 2018-06-08  Tom Tromey  <tom@tromey.com>
6938
6939         * common/btrace-common.h (struct btrace_data): Add constructor,
6940         destructor, move assignment operator.
6941         <empty, clear, fini>: New methods.
6942         <format>: Initialize.
6943         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6944         (btrace_data_empty): Don't declare.
6945         * common/btrace-common.c (btrace_data_init): Remove.
6946         (btrace_data::fini): Rename from btrace_data_fini.
6947         (btrace_data::empty): Rename from btrace_data_empty.
6948         (btrace_data::clear): Rename from btrace_data_clear.  Return
6949         bool.
6950         * btrace.h (make_cleanup_btrace_data): Don't declare.
6951         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6952         (parse_xml_btrace): Update.
6953         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6954         (maint_btrace_clear_packet_history_cmd): Update.
6955
6956 2018-06-07  Pedro Alves  <palves@redhat.com>
6957
6958         * target.h (target_ops) <beneath>: Now a method.  All references
6959         updated.
6960         (class target_stack): New.
6961         * target.c (g_target_stack): New.
6962         (g_current_top_target): Delete.
6963         (current_top_target): Get the top target out of g_target_stack.
6964         (target_stack::push, target_stack::unpush): New.
6965         (push_target, unpush_target): Reimplement.
6966         (target_is_pushed): Reimplement in terms of g_target_stack.
6967         (target_ops::beneath, target_stack::find_beneath): New.
6968
6969 2018-06-07  Pedro Alves  <palves@redhat.com>
6970
6971         * target.h (find_target_beneath): Delete declaration.
6972         * target.c (find_target_beneath): Delete definition.
6973         * aix-thread.c: All callers of find_target_beneath adjusted to
6974         call target_ops::beneath instead.
6975         * bsd-uthread.c: Likewise.
6976         * linux-thread-db.c: Likewise.
6977         * ravenscar-thread.c: Likewise.
6978         * sol-thread.c: Likewise.
6979         * spu-multiarch.c: Likewise.
6980
6981 2018-06-07  Pedro Alves  <palves@redhat.com>
6982
6983         * target.h (target_ops) <beneath>: Now a method.  All references
6984         updated.
6985         (target_ops) <m_beneath>: New.
6986         * target.c (target_ops::beneath): New.
6987         * corelow.c: Adjust all references to target_ops::beneath.
6988         * linux-thread-db.c: Likewise.
6989         * make-target-delegates: Likewise.
6990         * record-btrace.c: Likewise.
6991         * record-full.c: Likewise.
6992         * remote.c: Likewise.
6993         * target.c: Likewise.
6994         * target-delegates.c: Regenerate.
6995
6996 2018-06-07  Pedro Alves  <palves@redhat.com>
6997
6998         * target.h (target_stack): Delete.
6999         (current_top_target): Declare function.
7000         * target.c (target_stack): Delete.
7001         (g_current_top_target): New.
7002         (current_top_target): New function.
7003         * auxv.c: Use current_top_target instead of target_stack
7004         throughout.
7005         * avr-tdep.c: Likewise.
7006         * breakpoint.c: Likewise.
7007         * corefile.c: Likewise.
7008         * elfread.c: Likewise.
7009         * eval.c: Likewise.
7010         * exceptions.c: Likewise.
7011         * frame.c: Likewise.
7012         * gdbarch-selftests.c: Likewise.
7013         * gnu-v3-abi.c: Likewise.
7014         * ia64-tdep.c: Likewise.
7015         * ia64-vms-tdep.c: Likewise.
7016         * infcall.c: Likewise.
7017         * infcmd.c: Likewise.
7018         * infrun.c: Likewise.
7019         * linespec.c: Likewise.
7020         * linux-tdep.c: Likewise.
7021         * minsyms.c: Likewise.
7022         * ppc-linux-nat.c: Likewise.
7023         * ppc-linux-tdep.c: Likewise.
7024         * procfs.c: Likewise.
7025         * regcache.c: Likewise.
7026         * remote.c: Likewise.
7027         * rs6000-tdep.c: Likewise.
7028         * s390-linux-nat.c: Likewise.
7029         * s390-tdep.c: Likewise.
7030         * solib-aix.c: Likewise.
7031         * solib-darwin.c: Likewise.
7032         * solib-dsbt.c: Likewise.
7033         * solib-spu.c: Likewise.
7034         * solib-svr4.c: Likewise.
7035         * solib-target.c: Likewise.
7036         * sparc-tdep.c: Likewise.
7037         * sparc64-tdep.c: Likewise.
7038         * spu-tdep.c: Likewise.
7039         * symfile.c: Likewise.
7040         * symtab.c: Likewise.
7041         * target-descriptions.c: Likewise.
7042         * target-memory.c: Likewise.
7043         * target.c: Likewise.
7044         * target.h: Likewise.
7045         * tracefile-tfile.c: Likewise.
7046         * tracepoint.c: Likewise.
7047         * valops.c: Likewise.
7048         * valprint.c: Likewise.
7049         * value.c: Likewise.
7050         * windows-tdep.c: Likewise.
7051         * mi/mi-main.c: Likewise.
7052
7053 2018-06-07  Tom Tromey  <tom@tromey.com>
7054
7055         * valprint.h (build_address_symbolic): Declare.
7056         * printcmd.c (print_address_symbolic): Update.
7057         (build_address_symbolic): Change "name" and "filename" to
7058         std::string.
7059         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7060         Update.
7061         * defs.h (build_address_symbolic): Remove declaration.
7062
7063 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7064
7065         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7066         (aarch64_vnv_type): Add function.
7067         (aarch64_pseudo_register_name): Add V regs for SVE.
7068         (aarch64_pseudo_register_type): Likewise.
7069         (aarch64_pseudo_register_reggroup_p): Likewise.
7070         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7071         (aarch64_pseudo_read_value): Add V regs for SVE.
7072         (aarch64_pseudo_write_2): Use V0 offset for SVE
7073         (aarch64_pseudo_write): Add V regs for SVE.
7074         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7075
7076 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7077
7078         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7079         (sve_vl_from_vq): Likewise.
7080
7081 2018-06-05  Tom Tromey  <tom@tromey.com>
7082
7083         * cli/cli-cmds.c (show_version): Update.
7084         * top.c (print_gdb_version): Add "interactive" parameter.
7085         Update.
7086         * main.c (captured_main_1): Update.
7087         * top.h (print_gdb_version): Add "interactive" parameter and a
7088         comment.
7089
7090 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7091
7092         * common/enum-flags.h: Add trailing semicolon to example in
7093         comment.
7094
7095 2018-06-05  Tom Tromey  <tom@tromey.com>
7096
7097         PR cli/12326:
7098         * NEWS: Add entry about pager.
7099         * utils.c (pagination_disabled_for_command): New global.
7100         (prompt_for_continue): Allow "c" response to prompt.
7101         (reinitialize_more_filter): Clear
7102         pagination_disabled_for_command.
7103         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7104
7105 2018-06-04  Tom Tromey  <tom@tromey.com>
7106
7107         * ada-lang.h (ada_lookup_symbol_list): Update.
7108         * ada-lang.c (resolve_subexp): Update.
7109         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7110         parameter.
7111         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7112         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7113         results parameter to std::vector.
7114         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7115         Update.
7116         * ada-exp.y (block_lookup): Update.
7117         (select_possible_type_sym): Change type of syms.  Remove nsyms
7118         parameter.
7119         (write_var_or_type, write_name_assoc): Update.
7120
7121 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7122
7123         * windows-nat.c (windows_nat_target::xfer_partial): Return
7124         TARGET_XFER_E_IO if we need to delegate to the target beneath
7125         but BENEATH is NULL.
7126
7127 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7128
7129         * Makefile.in (config.status): Add configure.nat as a
7130         dependency.
7131
7132 2018-06-04  Tom Tromey  <tom@tromey.com>
7133
7134         * cp-name-parser.y (cpname_state): Add method declarations.
7135         (HANDLE_QUAL): Update.
7136         (cpname_state::d_grab, cpname_state::fill_comp)
7137         (cpname_state::make_operator, cpname_state::make_dtor)
7138         (cpname_state::make_builtin_type, cpname_state::make_name)
7139         (cpname_state::d_qualify, cpname_state::d_int_type)
7140         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7141         (%union): Move earlier.
7142
7143 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7144
7145         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7146
7147 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7148
7149         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7150         (aarch64_pseudo_write_1): Likewise.
7151         (aarch64_pseudo_read_value): Use helper.
7152         (aarch64_pseudo_write): Likewise.
7153
7154 2018-06-04  Pedro Alves  <palves@redhat.com>
7155
7156         * darwin-nat.c (darwin_ops): Delete.
7157         (darwin_attach_pid): Use get_native_target.
7158
7159 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7160
7161         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7162         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7163
7164 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7165
7166         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7167         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7168         (aarch64_gdbarch_init): Check for SVE.
7169         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7170
7171 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7172
7173         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7174         * aarch64-tdep.h (aarch64_read_description): Likewise.
7175         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7176         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7177         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7178         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7179         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7180
7181 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7182
7183         * value.c (value_fetch_lazy_bitfield): New.
7184         (value_fetch_lazy_memory): New.
7185         (value_fetch_lazy_register): New.
7186         (value_fetch_lazy): Factor out to smaller functions.
7187
7188 2018-06-01  Tom Tromey  <tom@tromey.com>
7189
7190         * cp-name-parser.y (backslashable, represented): Now const.
7191
7192 2018-06-01  Tom Tromey  <tom@tromey.com>
7193
7194         * cp-name-parser.y: Include parser-defs.h.
7195         (parser_fprintf): Remove declaration.
7196
7197 2018-06-01  Tom Tromey  <tom@tromey.com>
7198
7199         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7200         %parse-param.
7201         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7202         (global_result): Remove globals.
7203         (struct cpname_state): New.
7204         (yyparse): Don't declare.
7205         (yylex, yyerror): Move declarations after %union.
7206         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7207         (make_name): Add state parameter.
7208         Update all callers.
7209         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7210         parameter.
7211         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7212         Update.
7213         (yylex): Add lvalp, state parameters.
7214         (yyerror): Add state parameter.
7215         (cp_demangled_name_to_comp): Update.
7216
7217 2018-06-01  Tom Tromey  <tom@tromey.com>
7218
7219         * cp-name-parser.y (parser_fprintf): Declare.
7220         (GDB_YY_REMAP_PREFIX): Define.
7221         Include yy-remap.h.  Don't redefine yy* identifiers.
7222
7223 2018-06-01  Tom Tromey  <tom@tromey.com>
7224
7225         * python/py-type.c (typy_legacy_template_argument): Update.
7226         * cp-support.h (cp_demangled_name_to_comp): Update.
7227         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7228         parameter to be a "std::string *".
7229         (main): Update.
7230
7231 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7232
7233         * ada-lex.l: Include "diagnostics.h" instead of
7234         "common/diagnostics.h".
7235         * unittests/environ-selftests.c: Likewise.
7236         * common/diagnostics.h: Moved to ../include.
7237
7238 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7239
7240         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7241         to language_mode_manual while calling breakpoint_re_set_one.
7242
7243 2018-06-01  Tom Tromey  <tom@tromey.com>
7244
7245         * valops.c (value_cast_structs, destructor_name_p): Update.
7246         * symtab.c (gdb_mangle_name): Update.
7247         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7248         Update.
7249         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7250         (pascal_object_print_value_fields, pascal_object_print_value):
7251         Update.
7252         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7253         * linespec.c (find_methods): Update.
7254         * gdbtypes.h (type_name_no_tag): Remove.
7255         (type_name_or_error): Rename from type_name_no_tag_or_error.
7256         * gdbtypes.c (type_name_no_tag): Remove.
7257         (type_name_or_error): Rename from type_name_no_tag_or_error.
7258         (lookup_struct_elt_type, check_typedef): Update.
7259         * expprint.c (print_subexp_standard): Update.
7260         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7261         * d-namespace.c (d_lookup_nested_symbol): Update.
7262         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7263         (cp_print_class_member): Update.
7264         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7265         * completer.c (add_struct_fields): Update.
7266         * c-typeprint.c (cp_type_print_derivation_info)
7267         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7268         Update.
7269         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7270         (ada_prefer_type, ada_is_exception_sym): Update.
7271
7272 2018-06-01  Tom Tromey  <tom@tromey.com>
7273
7274         * valops.c (enum_constant_from_type, value_namespace_elt)
7275         (value_maybe_namespace_elt): Update.
7276         * valarith.c (find_size_for_pointer_math): Update.
7277         * target-descriptions.c (make_gdb_type): Update.
7278         * symmisc.c (print_symbol): Update.
7279         * stabsread.c (define_symbol, read_type)
7280         (complain_about_struct_wipeout, add_undefined_type)
7281         (cleanup_undefined_types_1): Update.
7282         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7283         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7284         (rust_internal_print_type, rust_composite_type)
7285         (rust_evaluate_funcall, rust_evaluate_subexp)
7286         (rust_inclusive_range_type_p): Update.
7287         * python/py-type.c (typy_get_tag): Update.
7288         * p-typeprint.c (pascal_type_print_base): Update.
7289         * mdebugread.c (parse_symbol, parse_type): Update.
7290         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7291         Update.
7292         * guile/scm-type.c (gdbscm_type_tag): Update.
7293         * go-lang.c (sixg_string_p): Update.
7294         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7295         Update.
7296         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7297         (TYPE_TAG_NAME): Remove.
7298         * gdbtypes.c (type_name_no_tag): Simplify.
7299         (check_typedef, check_types_equal, recursive_dump_type)
7300         (copy_type_recursive, arch_composite_type): Update.
7301         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7302         in summary mode when needed.
7303         * eval.c (evaluate_funcall): Update.
7304         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7305         (process_structure_scope, read_enumeration_type)
7306         (read_namespace_type, read_module_type, determine_prefix): Update.
7307         * cp-support.c (inspect_type): Update.
7308         * coffread.c (process_coff_symbol, decode_base_type): Update.
7309         * c-varobj.c (c_is_path_expr_parent): Update.
7310         * c-typeprint.c (c_type_print_base_struct_union): Update.
7311         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7312         summary when using C language.
7313         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7314         (gen_maybe_namespace_elt): Update.
7315         * ada-lang.c (ada_type_name): Simplify.
7316         (empty_record, ada_template_to_fixed_record_type_1)
7317         (template_to_static_fixed_type)
7318         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7319
7320 2018-06-01  Tom Tromey  <tom@tromey.com>
7321
7322         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7323         c_print_type.
7324         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7325         (c_print_type): Update.
7326         (c_print_type): New overload.
7327         (c_type_print_varspec_prefix, c_type_print_args)
7328         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7329         (c_type_print_base_struct_union, c_type_print_base_1)
7330         (cp_type_print_method_args): Add "language" parameter.
7331         (c_type_print_base): Update.
7332         * c-lang.h (c_print_type): Add new overload.
7333
7334 2018-06-01  Tom Tromey  <tom@tromey.com>
7335
7336         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7337         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7338
7339 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7340
7341         * aarch64-tdep.c (aarch64_sve_register_names): New const
7342         var.
7343         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7344         (AARCH64_SVE_Z_REGS_NUM): New define.
7345         (AARCH64_SVE_P_REGS_NUM): Likewise.
7346         (AARCH64_SVE_NUM_REGS): Likewise.
7347
7348 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7349
7350         * nat/linux-ptrace.h [__alpha__]
7351         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7352         definitions.
7353
7354 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7355
7356         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7357         the endianness selected.
7358         * NEWS: Document `set endian auto' mode operation update.
7359
7360 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7361
7362         * Makefile.in: Add new header.
7363         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7364         (sve_vl_from_vg): Likewise.
7365         (sve_vq_from_vl): Likewise.
7366         (sve_vl_from_vq): Likewise.
7367         (sve_vq_from_vg): Likewise.
7368         (sve_vg_from_vq): Likewise.
7369         * configure.nat: Add new c file.
7370         * nat/aarch64-sve-linux-ptrace.c: New file.
7371         * nat/aarch64-sve-linux-ptrace.h: New file.
7372
7373 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7374
7375         * aarch64-linux-nat.c (aarch64_linux_read_description):
7376         Add parmeter zero.
7377         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7378         Likewise.
7379         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7380         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7381         (aarch64_gdbarch_init): Add parmeter zero.
7382         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7383         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7384         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7385         parmeter.
7386         * doc/gdb.texinfo: Describe SVE feature
7387         * features/aarch64-sve.c: New file.
7388
7389 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7390
7391         PR gdb/23210
7392         * gdbarch.sh (significant_addr_bit): Default to zero when
7393         not set by target architecture.
7394         * gdbarch.c: Re-generated.
7395         * utils.c (address_significant): Update.
7396
7397 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7398
7399         * stack.c (func_command): Remove trailing newline in call to error.
7400
7401 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7402
7403         * regcache.h (regcache_raw_collect): Remove, update callers to
7404         use regcache::raw_collect.
7405         * regcache.c (regcache_raw_collect): Remove.
7406
7407 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7408
7409         * regcache.h (regcache_raw_supply): Remove, update callers to
7410         use detached_regcache::raw_supply.
7411         * regcache.c (regcache_raw_supply): Remove.
7412
7413 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7414
7415         * regcache.h (regcache_cooked_write_part): Remove, update
7416         callers to use regcache::cooked_write_part.
7417         * regcache.c (regcache_cooked_write_part): Remove.
7418
7419 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7420
7421         * regcache.h (regcache_cooked_read_part): Remove, update callers
7422         to use readable_regcache::cooked_read_part.
7423         * regcache.c (regcache_cooked_read_part): Remove.
7424
7425 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7426
7427         * regcache.h (regcache_cooked_read_value): Remove, update
7428         callers to use readable_regcache::cooked_read_value.
7429         * regcache.c (regcache_cooked_read_value): Remove.
7430
7431 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7432
7433         * regcache.h (regcache_cooked_write): Remove, update callers to
7434         use regcache::cooked_write.
7435         * regcache.c (regcache_cooked_write): Remove.
7436
7437 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7438
7439         * regcache.h (regcache_invalidate): Remove, update callers to
7440         use detached_regcache::invalidate instead.
7441         * regcache.c (regcache_invalidate): Remove.
7442
7443 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7444
7445         * regcache.h (regcache_raw_write_part): Remove, update callers
7446         to use regcache::raw_write_part instead.
7447         * regcache.c (regcache_raw_write_part): Remove.
7448
7449 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7450
7451         * regcache.h (regcache_raw_read_part): Remove, update callers to
7452         use readable_regcache::raw_read_part instead.
7453         * regcache.c (regcache_raw_read_part): Remove.
7454
7455 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7456
7457         * regcache.h (regcache_cooked_read): Remove, update callers to
7458         use readable_regcache::cooked_read instead.
7459         * regcache.c (regcache_cooked_read): Remove.
7460
7461 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7462
7463         * regcache.h (regcache_raw_write): Remove, update callers to use
7464         regcache::raw_write instead.
7465         * regcache.c (regcache_raw_write): Remove.
7466
7467 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7468
7469         * regcache.h (regcache_raw_read): Remove, update callers to use
7470         readable_regcache::raw_read instead.
7471         * regcache.c (regcache_raw_read): Remove.
7472
7473 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7474
7475         * regcache.h (regcache_raw_update): Remove, update callers to
7476         use readable_regcache::raw_update instead.
7477         * regcache.c (regcache_raw_update): Remove.
7478
7479 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7480
7481         * regcache.h (regcache_register_status): Remove, update callers
7482         to use reg_buffer::get_register_status directly instead.
7483         * regcache.c (regcache_register_status): Remove.
7484
7485 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7486
7487         * regcache.h (regcache_get_ptid): Remove, update all callers to
7488         call regcache::ptid instead.
7489         * regcache.c (regcache_get_ptid): Remove.
7490
7491 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7492
7493         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7494
7495 2018-05-30  Pedro Alves  <palves@redhat.com>
7496
7497         * common/common-exceptions.h (exception_rethrow): Use
7498         ATTRIBUTE_NORETURN.
7499
7500 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7501
7502         * breakpoint.c (print_solib_event, check_status_catch_solib):
7503         Remove struct keyword in range-based for loops.
7504         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7505         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7506         Likewise.
7507         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7508         Likewise.
7509         * symfile.c (addr_info_make_relative): Likewise.
7510         * thread.c (value_in_thread_stack_temporaries): Likewise.
7511
7512 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7513
7514         PR gdb/16841
7515         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7516         aggregate type to get its real type before accessing it.
7517
7518 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7519
7520         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7521         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7522         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7523         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7524         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7525         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7526         * printcmd.c (info_address_command): Likewise.
7527
7528 2018-05-29  Tom Tromey  <tom@tromey.com>
7529
7530         * windows-nat.c (handle_exception): Update fall-through comment.
7531
7532 2018-05-29  Tom Tromey  <tom@tromey.com>
7533
7534         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7535         (struct program_space) <added_solibs>: Now a std::vector.
7536         * breakpoint.c (print_solib_event): Update.
7537         (check_status_catch_solib): Update.
7538         * progspace.c (clear_program_space_solib_cache): Update.
7539         * solib.c (update_solib_list): Update.
7540
7541 2018-05-29  Tom Tromey  <tom@tromey.com>
7542
7543         * python/py-type.c (typy_richcompare): Update.
7544         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7545         * gdbtypes.h (types_deeply_equal): Return bool.
7546         (types_equal): Likewise.
7547         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7548         declare VEC.
7549         (check_types_equal): Change worklist to std::vector.  Return
7550         bool.
7551         (struct type_equality_entry): Add constructor.
7552         (compare_maybe_null_strings): Return bool.
7553         (check_types_worklist): Return bool.  Change worklist to
7554         std::vector.
7555         (types_deeply_equal): Use std::vector.
7556         (types_equal): Return bool.
7557         (compare_maybe_null_strings): Simplify.
7558
7559 2018-05-29  Tom Tromey  <tom@tromey.com>
7560
7561         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7562
7563 2018-05-29  Tom Tromey  <tom@tromey.com>
7564
7565         * objc-lang.h: Don't include cp-support.h.
7566         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7567         declare VEC.
7568
7569 2018-05-27  Tom Tromey  <tom@tromey.com>
7570
7571         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7572
7573 2018-05-25  Tom Tromey  <tom@tromey.com>
7574
7575         * value.c (value::location): Initialize.
7576
7577 2018-05-25  Tom Tromey  <tom@tromey.com>
7578
7579         * dbxread.c (init_bincl_list): Remove.
7580         (bincl_list): Now a std::vector.
7581         (bincls_allocated, next_bincl): Remove.
7582         (free_bincl_list, do_free_bincl_list_cleanup)
7583         (make_cleanup_free_bincl_list): Remove.
7584         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7585         unique_xmalloc_ptr.
7586         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7587         (struct header_file_location): Add constructor.
7588         (add_bincl_to_list): Remove.
7589
7590 2018-05-25  Tom Tromey  <tom@tromey.com>
7591
7592         * tui/tui.c (tui_enable): Update.
7593         * mi/mi-interp.c (mi_interp::init): Update.
7594         * interps.h (class interp) <name>: New method.
7595         <m_name>: Rename from name.
7596         (~scoped_restore_interp): Update.
7597         * interps.c (interp::interp): Update.
7598         (interp_add, interp_set, interp_lookup_existing)
7599         (current_interp_named_p): Update.
7600
7601 2018-05-25  Tom Tromey  <tom@tromey.com>
7602
7603         * interps.c (interp_name): Remove.
7604         * mi/mi-interp.c (mi_interp::init): Update.
7605         * interps.h (interp_name): Remove.
7606         (~scoped_restore_interp): Update.
7607         * tui/tui.c (tui_enable): Update.
7608
7609 2018-05-25  Tom Tromey  <tom@tromey.com>
7610
7611         * utils.c (fputs_maybe_filtered): Update.
7612         * linespec.c (decode_line_full): Update.
7613         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7614         (mi_print_breakpoint_for_event, mi_solib_loaded)
7615         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7616         (mi_user_selected_context_changed): Update.
7617         * mi/mi-main.c (mi_execute_command): Update.
7618         * cli/cli-script.c (execute_control_command): Update.
7619         * python/python.c (execute_gdb_command): Update.
7620         * solib.c (info_sharedlibrary_command): Update.
7621         * interps.c (interp_ui_out): Remove.
7622         * interps.h (interp_ui_out): Remove.
7623
7624 2018-05-25  Tom Tromey  <tom@tromey.com>
7625
7626         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7627         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7628         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7629
7630 2018-05-25  Tom Tromey  <tom@tromey.com>
7631
7632         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7633         * interps.c (interp_exec): Use scoped_restore.
7634
7635 2018-05-25  Tom Tromey  <tom@tromey.com>
7636
7637         * remote.c (remote_target::remote_file_get): Use
7638         gdb::byte_vector.
7639         (remote_target::remote_file_put): Likewise.
7640
7641 2018-05-25  Tom Tromey  <tom@tromey.com>
7642
7643         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7644         a std::string.
7645         (get_pe_section_index, add_pe_exported_sym): Update.
7646         (read_pe_exported_syms): Use gdb::def_vector.
7647
7648 2018-05-25  Tom Tromey  <tom@tromey.com>
7649
7650         * frame.c (remove_prev_frame): Remove.
7651         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7652
7653 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7654
7655         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7656         Remove prototypes.
7657         * mips-linux-nat.c (supply_fpregset): Always call
7658         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7659         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7660         `mips_fill_fpregset'.
7661         * mips-linux-tdep.c (mips_supply_fpregset)
7662         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7663         (mips_fill_fpregset_wrapper): Remove functions.
7664         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7665         (mips_linux_fpregset): Remove variable.
7666         (mips_linux_iterate_over_regset_sections): Use
7667         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7668         (mips_linux_o32_sigframe_init): Remove comment.
7669
7670 2018-05-25  Pedro Alves  <palves@redhat.com>
7671
7672         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7673         (struct readahead_cache, struct packet_reg, struct
7674         remote_arch_state, class remote_state): Move higher up in the
7675         file.
7676         (remote_target::m_remote_state): Now an object instead of a pointer.
7677         (remote_target::get_remote_state): Adjust.
7678
7679 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7680
7681         * stack.c (select_and_print_frame): Delete.
7682         (struct function_bounds): Move struct within function.
7683         (func_command): Most content moved into new function
7684         find_frame_for_function, use new function, print result, add
7685         function comment.
7686         (find_frame_for_function): New function, now returns a result.
7687
7688 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7689
7690         * stack.c (iterate_over_block_arg_vars): Fix comment.
7691         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7692
7693 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7694
7695         PR gdb/23203
7696         * frame.c
7697         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7698         Define.
7699         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7700         Define.
7701         * frame.h (class scoped_restore_selected_frame): New class.
7702         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7703         of any exception, use scoped_restore_selected_frame to restore the
7704         frame instead.
7705
7706 2018-05-24  Pedro Alves  <palves@redhat.com>
7707
7708         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7709         override.
7710
7711 2018-05-23  Tom Tromey  <tom@tromey.com>
7712
7713         * complaints.c (struct complaints): Remove.
7714         (symfile_complaint_book): Remove.
7715         (series): New global.
7716         (complaint_internal): Update.
7717         (clear_complaints): Update.
7718
7719 2018-05-23  Tom Tromey  <tom@tromey.com>
7720
7721         * complaints.c (counters): New global.
7722         (struct complain): Remove.
7723         (struct complaints) <root>: Remove.
7724         (complaint_sentinel): Remove.
7725         (symfile_complaint_book): Update.
7726         (find_complaint) Remove.
7727         (complaint_internal, clear_complaints): Update.
7728
7729 2018-05-23  Tom Tromey  <tom@tromey.com>
7730
7731         * complaints.c (struct complain) <file, line>: Remove.
7732         (find_complaint): Remove file, line parameters.
7733         (complaint_internal): Update.
7734
7735 2018-05-23  Tom Tromey  <tom@tromey.com>
7736
7737         * complaints.c (vcomplaint): Remove.
7738         (complaint_internal) Merge in contents of vcomplaint.
7739
7740 2018-05-23  Tom Tromey  <tom@tromey.com>
7741
7742         * complaints.c (struct complaints) <explanation>: Remove.
7743         (symfile_explanations): Remove.
7744         (symfile_complaint_book): Update.
7745         (vcomplaint): Update.
7746         (struct explanation): Remove.
7747
7748 2018-05-23  Tom Tromey  <tom@tromey.com>
7749
7750         * complaints.c (symfile_complaints): Remove.
7751         (complaint_internal): Remove "complaints" parameter.
7752         (clear_complaints, vcomplaint): Remove "c" parameter.
7753         (get_complaints): Remove.
7754         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7755         (dwarf2_debug_line_missing_file_complaint)
7756         (dwarf2_debug_line_missing_end_sequence_complaint)
7757         (dwarf2_complex_location_expr_complaint)
7758         (dwarf2_const_value_length_mismatch_complaint)
7759         (dwarf2_section_buffer_overflow_complaint)
7760         (dwarf2_macro_malformed_definition_complaint)
7761         (dwarf2_invalid_attrib_class_complaint)
7762         (create_addrmap_from_index, dw2_symtab_iter_next)
7763         (dw2_expand_marked_cus)
7764         (dw2_debug_names_iterator::find_vec_in_debug_names)
7765         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7766         (create_debug_type_hash_table, init_cutu_and_read_dies)
7767         (partial_die_parent_scope, add_partial_enumeration)
7768         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7769         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7770         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7771         (create_cus_hash_table, create_dwp_hash_table)
7772         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7773         (dwarf2_rnglists_process, dwarf2_ranges_process)
7774         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7775         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7776         (handle_struct_member_die, process_structure_scope)
7777         (read_array_type, read_common_block, read_module_type)
7778         (read_tag_pointer_type, read_typedef, read_base_type)
7779         (read_subrange_type, load_partial_dies, partial_die_info::read)
7780         (partial_die_info::read, partial_die_info::read)
7781         (partial_die_info::read, read_checked_initial_length_and_offset)
7782         (dwarf2_string_attr, read_formatted_entries)
7783         (dwarf_decode_line_header)
7784         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7785         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7786         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7787         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7788         (get_signatured_type, get_DW_AT_signature_type)
7789         (decode_locdesc, file_file_name, consume_improper_spaces)
7790         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7791         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7792         (dwarf2_symbol_mark_computed, set_die_type)
7793         (read_attribute_value): Update.
7794         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7795         Update.
7796         * dbxread.c (unknown_symtype_complaint)
7797         (lbrac_mismatch_complaint, repeated_header_complaint)
7798         (set_namestring, function_outside_compilation_unit_complaint)
7799         (read_dbx_symtab, process_one_symbol): Update.
7800         * gdbtypes.c (stub_noname_complaint): Update.
7801         * windows-nat.c (handle_unload_dll): Update.
7802         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7803         (decode_base_type): Update.
7804         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7805         (eb_complaint, record_include_begin, record_include_end)
7806         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7807         (process_xcoff_symbol, read_symbol)
7808         (function_outside_compilation_unit_complaint)
7809         (scan_xcoff_symtab): Update.
7810         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7811         * buildsym.c (finish_block_internal, make_blockvector)
7812         (end_symtab_get_static_block, augment_type_symtab): Update.
7813         * dtrace-probe.c (dtrace_process_dof)
7814         (dtrace_static_probe_ops::get_probes): Update.
7815         * complaints.h (struct complaint): Don't declare.
7816         (symfile_complaints): Remove.
7817         (complaint_internal): Remove "complaints" parameter.
7818         (complaint): Likewise.
7819         (clear_complaints): Likewise.
7820         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7821         (reread_symbols): Update.
7822         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7823         (dwarf2_frame_cache, decode_frame_entry): Update.
7824         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7825         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7826         (info_selectors_command): Update.
7827         * macrotab.c (macro_include, check_for_redefinition)
7828         (macro_undef): Update.
7829         * objfiles.c (filter_overlapping_sections): Update.
7830         * stabsread.c (invalid_cpp_abbrev_complaint)
7831         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7832         (define_symbol, error_type, read_type, rs6000_builtin_type)
7833         (stabs_method_name_from_physname, read_member_functions)
7834         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7835         (attach_fields_to_type, complain_about_struct_wipeout)
7836         (read_range_type, read_args, common_block_start)
7837         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7838         Update.
7839         * mdebugread.c (index_complaint, unknown_ext_complaint)
7840         (basic_type_complaint, bad_tag_guess_complaint)
7841         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7842         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7843         (parse_procedure, parse_lines)
7844         (function_outside_compilation_unit_complaint)
7845         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7846         (bad_tag_guess_complaint, reg_value_complaint): Update.
7847         * cp-support.c (demangled_name_complaint): Update.
7848         * macroscope.c (sal_macro_scope): Update.
7849         * dwarf-index-write.c (class debug_names): Update.
7850
7851 2018-05-23  Tom Tromey  <tom@tromey.com>
7852
7853         * complaints.c (clear_complaints): Remove "noisy" parameter.
7854         * complaints.h (clear_complaints): Update.
7855         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7856         (reread_symbols): Update.
7857
7858 2018-05-23  Tom Tromey  <tom@tromey.com>
7859
7860         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7861         SUBSEQUENT_MESSAGE.
7862         (vcomplaint, clear_complaints): Update.
7863         (symfile_explanations): Remove some messages.
7864
7865 2018-05-23  Tom Tromey  <tom@tromey.com>
7866
7867         * complaints.c (internal_complaint): Remove.
7868         * complaints.h (internal_complaint): Remove.
7869
7870 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7871
7872         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7873
7874 2018-05-22  Pedro Alves  <palves@redhat.com>
7875
7876         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7877         (remote_fileio_badfd, remote_fileio_return_errno)
7878         (remote_fileio_return_success, remote_fileio_func_open)
7879         (remote_fileio_func_open, remote_fileio_func_close)
7880         (remote_fileio_func_read, remote_fileio_func_write)
7881         (remote_fileio_func_lseek, remote_fileio_func_rename)
7882         (remote_fileio_func_unlink, remote_fileio_func_stat)
7883         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7884         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7885         remote_target parameter.
7886         (remote_fio_func_map) <func>: Add remote_target parameter.
7887         (do_remote_fileio_request, remote_fileio_request):
7888         * remote-fileio.h (remote_fileio_request):
7889         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7890         remote_target parameter.
7891         (remote_notif_process, handle_notification): Adjust to pass down
7892         the remote.
7893         (remote_notif_state_allocate): Add remote_target parameter.  Save
7894         it.
7895         * remote-notif.h (struct remote_target): Forward declare.
7896         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7897         remote_target parameter.
7898         (struct remote_notif_state) <remote>: New field.
7899         (remote_notif_ack, remote_notif_parse): Add remote_target
7900         parameter.
7901         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7902         remote_target parameter.
7903         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7904         (threads_listing_context, rmt_thread_action, protocol_feature)
7905         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7906         (packet_result, struct threads_listing_context, remote_state):
7907         Move definitions and declarations higher up.
7908         (remote_target) <~remote_target>: Declare.
7909         (remote_download_command_source, remote_file_put, remote_file_get)
7910         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7911         (remote_hostio_pread_vFile, remote_hostio_send_command)
7912         (remote_hostio_set_filesystem, remote_hostio_open)
7913         (remote_hostio_close, remote_hostio_unlink, remote_state)
7914         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7915         (get_memory_write_packet_size, get_memory_read_packet_size)
7916         (append_pending_thread_resumptions, remote_detach_1)
7917         (append_resumption, remote_resume_with_vcont)
7918         (add_current_inferior_and_thread, wait_ns, wait_as)
7919         (process_stop_reply, remote_notice_new_inferior)
7920         (process_initial_stop_replies, remote_add_thread)
7921         (btrace_sync_conf, remote_btrace_maybe_reopen)
7922         (remove_new_fork_children, kill_new_fork_children)
7923         (discard_pending_stop_replies, stop_reply_queue_length)
7924         (check_pending_events_prevent_wildcard_vcont)
7925         (discard_pending_stop_replies_in_queue, stop_reply)
7926         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7927         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7928         (remote_interrupt_as, remote_interrupt_ns)
7929         (remote_get_noisy_reply, remote_query_attached)
7930         (remote_add_inferior, remote_current_thread, get_current_thread)
7931         (set_thread, set_general_thread, set_continue_thread)
7932         (set_general_process, write_ptid)
7933         (remote_unpack_thread_info_response, remote_get_threadinfo)
7934         (parse_threadlist_response, remote_get_threadlist)
7935         (remote_threadlist_iterator, remote_get_threads_with_ql)
7936         (remote_get_threads_with_qxfer)
7937         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7938         (get_offsets, remote_check_symbols, remote_supported_packet)
7939         (remote_query_supported, remote_packet_size)
7940         (remote_serial_quit_handler, remote_detach_pid)
7941         (remote_vcont_probe, remote_resume_with_hc)
7942         (send_interrupt_sequence, interrupt_query)
7943         (remote_notif_get_pending_events, fetch_register_using_p)
7944         (send_g_packet, process_g_packet, fetch_registers_using_g)
7945         (store_register_using_P, store_registers_using_G)
7946         (set_remote_traceframe, check_binary_download)
7947         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7948         (remote_xfer_live_readonly_partial, remote_read_bytes)
7949         (remote_send_printf, remote_flash_write, readchar)
7950         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7951         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7952         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7953         (extended_remote_disable_randomization, extended_remote_run)
7954         (send_environment_packet, extended_remote_environment_support)
7955         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7956         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7957         (packet_command): Now methods of ...
7958         (remote_target): ... this class.
7959         (m_remote_state) <remote_target>: New field.
7960         (struct remote_state) <stop_reply_queue,
7961         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7962         fields.
7963         (remote_state::remote_state): Allocate stop_reply_queue.
7964         (remote_state): Delete global.
7965         (get_remote_state_raw): Delete.
7966         (remote_target::get_remote_state): Allocate m_remote_state on
7967         demand.
7968         (get_current_remote_target): New.
7969         (remote_ops, extended_remote_ops): Delete.
7970         (wait_forever_enabled_p, remote_async_inferior_event_token):
7971         Delete, moved to struct remote_state.
7972         (remote_target::close): Delete self.  Destruction bits split to
7973         ...
7974         (remote_target::~remote_target): ... this.
7975         (show_memory_packet_size): Adjust to use
7976         get_current_remote_target.
7977         (struct protocol_feature) <func>: Add remote_target parameter.
7978         All callers adjusted.
7979         (curr_quit_handler_target): New.
7980         (remote_serial_quit_handler): Reimplement.
7981         (remote_target::open_1): Adjust to use get_current_remote_target.
7982         Heap-allocate remote_target/extended_remote_target instances.
7983         (vcont_builder::vcont_builder): Add remote_target parameter, and
7984         save it in m_remote.  All callers adjusted.
7985         (vcont_builder::m_remote): New field.
7986         (vcont_builder::restart, vcont_builder::flush)
7987         (vcont_builder::push_action): Use it.
7988         (remote_target::commit_resume): Use it.
7989         (struct queue_iter_param) <remote>: New field.
7990         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7991         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
7992         (check_pending_event_prevents_wildcard_vcont_callback)
7993         (remote_target::check_pending_events_prevent_wildcard_vcont)
7994         (remote_target::discard_pending_stop_replies)
7995         (remote_target::discard_pending_stop_replies_in_queue)
7996         (remote_target::remote_notif_remove_queued_reply): Fill in
7997         'remote' field.
7998         (remote_notif_get_pending_events): New.
7999         (remote_target::readchar, remote_target::remote_serial_write):
8000         Save/restore curr_quit_handler_target.
8001         (putpkt): New.
8002         (kill_new_fork_children): Fill in 'remote' field.
8003         (packet_command): Use get_current_remote_target, defer to
8004         remote_target method of same name.
8005         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8006         parameter, and save it in m_remote.  All callers adjusted.
8007         (scoped_remote_fd::release): Use m_remote.
8008         (scoped_remote_fd::m_remote): New field.
8009         (remote_file_put, remote_file_get, remote_file_delete): Use
8010         get_current_remote_target, defer to remote_target method of same
8011         name.
8012         (remote_btrace_reset): Add remote_state paremeter.  Update all
8013         callers.
8014         (remote_async_inferior_event_handler). Pass down 'data'.
8015         (remote_new_objfile): Use get_current_remote_target.
8016         (remote_target::vcont_r_supported): New.
8017         (set_range_stepping): Use get_current_remote_target and
8018         remote_target::vcont_r_supported.
8019         (_initialize_remote): Don't allocate 'remote_state' and
8020         'stop_reply_queue' globals.
8021         * remote.h (struct remote_target): Forward declare.
8022         (getpkt, putpkt, remote_notif_get_pending_events): Add
8023         'remote_target' parameter.
8024
8025 2018-05-22  Pedro Alves  <palves@redhat.com>
8026
8027         * remote.c (vcont_builder): Now a class.  Make all data members
8028         private.
8029         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8030         Declare methods.
8031         (vcont_builder_restart): Rename to ...
8032         (vcont_builder::restart): ... this.
8033         (vcont_builder_flush): Rename to ...
8034         (vcont_builder::flush): ... this.
8035         (vcont_builder_push_action): Rename to ...
8036         (vcont_builder::push_action): ... this.
8037         (remote_target::commit_resume): Adjust.
8038
8039 2018-05-22  Pedro Alves  <palves@redhat.com>
8040
8041         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8042         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8043         (get_fixed_memory_packet_size): New.
8044         (get_memory_packet_size): Use it.
8045         (set_memory_packet_size): Don't override the config size with
8046         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8047         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8048         Don't refer to get_memory_packet_size if not connected to a remote
8049         target.  Show "(default)" if configured size is 0.
8050
8051 2018-05-22  Pedro Alves  <palves@redhat.com>
8052
8053         * remote.c (remote_target::mourn_inferior): Move
8054         discard_pending_stop_replies call here from ...
8055         (_initialize_remote): ... here.
8056
8057 2018-05-22  Pedro Alves  <palves@redhat.com>
8058
8059         * remote.c (compare_section_command): Remove set_general_process
8060         call.
8061
8062 2018-05-22  Pedro Alves  <palves@redhat.com>
8063
8064         * remote.c (struct packet_reg, struct remote_arch_state):
8065         Move higher up in the file.
8066         (remote_state) <m_arch_states>: Store remote_arch_state values
8067         instead of remote_arch_state pointers.
8068         (remote_state::get_remote_arch_state): Adjust.
8069
8070 2018-05-22  Pedro Alves  <palves@redhat.com>
8071
8072         * remote.c: Include <unordered_map>.
8073         (remote_state): Now a class.
8074         (remote_state) <get_remote_arch_state>: Declare method.
8075         <get_remote_arch_state>: New field.
8076         (remote_arch_state) <remote_arch_state>: Declare ctor.
8077         <regs>: Now a unique_ptr.
8078         (remote_gdbarch_data_handle): Delete.
8079         (get_remote_arch_state): Delete.
8080         (remote_state::get_remote_arch_state): New.
8081         (get_remote_state): Adjust to call remote_state's
8082         get_remote_arch_state method.
8083         (init_remote_state): Delete, bits factored out to ...
8084         (remote_arch_state::remote_arch_state): ... this new method.
8085         (get_remote_packet_size, get_memory_packet_size)
8086         (process_g_packet, remote_target::fetch_registers)
8087         (remote_target::prepare_to_store, store_registers_using_G)
8088         (remote_target::store_registers, remote_target::get_trace_status):
8089         Adjust to call remote_state's method.
8090         (_initialize_remote): Remove reference to
8091         remote_gdbarch_data_handle.
8092
8093 2018-05-22  Pedro Alves  <palves@redhat.com>
8094
8095         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8096         pread>: New method declarations.
8097         (remote_target::open_1): Adjust.
8098         (readahead_cache_invalidate): Rename to ...
8099         (readahead_cache::invalidate): ... this, and adjust to be a class
8100         method.
8101         (readahead_cache_invalidate_fd): Rename to ...
8102         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8103         class method.
8104         (remote_hostio_pwrite): Adjust.
8105         (remote_hostio_pread_from_cache): Rename to ...
8106         (readahead_cache::pread): ... this, and adjust to be a class
8107         method.
8108         (remote_hostio_close): Adjust.
8109
8110 2018-05-22  Pedro Alves  <palves@redhat.com>
8111
8112         * remote.c (remote_hostio_close_cleanup): Delete.
8113         (class scoped_remote_fd): New.
8114         (remote_file_put, remote_file_get): Use it.
8115
8116 2018-05-22  Pedro Alves  <palves@redhat.com>
8117
8118         (struct vCont_action_support): Use bool and initialize all fields.
8119         (struct readahead_cache): Initialize all fields.
8120         (remote_state): Use bool and initialize all fields.
8121         (remote_state::remote_state, remote_state::~remote_state): New.
8122         (new_remote_state): Delete.
8123         (_initialize_remote): Use new to allocate remote_state.
8124
8125 2018-05-22  Pedro Alves  <palves@redhat.com>
8126             張俊芝  <zjz@zjz.name>
8127
8128         PR gdb/22973
8129         * c-exp.y: Include "c-support.h".
8130         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8131         of tolower.  Use c_ident_is_alpha to scan names.
8132         * c-lang.c: Include "c-support.h".
8133         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8134         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8135         * c-support.h: New file, with bits factored out from ...
8136         * cp-name-parser.y: ... this file.
8137         Include "c-support.h".
8138         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8139         c-support.h and renamed.
8140         (symbol_end, yylex): Adjust.
8141
8142 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8143
8144         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8145         parameter type to CORE_ADDR.
8146         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8147         parameter type in declaration to CORE_ADDR.
8148         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8149         target_auxv_search to get AT_HWCAP and use the result to get the
8150         target description.
8151         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8152         to CORE_ADDR. Remove the cast of the return value to unsigned
8153         long. Fix error predicate of target_auxv_search.
8154         (ppc_linux_nat_target::read_description): Change the type of the
8155         hwcap variable to CORE_ADDR.
8156
8157 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8158
8159         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8160         if the size of fpscr is larger than 32 bits.
8161
8162 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8163
8164         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8165         (ppc32_linux_vsxregmap): New global.
8166         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8167         regcache_supply_regset, and regcache_collect_regset.
8168         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8169         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8170         (fetch_vsx_register, store_vsx_register): Remove.
8171         (fetch_vsx_registers): Add regno parameter. Get regset using
8172         ppc_linux_vsxregset. Use regset to supply registers.
8173         (store_vsx_registers): Add regno parameter. Get regset using
8174         ppc_linux_vsxregset. Use regset to collect registers.
8175         (fetch_register): Call fetch_vsx_registers instead of
8176         fetch_vsx_register.
8177         (store_register): Call store_vsx_registers instead of
8178         store_vsx_register.
8179         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8180         new regno parameter.
8181         (store_ppc_registers): Call store_vsx_registers with -1 for the
8182         new regno parameter.
8183         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8184         (ppc_collect_vsxregset): Remove.
8185
8186 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8187
8188         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8189         offset fields.
8190         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8191         for vector register offset fields.
8192         (ppc64_fbsd_reg_offsets): Likewise.
8193         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8194         to vector register offset fields.
8195         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8196         to vector register offset fields.
8197         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8198         vector register offset fields.
8199         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8200         initializers for vector register offset fields.
8201         (rs6000_aix64_reg_offsets): Likewise.
8202         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8203         (ppc_supply_vrregset): Remove.
8204         (ppc_collect_vrregset): Remove.
8205         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8206         (ppc_linux_vrregset) : New function.
8207         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8208         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8209         (ppc32_linux_vrregset): Remove.
8210         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8211         and use result instead of ppc32_linux_vrregset.
8212         (ppc32_linux_reg_offsets): Remove initializers for vector register
8213         offset fields.
8214         (ppc64_linux_reg_offsets): Likewise.
8215         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8216         * ppc-linux-nat.c: Include regset.h.
8217         (gdb_vrregset_t): Adjust comment to account for little-endian
8218         mode.
8219         (supply_vrregset, fill_vrregset): Remove.
8220         (fetch_altivec_register, store_altivec_register): Remove.
8221         (fetch_altivec_registers): Add regno parameter. Get regset using
8222         ppc_linux_vrregset. Use regset to supply registers.
8223         (store_altivec_registers): Add regno parameter. Get regset using
8224         ppc_linux_vrregset. Use regset to collect registers.
8225         (fetch_register): Call fetch_altivec_registers instead of
8226         fetch_altivec_register.
8227         (store_register): Call store_altivec_registers instead of
8228         store_altivec_register.
8229         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8230         the new regno parameter.
8231         (store_ppc_registers): Call store_altivec_registers with -1 for
8232         the new regno parameter.
8233
8234 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8235
8236         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8237         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8238         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8239         (gdb_vrregset_t): Change array type size to
8240         PPC_LINUX_SIZEOF_VRREGSET.
8241         (gdb_vsxregset_t): Change array type size to
8242         PPC_LINUX_SIZEOF_VSXREGSET.
8243         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8244         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8245         PPC_LINUX_SIZEOF_VSXREGSET.
8246
8247 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8248
8249         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8250         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8251         nat/ppc-linux.c.
8252         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8253         ppc_linux_target_wordsize with tid.
8254         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8255         wordsize with tid.
8256         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8257         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8258         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8259         tid parameter. Remove static specifier.
8260         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8261         (ppc_linux_target_wordsize): New declaration.
8262
8263 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8264
8265         * arch/ppc-linux-common.c: New file.
8266         * arch/ppc-linux-common.h: New file.
8267         * arch/ppc-linux-tdesc.h: New file.
8268         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8269         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8270         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8271         arch/ppc-linux-tdesc.h.
8272         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8273         arch/ppc-linux-tdesc.h.
8274         (ppc_linux_nat_target::read_description): Remove target
8275         description matching code. Fill a ppc_linux_features struct and
8276         call ppc_linux_match_description with it. Move comment about ISA
8277         2.05 to ppc-linux-common.c.
8278         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8279         arch/ppc-linux-tdesc.h.
8280         (ppc_linux_core_read_description): Remove target description
8281         matching code. Fill a ppc_linux_features struct and call
8282         ppc_linux_match_description with it.
8283         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8284         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8285         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8286         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8287         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8288         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8289         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8290         (tdesc_powerpc_e500l): Remove.
8291
8292 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8293
8294         * ada-lang.c (catch_assert_command): Pass empty string instead
8295         of NULL for excep_string argument.
8296
8297 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8298
8299         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8300         the width of the requested register exceeds the width of the
8301         `ptrace' data type.
8302
8303 2018-05-21  Tom Tromey  <tom@tromey.com>
8304
8305         * printcmd.c (output_command): Remove.
8306         (output_command_const): Rename to output_command.
8307         * valprint.h (output_command): Rename from output_command_const.
8308         * tracepoint.c (trace_dump_actions): Call output_command.
8309
8310 2018-05-21  Tom Tromey  <tom@tromey.com>
8311
8312         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8313         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8314         * ada-lang.h (create_ada_exception_catchpoint): Update.
8315         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8316         std::string.
8317         (create_excep_cond_exprs, ~ada_catchpoint)
8318         (should_stop_exception, print_one_exception)
8319         (print_mention_exception, print_recreate_exception): Update.
8320         (ada_get_next_arg): Remove.
8321         (catch_ada_exception_command_split): Use std::string.  Change type
8322         of "excep_string", "cond_string".
8323         (catch_ada_exception_command): Update.
8324         (create_ada_exception_catchpoint): Change type of excep_string.
8325         (ada_exception_sal): Remove excep_string parameter.
8326         (~ada_catchpoint): Remove.
8327
8328 2018-05-21  Tom Tromey  <tom@tromey.com>
8329
8330         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8331         cleanup.
8332
8333 2018-05-21  Tom Tromey  <tom@tromey.com>
8334
8335         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8336         Return unique_xmalloc_ptr.
8337         (print_it_exception): Update.
8338
8339 2018-05-21  Tom Tromey  <tom@tromey.com>
8340
8341         * tracepoint.c (trace_dump_actions): Use std::string.
8342
8343 2018-05-21  Tom Tromey  <tom@tromey.com>
8344
8345         * symfile.c (reread_symbols): Use std::string for original_name.
8346
8347 2018-05-21  Tom Tromey  <tom@tromey.com>
8348
8349         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8350         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8351         constructor.
8352
8353 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8354
8355         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8356         instance to...
8357         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8358         * objfiles.c (get_objfile_bfd_data): Allocate
8359         objfile_per_bfd_storage with obstack_new when allocating on
8360         obstack.
8361
8362 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8363
8364         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8365         OBSTACK_ZALLOC.
8366         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8367         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8368         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8369         (add_pending): Likewise.
8370         (parse_symbol): Likewise.
8371         (parse_partial_symbols): Likewise.
8372         (psymtab_to_symtab_1): Likewise.
8373         (new_psymtab): Likewise.
8374         (elfmdebug_build_psymtabs): Likewise.
8375         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8376         * objfiles.c (get_objfile_bfd_data): Likewise.
8377         (objfile_register_static_link): Likewise.
8378         * psymtab.c (allocate_psymtab): Likewise.
8379         * stabsread.c (read_member_functions): Likewise.
8380         * xcoffread.c (xcoff_end_psymtab): Likewise.
8381
8382 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8383
8384         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8385         compiler supports std::is_trivially_constructible.
8386         * common/poison.h: Include obstack.h.
8387         (IsMallocable): Define to is_trivially_constructible if the
8388         compiler supports it, define to true_type otherwise.
8389         (xobnew): New.
8390         (XOBNEW): Redefine.
8391         (xobnewvec): New.
8392         (XOBNEWVEC): Redefine.
8393         * gdb_obstack.h (obstack_zalloc): New.
8394         (OBSTACK_ZALLOC): Redefine.
8395         (obstack_calloc): New.
8396         (OBSTACK_CALLOC): Redefine.
8397         (obstack_new): New.
8398         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8399         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8400         gdbarch.c.
8401         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8402         obstack_calloc/obstack_zalloc.
8403         (gdbarch_obstack_zalloc): Remove.
8404         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8405
8406 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8407
8408         * stack.c (backtrace_command_1): Remove useless variable int i.
8409
8410 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8411
8412         * stack.c (print_frame_info): Fix comment.
8413
8414 2018-05-18  Tom Tromey  <tom@tromey.com>
8415
8416         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8417         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8418         (~dwarf2_per_objfile): Update
8419         (dwarf2_get_dwz_file): Use new.
8420         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8421         unique_ptr.
8422
8423 2018-05-18  Tom Tromey  <tom@tromey.com>
8424
8425         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8426         unique_ptr.
8427         * dwarf2read.c (struct dwp_file): Add constructor and
8428         initializers.
8429         (open_and_init_dwp_file): Return a unique_ptr.
8430         (dwarf2_per_objfile, create_dwp_hash_table)
8431         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8432         (lookup_dwo_unit_in_dwp): Update.
8433         (open_and_init_dwp_file, get_dwp_file): Update.
8434
8435 2018-05-18  Tom Tromey  <tom@tromey.com>
8436
8437         * dwarf2read.c (dwarf2_per_objfile): Update.
8438         (struct mapped_index): Add initializers.
8439         (dwarf2_read_index): Use new.
8440         (dw2_symtab_iter_init): Update.
8441         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8442         unique_ptr.
8443
8444 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8445
8446         * dwarf2read.c (mapped_index) <total_size>: Remove.
8447
8448 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8449
8450         * unittests/format_pieces-selftests.c (test_format_specifier):
8451         Add ARI comments.
8452
8453 2018-05-18  Tom Tromey  <tom@tromey.com>
8454
8455         * c-typeprint.c (maybe_print_hole): New function.
8456         (c_print_type_struct_field_offset): Update.
8457         (c_type_print_base_struct_union): Call maybe_print_hole.
8458
8459 2018-05-17  Keith Seitz  <keiths@redhat.com>
8460
8461         * breakpoint.c (build_bpstat_chain): New function, moved from
8462         bpstat_stop_status.
8463         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8464         If no stop chain is passed, call build_bpstat_chain to build it.
8465         * breakpoint.h (build_bpstat_chain): Declare.
8466         (bpstat_stop_status): Move documentation here from breakpoint.c.
8467         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8468         build the stop chain and pass it to skip_inline_frames.
8469         Pass this stop chain to bpstat_stop_status.
8470         * inline-frame.c: Include breakpoint.h.
8471         (stopped_by_user_bp_inline_frame): New function.
8472         (skip_inline_frames): Add parameter `stop_chain'.
8473         Move documention to inline-frame.h.
8474         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8475         whether the frame should be elided.
8476         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8477         Add moved documentation and update for new parameter.
8478
8479 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8480
8481         PR cli/14975
8482         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8483         unittests/format_pieces-selftests.c.
8484         * common/format.h (format_piece) <operator==>: New.
8485         (format_pieces) <operator[]>: Remove.
8486         * common/format.c (format_pieces::format_pieces): Handle \e.
8487         * unittests/format_pieces-selftests.c: New.
8488
8489 2018-05-17  Tom Tromey  <tom@tromey.com>
8490
8491         PR symtab/23010:
8492         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8493         (dw2_instantiate_symtab): Add skip_partial parameter.
8494         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8495         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8496         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8497         (dw2_expand_symtabs_matching_one)
8498         (dw2_find_pc_sect_compunit_symtab)
8499         (dw2_debug_names_lookup_symbol)
8500         (dw2_debug_names_expand_symtabs_for_function): Update.
8501         (init_cutu_and_read_dies): Add skip_partial parameter.
8502         (process_psymtab_comp_unit, build_type_psymtabs_1)
8503         (process_skeletonless_type_unit, load_partial_comp_unit)
8504         (psymtab_to_symtab_1): Update.
8505         (load_full_comp_unit): Add skip_partial parameter.
8506         (process_imported_unit_die, dwarf2_read_addr_index)
8507         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8508         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8509         (read_signatured_type): Update.
8510
8511 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8512
8513         * value.c (release_value): Remove unused variable.
8514         (record_latest_value): Likewise.
8515         (access_value_history): Likewise.
8516         (preserve_values): Likewise.
8517
8518 2018-05-17  Tom Tromey  <tom@tromey.com>
8519
8520         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8521         Initialize.
8522
8523 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8524
8525         PR gdb/22286
8526         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8527         Also handle registers whose width is not a multiple of
8528         PTRACE_TYPE_RET.
8529         (linux_nat_trad_target::store_register): Likewise.
8530
8531 2018-05-16  Tom Tromey  <tom@tromey.com>
8532
8533         * gdbcore.h (core_bfd): Redefine.
8534         * corelow.c (core_target::close): Update.
8535         (core_target_open): Update.
8536         * progspace.h (struct program_space) <cbfd>: Now a
8537         gdb_bfd_ref_ptr.
8538
8539 2018-05-16  Tom Tromey  <tom@tromey.com>
8540
8541         PR cli/19551:
8542         * symfile-add-flags.h (enum symfile_add_flags)
8543         <SYMFILE_NOT_FILENAME>: New constant.
8544         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8545         objfile name from BFD.
8546         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8547         * minidebug.c (find_separate_debug_file_in_section): Put
8548         ".gnu_debugdata" into BFD's file name.
8549
8550 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8551
8552         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8553         Remove.
8554
8555 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8556
8557         PR binutils/21446
8558         * aarch64-tdep.c (aarch64_analyze_prologue,
8559         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8560         Indicate not interested in errors.
8561
8562 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8563
8564         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8565         Supply the MIPS_ZERO_REGNUM register.
8566
8567 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8568
8569         * mips-tdep.c (mask_address_var): Make variable static.
8570
8571 2018-05-14  Tom Tromey  <tom@tromey.com>
8572
8573         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8574
8575 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8576
8577         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8578         FXSAVE_ADDR for the mxcsr register.
8579
8580 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8581
8582         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8583
8584 2018-05-11  Pedro Alves  <palves@redhat.com>
8585
8586         * corelow.c (core_target) <core_target>: No longer inline.
8587         Initialize m_core_gdbarch, m_core_vec and build the section table
8588         here.
8589         <~core_target>: New.
8590         <core_gdbarch, get_core_register_section>: New methods.
8591         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8592         factored out from ...
8593         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8594         (core_ops): Delete.
8595         (sniff_core_bfd): Add gdbarch parameter.
8596         (core_close): Delete, merged into ...
8597         (core_target::close): ... here.  Delete self.
8598         (core_close_cleanup): Delete.
8599         (core_target_open): Allocate a core_target on the heap.  Use a
8600         unique_ptr instead of a cleanup.  Bits moved into the core_target
8601         ctor.  Adjust to use core_target methods instead of globals.
8602         (get_core_register_section): Rename to ...
8603         (core_target::get_core_register_section): ... this and adjust.
8604         (struct get_core_registers_cb_data): New.
8605         (get_core_registers_cb): Use it.  Use bool.
8606         (core_target::fetch_registers, core_target::files_info)
8607         (core_target::xfer_partial, core_target::read_description)
8608         (core_target::pid_to, core_target::thread_name): Adjust to
8609         reference class fields instead of globals.
8610         * target.h (struct target_ops_deleter, target_ops_up): New.
8611
8612 2018-05-11  Pedro Alves  <palves@redhat.com>
8613
8614         * corefile.c (core_file_command): Move to corelow.c.
8615         * corelow.c (the_core_target): Delete.
8616         (core_file_command): Moved from corefile.c.  Check exec_bfd
8617         instead of the_core_target.  Use target_detach instead of calling
8618         into the_core_target directly.
8619         (maybe_say_no_core_file_now): New.
8620         (core_target::detach): Use it.
8621         (_initialize_corelow): Remove references to the_core_target.
8622         * gdbcore.h (the_core_target): Delete.
8623
8624 2018-05-11  Tom Tromey  <tromey@redhat.com>
8625             Pedro Alves  <palves@redhat.com>
8626
8627         * corefile.c (core_bfd): Remove.
8628         * gdbcore.h (core_bfd): Now a macro.
8629         * progspace.h (struct program_space) <cbfd>: New field.
8630
8631 2018-05-11  Tom Tromey  <tom@tromey.com>
8632
8633         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8634         gdb::def_vector.
8635
8636 2018-05-10  Tom Tromey  <tom@tromey.com>
8637
8638         * configure: Rebuild.
8639         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8640
8641 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8642
8643         PR server/23158:
8644         * regformats/regdat.sh: Adjust script, following the addition
8645         of the new expedite_regs parameter to init_target_desc.
8646
8647 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8648     
8649         PR gdb/23127
8650         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8651         set_gdbarch_significant_addr_bit.
8652         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8653         set_gdbarch_significant_addr_bit.
8654         * utils.c (address_significant): Update to sign extend addr.
8655
8656 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8657
8658         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8659         (xtensa_linux_init_abi): Limit tdep->num_regs by
8660         tdep->num_nopriv_regs.
8661         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8662         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8663         not initialized.
8664
8665 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8666
8667         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8668
8669 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8670
8671         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8672         (I387_MXCSR_INIT_VAL): New constant.
8673         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8674         buffer if it was supplied by the inferior.
8675         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8676         (i387_xsave_get_clear_bv): New function.
8677         (i387_supply_xsave): Only read x87 control registers from the
8678         xsave buffer if the feature is enabled, and the state will have
8679         been written, otherwise, provide a suitable default.
8680         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8681         including x87 control registers.  Update control registers if they
8682         have changed from the default value, and mark features as enabled
8683         as required.
8684         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8685
8686 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8687
8688         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8689
8690 2018-05-07  Tom Tromey  <tom@tromey.com>
8691
8692         * configure: Rebuild.
8693         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8694
8695 2018-05-07  Tom Tromey  <tom@tromey.com>
8696
8697         PR tdep/20362:
8698         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8699         bit.  Use correct value for VDIV.
8700
8701 2018-05-04  Tom Tromey  <tom@tromey.com>
8702
8703         * configure: Rebuild.
8704         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8705
8706 2018-05-04  Tom Tromey  <tom@tromey.com>
8707
8708         * linux-record.c (record_linux_system_call) <case
8709         RECORD_SYS_RECVFROM>: Add "break".
8710
8711 2018-05-04  Tom Tromey  <tom@tromey.com>
8712
8713         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8714         Add missing "break".
8715         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8716         Add missing "break".
8717
8718 2018-05-04  Tom Tromey  <tom@tromey.com>
8719
8720         * rs6000-tdep.c (ppc_process_record_op4)
8721         (ppc_process_record_op63): Add fall-through comment.
8722
8723 2018-05-04  Tom Tromey  <tom@tromey.com>
8724
8725         * i386-tdep.c (i386_process_record): Add fall-through comment.
8726
8727 2018-05-04  Tom Tromey  <tom@tromey.com>
8728
8729         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8730         comment.
8731
8732 2018-05-04  Tom Tromey  <tom@tromey.com>
8733
8734         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8735         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8736         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8737         comment.
8738         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8739         comment.
8740         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8741         comment.
8742
8743 2018-05-04  Tom Tromey  <tom@tromey.com>
8744
8745         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8746
8747 2018-05-04  Tom Tromey  <tom@tromey.com>
8748
8749         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8750         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8751         * symfile.c (section_is_mapped): Fix fall-through comment.
8752         * stabsread.c (define_symbol, read_member_functions): Fix
8753         fall-through comment.
8754         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8755         comment.
8756         * remote.c (remote_wait_as): Fix fall-through comment.
8757         * p-exp.y (yylex): Fix fall-through comment.
8758         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8759         comment.
8760         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8761         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8762         * jv-exp.y (yylex): Fix fall-through comment.
8763         * go-exp.y (lex_one_token): Fix fall-through comment.
8764         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8765         fall-through comment.
8766         * f-exp.y (yylex): Fix fall-through comment.
8767         * dwarf2read.c (process_die): Fix fall-through comments.
8768         * dbxread.c (process_one_symbol): Fix fall-through comment.
8769         * d-exp.y (lex_one_token): Fix fall-through comment.
8770         * cp-name-parser.y (yylex): Fix fall-through comment.
8771         * coffread.c (coff_symtab_read): Fix fall-through comment.
8772         * c-exp.y (lex_one_token): Fix fall-through comment.
8773         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8774         comment.
8775         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8776         comment.
8777
8778 2018-05-04  Tom Tromey  <tom@tromey.com>
8779
8780         PR python/22730:
8781         * NEWS: Mention gdb.execute change.
8782         * gdbcmd.h (execute_control_command): Don't declare.
8783         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8784         execute_control_commands, execute_control_commands_to_string.
8785         * cli/cli-script.h (execute_control_commands)
8786         (execute_control_commands_to_string): Declare.
8787         (execute_control_command): Add from_tty parameter.
8788         * cli/cli-script.c (execute_control_commands)
8789         (execute_control_commands_to_string): New functions.
8790         (execute_user_command): Use execute_control_commands.
8791         (execute_control_command_1): Add "from_tty" parameter.  Update.
8792         (execute_control_command): Likewise.
8793
8794 2018-05-04  Tom Tromey  <tom@tromey.com>
8795
8796         PR python/22731:
8797         * NEWS: Mention that breakpoint commands are writable.
8798         * python/py-breakpoint.c (bppy_set_commands): New function.
8799         (breakpoint_object_getset) <"commands">: Use it.
8800
8801 2018-05-04  Tom Tromey  <tom@tromey.com>
8802
8803         * tracepoint.c (actions_command): Update.
8804         * mi/mi-cmd-break.c (mi_command_line_array)
8805         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8806         (mi_read_next_line): Remove.
8807         (mi_cmd_break_commands): Update.
8808         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8809         function_view.
8810         * cli/cli-script.c (get_command_line): Update.
8811         (process_next_line): Use function_view.  Constify.
8812         (recurse_read_control_structure, read_command_lines)
8813         (read_command_lines_1): Change argument types to function_view.
8814         (do_define_command, document_command): Update.
8815         * breakpoint.h (check_tracepoint_command): Don't declare.
8816         * breakpoint.c (check_tracepoint_command): Remove.
8817         (commands_command_1, create_tracepoint_from_upload): Update.
8818
8819 2018-05-04  Tom Tromey  <tom@tromey.com>
8820
8821         PR gdb/11750:
8822         * cli/cli-script.h (enum command_control_type) <define_control>:
8823         New constant.
8824         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8825         (build_command_line, execute_control_command_1)
8826         (process_next_line): Likewise.
8827         (do_define_command): New function, extracted from define_command.
8828         (define_command): Use it.
8829
8830 2018-05-04  Tom Tromey  <tom@tromey.com>
8831
8832         * tracepoint.c (actions_command): Update.
8833         * cli/cli-script.h (read_command_lines): Update.
8834         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8835         (MAX_TMPBUF): Remove define.
8836         (define_command): Use string_printf.
8837         (document_command): Likewise.
8838         * breakpoint.c (commands_command_1): Update.
8839
8840 2018-05-04  Tom Tromey  <tom@tromey.com>
8841
8842         * top.c (execute_command): Update.
8843         * cli/cli-script.h (print_command_lines): Now varargs.
8844         * cli/cli-script.c (print_command_lines): Now varargs.
8845         (execute_control_command_1) <case while_control, case if_control>:
8846         Update.
8847
8848 2018-05-04  Tom Tromey  <tom@tromey.com>
8849
8850         * tracepoint.c (all_tracepoint_actions): Rename from
8851         all_tracepoint_actions_and_cleanup.  Change return type.
8852         (actions_command, encode_actions_1, encode_actions)
8853         (trace_dump_actions, tdump_command): Update.
8854         * remote.c (remote_download_command_source): Update.
8855         * python/python.c (gdbpy_eval_from_control_command)
8856         (python_command, python_interactive_command): Update.
8857         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8858         * guile/guile.c (guile_command)
8859         (gdbscm_eval_from_control_command, guile_command): Update.
8860         * compile/compile.c (compile_code_command)
8861         (compile_print_command, compile_to_object): Update.
8862         * cli/cli-script.h (struct command_lines_deleter): New.
8863         (counted_command_line): New typedef.
8864         (struct command_line): Add constructor, destructor.
8865         <body_list>: Remove.
8866         <body_list_0, body_list_1>: New members.
8867         (command_line_up): Remove typedef.
8868         (read_command_lines, read_command_lines_1, get_command_line):
8869         Update.
8870         (copy_command_lines): Don't declare.
8871         * cli/cli-script.c (build_command_line): Use "new".
8872         (get_command_line): Return counted_command_line.
8873         (print_command_lines, execute_user_command)
8874         (execute_control_command_1, while_command, if_command): Update.
8875         (realloc_body_list): Remove.
8876         (process_next_line, recurse_read_control_structure): Update.
8877         (read_command_lines, read_command_lines_1): Return counted_command_line.
8878         (free_command_lines): Use "delete".
8879         (copy_command_lines): Remove.
8880         (define_command, document_command, show_user_1): Update.
8881         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8882         a counted_command_line.
8883         * breakpoint.h (counted_command_line): Remove typedef.
8884         (breakpoint_set_commands): Update.
8885         * breakpoint.c (check_no_tracepoint_commands)
8886         (validate_commands_for_breakpoint): Update.
8887         (breakpoint_set_commands): Change commands to be a
8888         counted_command_line.
8889         (commands_command_1, update_dprintf_command_list)
8890         (create_tracepoint_from_upload): Update.
8891
8892 2018-05-04  Tom Tromey  <tom@tromey.com>
8893
8894         * cli/cli-decode.h (cmd_list_element): New constructor.
8895         (~cmd_list_element): New destructor.
8896         (struct cmd_list_element): Add initializers.
8897         * cli/cli-decode.c (do_add_cmd): Use "new".
8898         (delete_cmd): Use "delete".
8899
8900 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8901             Pedro Alves <palves@redhat.com>
8902
8903         PR breakpoints/19806 and support for PR external/20207.
8904         * NEWS: Mention Aarch64 watchpoint improvements.
8905         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8906         watchpoints and PR external/20207 watchpoints.
8907         * nat/aarch64-linux-hw-point.c
8908         (kernel_supports_any_contiguous_range): New.
8909         (aarch64_watchpoint_offset): New.
8910         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8911         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8912         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8913         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8914         next_addr_orig_p.  Support PR external/20207 watchpoints.
8915         (aarch64_downgrade_regs): New.
8916         (aarch64_dr_state_insert_one_point): New parameters offset and
8917         addr_orig.
8918         (aarch64_dr_state_remove_one_point): Likewise.
8919         (aarch64_handle_breakpoint): Update caller.
8920         (aarch64_handle_aligned_watchpoint): Likewise.
8921         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8922         aligned_offset.
8923         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8924         aarch64_downgrade_regs.
8925         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8926         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8927         (DR_CONTROL_MASK): ... this.
8928         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8929         (unsigned int aarch64_watchpoint_offset): New prototype.
8930         (aarch64_linux_set_debug_regs): Remove const from state.
8931         * utils.c (align_up, align_down): Move to ...
8932         * common/common-utils.c (align_up, align_down): ... here.
8933         * utils.h (align_up, align_down): Move to ...
8934         * common/common-utils.h (align_up, align_down): ... here.
8935
8936 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8937
8938         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8939         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8940         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8941         Re-implement to match the ABI as summarized in GCC's
8942         gcc/config/sparc/sparc.c.  All callers updated.
8943         (sparc32_store_arguments): Remove assertion.
8944
8945 2018-05-04  Tom Tromey  <tom@tromey.com>
8946
8947         * printcmd.c: Don't include tui.h.
8948         (decode_format): Use skip_spaces.
8949
8950 2018-05-04  Tom Tromey  <tom@tromey.com>
8951
8952         PR gdb/22619:
8953         * printcmd.c (last_count): New global.
8954         (x_command): Use saved count when repeating.
8955
8956 2018-05-04  Tom Tromey  <tom@tromey.com>
8957
8958         * nto-procfs.c (do_closedir_cleanup): Remove.
8959         (procfs_pidlist): Use gdb_dir_up.
8960         * procfs.c (do_closedir_cleanup): Remove.
8961         (proc_update_threads): Use gdb_dir_up.
8962         * common/filestuff.h (struct gdb_dir_deleter): New.
8963         (gdb_dir_up): New typedef.
8964
8965 2018-05-04  Tom Tromey  <tom@tromey.com>
8966
8967         * ada-lang.c (print_mention_exception): Use std::string.
8968
8969 2018-05-04  Tom Tromey  <tom@tromey.com>
8970
8971         * ada-lang.c (create_excep_cond_exprs): Update.
8972         (ada_exception_catchpoint_cond_string): Use std::string.
8973
8974 2018-05-04  Tom Tromey  <tom@tromey.com>
8975
8976         * ada-lang.c (xget_renaming_scope): Return std::string.
8977         (old_renaming_is_invisible): Update.
8978
8979 2018-05-04  Tom Tromey  <tom@tromey.com>
8980
8981         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8982         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8983
8984 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8985
8986         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8987
8988 2018-05-04  Tom Tromey  <tom@tromey.com>
8989
8990         * remote.c (remote_query_supported_append): Change type.
8991         (remote_check_symbols): Update.
8992
8993 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
8994
8995         PR gdb/11420
8996         * configure.ac: Prepend libpython.
8997         * python/python-config.py: Likewise.
8998         * configure: Regenerate.
8999
9000 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9001
9002         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9003
9004 2018-05-03  Pedro Alves  <palves@redhat.com>
9005
9006         * s390-linux-nat.c
9007         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9008         override.  Write 'true' instead of '1'.
9009         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9010         declaration.
9011
9012 2018-05-02  Pedro Alves  <palves@redhat.com>
9013
9014         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9015         add_inf_child_target.
9016         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9017         add_inf_child_target.
9018         * aix-thread.c (aix_thread_target_info): New.
9019         (aix_thread_target) <shortname, longname, doc>: Delete.
9020         <info>: New.
9021         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9022         add_inf_child_target.
9023         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9024         add_inf_child_target.
9025         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9026         add_inf_child_target.
9027         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9028         add_inf_child_target.
9029         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9030         add_inf_child_target.
9031         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9032         add_inf_child_target.
9033         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9034         add_inf_child_target.
9035         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9036         add_inf_child_target.
9037         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9038         add_inf_child_target.
9039         * bfd-target.c (target_bfd_target_info): New.
9040         (target_bfd) <shortname, longname, doc>: Delete.
9041         <info>: New.
9042         * bsd-kvm.c (bsd_kvm_target_info): New.
9043         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9044         <info>: New.
9045         (bsd_kvm_target::open): Rename to ...
9046         (bsd_kvm_target_open): ... this.  Adjust.
9047         * bsd-uthread.c (bsd_uthread_target_info): New.
9048         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9049         <info>: New.
9050         * corefile.c (core_file_command): Adjust.
9051         * corelow.c (core_target_info): New.
9052         (core_target) <shortname, longname, doc>: Delete.
9053         <info>: New.
9054         (core_target::open): Rename to ...
9055         (core_target_open): ... this.  Adjust.
9056         * ctf.c (ctf_target_info): New.
9057         (ctf_target) <shortname, longname, doc>: Delete.
9058         <info>: New.
9059         (ctf_target::open): Rename to ...
9060         (ctf_target_open): ... this.
9061         (_initialize_ctf): Adjust.
9062         * exec.c (exec_target_info): New.
9063         (exec_target) <shortname, longname, doc>: Delete.
9064         <info>: New.
9065         (exec_target::open): Rename to ...
9066         (exec_target_open): ... this.
9067         * gdbcore.h (core_target_open): Declare.
9068         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9069         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9070         add_inf_child_target.
9071         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9072         add_inf_child_target.
9073         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9074         add_inf_child_target.
9075         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9076         add_inf_child_target.
9077         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9078         add_inf_child_target.
9079         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9080         add_inf_child_target.
9081         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9082         add_inf_child_target.
9083         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9084         add_inf_child_target.
9085         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9086         add_inf_child_target.
9087         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9088         add_inf_child_target.
9089         * inf-child.c (inf_child_target_info): New.
9090         (inf_child_target::info): New.
9091         (inf_child_open_target): Remove 'target' parameter.  Use
9092         get_native_target instead.
9093         (inf_child_target::open): Delete.
9094         (add_inf_child_target): New.
9095         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9096         Delete.
9097         <info>: New.
9098         (add_inf_child_target): Declare.
9099         (inf_child_open_target): Declare.
9100         * linux-thread-db.c (thread_db_target_info): New.
9101         (thread_db_target) <shortname, longname, doc>: Delete.
9102         <info>: New.
9103         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9104         add_inf_child_target.
9105         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9106         add_inf_child_target.
9107         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9108         add_inf_child_target.
9109         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9110         add_inf_child_target.
9111         * make-target-delegates (print_class): Adjust.
9112         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9113         add_inf_child_target.
9114         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9115         add_inf_child_target.
9116         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9117         add_inf_child_target.
9118         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9119         add_inf_child_target.
9120         * nto-procfs.c (nto_native_target_info): New.
9121         (nto_procfs_target_native) <shortname, longname, doc>:
9122         Delete.
9123         <info>: New.
9124         (nto_procfs_target_info): New.
9125         (nto_procfs_target_procfs) <shortname, longname, doc>:
9126         Delete.
9127         <info>: New.
9128         (init_procfs_targets): Adjust.
9129         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9130         add_inf_child_target.
9131         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9132         add_inf_child_target.
9133         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9134         add_inf_child_target.
9135         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9136         add_inf_child_target.
9137         * ravenscar-thread.c (ravenscar_target_info): New.
9138         (ravenscar_thread_target) <shortname, longname, doc>:
9139         Delete.
9140         <info>: New.
9141         * record-btrace.c (record_btrace_target_info):
9142         (record_btrace_target) <shortname, longname, doc>: Delete.
9143         <info>: New.
9144         (record_btrace_target::open): Rename to ...
9145         (record_btrace_target_open): ... this.  Adjust.
9146         * record-full.c (record_longname, record_doc): New.
9147         (record_full_base_target) <shortname, longname, doc>: Delete.
9148         <info>: New.
9149         (record_full_target_info): New.
9150         (record_full_target): <shortname>: Delete.
9151         <info>: New.
9152         (record_full_core_open_1, record_full_open_1): Update comments.
9153         (record_full_base_target::open): Rename to ...
9154         (record_full_open): ... this.
9155         (cmd_record_full_restore): Update.
9156         (_initialize_record_full): Update.
9157         * remote-sim.c (remote_sim_target_info): New.
9158         (gdbsim_target) <shortname, longname, doc>: Delete.
9159         <info>: New.
9160         (gdbsim_target::open): Rename to ...
9161         (gdbsim_target_open): ... this.
9162         (_initialize_remote_sim): Adjust.
9163         * remote.c (remote_doc): New.
9164         (remote_target_info): New.
9165         (remote_target) <shortname, longname, doc>: Delete.
9166         <info>: New.
9167         (extended_remote_target_info): New.
9168         (extended_remote_target) <shortname, longname, doc>: Delete.
9169         <info>: New.
9170         (remote_target::open_1): Make static.  Adjust.
9171         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9172         * s390-linux-nat.c (_initialize_s390_nat): Use
9173         add_inf_child_target.
9174         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9175         add_inf_child_target.
9176         * sol-thread.c (thread_db_target_info): New.
9177         (sol_thread_target) <shortname, longname, doc>: Delete.
9178         <info>: New.
9179         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9180         add_inf_child_target.
9181         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9182         add_inf_child_target.
9183         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9184         add_inf_child_target.
9185         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9186         add_inf_child_target.
9187         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9188         add_inf_child_target.
9189         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9190         add_inf_child_target.
9191         * spu-linux-nat.c (_initialize_spu_nat): Use
9192         add_inf_child_target.
9193         * spu-multiarch.c (spu_multiarch_target_info): New.
9194         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9195         <info>: New.
9196         * target-delegates.c: Regenerate.
9197         * target.c: Include <unordered_map>.
9198         (target_ops_p): Delete.
9199         (DEF_VEC_P(target_ops_p)): Delete.
9200         (target_factories): New.
9201         (test_target_info): New.
9202         (test_target_ops::info): New.
9203         (open_target): Adjust to use target_factories.
9204         (add_target_with_completer): Rename to ...
9205         (add_target): ... this.  Change prototype.  Register target_info
9206         and open callback in target_factories.  Register target_info in
9207         command context instead of target_ops.
9208         (add_target): Delete old implementation.
9209         (add_deprecated_target_alias): Change prototype.  Adjust.
9210         (the_native_target): New.
9211         (set_native_target, get_native_target): New.
9212         (find_default_run_target): Use the_native_target.
9213         (find_attach_target, find_run_target): Simplify.
9214         (target_ops::open): Delete.
9215         (dummy_target_info): New.
9216         (dummy_target::shortname, dummy_target::longname)
9217         (dummy_target::doc): Delete.
9218         (dummy_target::info): New.
9219         (debug_target::shortname, debug_target::longname)
9220         (debug_target::doc): Delete.
9221         (debug_target::info): New.
9222         * target.h (struct target_info): New.
9223         (target_ops::~target_ops): Add comment.
9224         (target_ops::info): New.
9225         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9226         longer virtual.  Implement in terms of target_info.
9227         (set_native_target, get_native_target): Declare.
9228         (target_open_ftype): New.
9229         (add_target, add_target_with_completer)
9230         (add_deprecated_target_alias): Change prototype.
9231         (test_target) <shortname, longname, doc>: Delete.
9232         <info>: New.
9233         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9234         add_inf_child_target.
9235         * tracefile-tfile.c (tfile_target_info): New.
9236         (tfile_target) <shortname, longname, doc>: Delete.
9237         <info>: New.
9238         (tfile_target::open): Rename to ...
9239         (tfile_target_open): ... this.
9240         (_initialize_tracefile_tfile): Adjust.
9241         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9242         add_inf_child_target.
9243         * windows-nat.c (_initialize_windows_nat): Use
9244         add_inf_child_target.
9245         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9246         add_inf_child_target.
9247
9248 2018-05-02  Pedro Alves  <palves@redhat.com>
9249
9250         * linux-nat.h (linux_nat_target) <low_new_thread,
9251         low_delete_thread, low_new_fork, low_forget_process,
9252         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9253         New virtual methods.
9254         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9255         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9256         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9257         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9258         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9259         Delete.
9260         * linux-fork.c (delete_fork): Adjust to call low method.
9261         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9262         (linux_nat_new_fork, linux_nat_forget_process_hook)
9263         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9264         (linux_nat_status_is_event):
9265         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9266         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9267         to call low method.
9268         (sigtrap_is_event): Rename to ...
9269         (linux_nat_target::low_status_is_event): ... this.
9270         (linux_nat_set_status_is_event): Delete.
9271         (save_stop_reason, linux_nat_wait_1)
9272         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9273         low methods.
9274         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9275         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9276         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9277         (linux_nat_set_prepare_to_resume): Delete.
9278         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9279         low virtual methods.
9280         * amd64-linux-nat.c: Likewise.
9281         * arm-linux-nat.c: Likewise.
9282         * i386-linux-nat.c: Likewise.
9283         * ia64-linux-nat.c: Likewise.
9284         * mips-linux-nat.c: Likewise.
9285         * ppc-linux-nat.c: Likewise.
9286         * s390-linux-nat.c: Likewise.
9287         * sparc64-linux-nat.c: Likewise.
9288         * x86-linux-nat.c: Likewise.
9289         * x86-linux-nat.h: Include "nat/x86-linux.h".
9290         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9291         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9292         Override methods.
9293
9294 2018-05-02  Pedro Alves  <palves@redhat.com>
9295
9296         * target.h (target_ops)
9297         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9298         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9299         stopped_by_watchpoint, have_continuable_watchpoint,
9300         stopped_data_address, watchpoint_addr_within_range,
9301         can_accel_watchpoint_condition, can_run, thread_alive,
9302         has_all_memory, has_memory, has_stack, has_registers,
9303         has_execution, can_async_p, is_async_p, supports_non_stop,
9304         always_non_stop_p, can_execute_reverse, supports_multi_process,
9305         supports_enable_disable_tracepoint,
9306         supports_disable_randomization, supports_string_tracing,
9307         supports_evaluation_of_breakpoint_conditions,
9308         can_run_breakpoint_commands, filesystem_is_local,
9309         can_download_tracepoint, get_trace_state_variable_value,
9310         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9311         record_is_replaying, record_will_replay,
9312         augmented_libraries_svr4_read>: Adjust to return bool.
9313         * aarch64-linux-nat.c: All implementations adjusted.
9314         * aix-thread.c: All implementations adjusted.
9315         * arm-linux-nat.c: All implementations adjusted.
9316         * breakpoint.c: All implementations adjusted.
9317         * bsd-kvm.c: All implementations adjusted.
9318         * bsd-uthread.c: All implementations adjusted.
9319         * corelow.c: All implementations adjusted.
9320         * ctf.c: All implementations adjusted.
9321         * darwin-nat.c: All implementations adjusted.
9322         * darwin-nat.h: All implementations adjusted.
9323         * exec.c: All implementations adjusted.
9324         * fbsd-nat.c: All implementations adjusted.
9325         * fbsd-nat.h: All implementations adjusted.
9326         * gnu-nat.c: All implementations adjusted.
9327         * gnu-nat.h: All implementations adjusted.
9328         * go32-nat.c: All implementations adjusted.
9329         * ia64-linux-nat.c: All implementations adjusted.
9330         * inf-child.c: All implementations adjusted.
9331         * inf-child.h: All implementations adjusted.
9332         * inf-ptrace.c: All implementations adjusted.
9333         * inf-ptrace.h: All implementations adjusted.
9334         * linux-nat.c: All implementations adjusted.
9335         * linux-nat.h: All implementations adjusted.
9336         * mips-linux-nat.c: All implementations adjusted.
9337         * nto-procfs.c: All implementations adjusted.
9338         * ppc-linux-nat.c: All implementations adjusted.
9339         * procfs.c: All implementations adjusted.
9340         * ravenscar-thread.c: All implementations adjusted.
9341         * record-btrace.c: All implementations adjusted.
9342         * record-full.c: All implementations adjusted.
9343         * remote-sim.c: All implementations adjusted.
9344         * remote.c: All implementations adjusted.
9345         * s390-linux-nat.c: All implementations adjusted.
9346         * sol-thread.c: All implementations adjusted.
9347         * spu-multiarch.c: All implementations adjusted.
9348         * target-delegates.c: All implementations adjusted.
9349         * target.c: All implementations adjusted.
9350         * target.h: All implementations adjusted.
9351         * tracefile-tfile.c: All implementations adjusted.
9352         * tracefile.c: All implementations adjusted.
9353         * tracefile.h: All implementations adjusted.
9354         * windows-nat.c: All implementations adjusted.
9355         * x86-linux-nat.h: All implementations adjusted.
9356         * x86-nat.h: All implementations adjusted.
9357
9358 2018-05-02  Pedro Alves  <palves@redhat.com>
9359
9360         * make-target-delegates (scan_target_h): Don't trim lines here.
9361         Replace sequences of tabs and/or whitespace with a single
9362         whitespace.
9363         (top level, parsing methods): Trim each line before processing it
9364         here.
9365
9366 2018-05-02  Pedro Alves  <palves@redhat.com>
9367             John Baldwin  <jhb@freebsd.org>
9368
9369         * target.h (enum strata) <debug_stratum>: New.
9370         (struct target_ops) <all delegation methods>: Replace by C++
9371         virtual methods, and drop "to_" prefix.  All references updated
9372         throughout.
9373         <to_shortname, to_longname, to_doc, to_data,
9374         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9375         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9376         virtual methods.  All references updated throughout.
9377         <can_attach, supports_terminal_ours, can_create_inferior,
9378         get_thread_control_capabilities, attach_no_wait>: New
9379         virtual methods.
9380         <insert_breakpoint, remove_breakpoint>: Now
9381         TARGET_DEFAULT_NORETURN methods.
9382         <info_proc>: Now returns bool.
9383         <to_magic>: Delete.
9384         (OPS_MAGIC): Delete.
9385         (current_target): Delete.  All references replaced by references
9386         to ...
9387         (target_stack): ... this.  New.
9388         (target_shortname, target_longname): Adjust.
9389         (target_can_run): Now a function declaration.
9390         (default_child_has_all_memory, default_child_has_memory)
9391         (default_child_has_stack, default_child_has_registers)
9392         (default_child_has_execution): Remove target_ops parameter.
9393         (complete_target_initialization): Delete.
9394         (memory_breakpoint_target): New template class.
9395         (test_target_ops): Refactor as a C++ class with virtual methods.
9396         * make-target-delegates (NAME_PART): Tighten.
9397         (POINTER_PART, CP_SYMBOL): New.
9398         (SIMPLE_RETURN_PART): Reimplement.
9399         (VEC_RETURN_PART): Expect less.
9400         (RETURN_PART, VIRTUAL_PART): New.
9401         (METHOD): Adjust to C++ virtual methods.
9402         (scan_target_h): Remove reference to C99.
9403         (dname): Output "target_ops::" prefix.
9404         (write_function_header): Adjust to output a C++ class method.
9405         (write_declaration): New.
9406         (write_delegator): Adjust to output a C++ class method.
9407         (tdname): Output "dummy_target::" prefix.
9408         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9409         method.
9410         (tdefault_names, debug_names): Delete.
9411         (return_types, tdefaults, styles, argtypes_array): New.
9412         (top level): All methods are delegators.
9413         (print_class): New.
9414         (top level): Print dummy_target and debug_target classes.
9415         * target-delegates.c: Regenerate.
9416         * target-debug.h (target_debug_print_enum_info_proc_what)
9417         (target_debug_print_thread_control_capabilities)
9418         (target_debug_print_thread_info_p): New.
9419         * target.c (dummy_target): Delete.
9420         (the_dummy_target, the_debug_target): New.
9421         (target_stack): Now extern.
9422         (set_targetdebug): Push/unpush debug target.
9423         (default_child_has_all_memory, default_child_has_memory)
9424         (default_child_has_stack, default_child_has_registers)
9425         (default_child_has_execution): Remove target_ops parameter.
9426         (complete_target_initialization): Delete.
9427         (add_target_with_completer): No longer call
9428         complete_target_initialization.
9429         (target_supports_terminal_ours): Use regular delegation.
9430         (update_current_target): Delete.
9431         (push_target): No longer check magic number.  Don't call
9432         update_current_target.
9433         (unpush_target): Don't call update_current_target.
9434         (target_is_pushed): No longer check magic number.
9435         (target_require_runnable): Skip for all stratums over
9436         process_stratum.
9437         (target_ops::info_proc): New.
9438         (target_info_proc): Use find_target_at and
9439         find_default_run_target.
9440         (target_supports_disable_randomization): Use regular delegation.
9441         (target_get_osdata): Use find_target_at.
9442         (target_ops::open, target_ops::close, target_ops::can_attach)
9443         (target_ops::attach, target_ops::can_create_inferior)
9444         (target_ops::create_inferior, target_ops::can_run)
9445         (target_can_run): New.
9446         (default_fileio_target): Use regular delegation.
9447         (target_ops::fileio_open, target_ops::fileio_pwrite)
9448         (target_ops::fileio_pread, target_ops::fileio_fstat)
9449         (target_ops::fileio_close, target_ops::fileio_unlink)
9450         (target_ops::fileio_readlink): New.
9451         (target_fileio_open_1, target_fileio_unlink)
9452         (target_fileio_readlink): Always call the target method.  Handle
9453         FILEIO_ENOSYS.
9454         (return_zero, return_zero_has_execution): Delete.
9455         (init_dummy_target): Delete.
9456         (dummy_target::dummy_target, dummy_target::shortname)
9457         (dummy_target::longname, dummy_target::doc)
9458         (debug_target::debug_target, debug_target::shortname)
9459         (debug_target::longname, debug_target::doc): New.
9460         (target_supports_delete_record): Use regular delegation.
9461         (setup_target_debug): Delete.
9462         (maintenance_print_target_stack): Skip debug_stratum.
9463         (initialize_targets): Instantiate the_dummy_target and
9464         the_debug_target.
9465         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9466         use target_stack.
9467         (target_auxv_search, fprint_target_auxv): Adjust.
9468         (info_auxv_command): Adjust to use target_stack.
9469         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9470         * exceptions.c (print_flush): Handle a NULL target_stack.
9471         * regcache.c (target_ops_no_register): Refactor as class with
9472         virtual methods.
9473
9474         * exec.c (exec_target): New class.
9475         (exec_ops): Now an exec_target.
9476         (exec_open, exec_close_1, exec_get_section_table)
9477         (exec_xfer_partial, exec_files_info, exec_has_memory)
9478         (exec_make_note_section): Refactor as exec_target methods.
9479         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9480         Delete.
9481         (exec_target::find_memory_regions): New.
9482         (_initialize_exec): Don't call init_exec_ops.
9483         * gdbcore.h (exec_file_clear): Delete.
9484
9485         * corefile.c (core_target): Delete.
9486         (core_file_command): Adjust.
9487         * corelow.c (core_target): New class.
9488         (the_core_target): New.
9489         (core_close): Remove target_ops parameter.
9490         (core_close_cleanup): Adjust.
9491         (core_target::close): New.
9492         (core_open, core_detach, get_core_registers, core_files_info)
9493         (core_xfer_partial, core_thread_alive, core_read_description)
9494         (core_pid_to_str, core_thread_name, core_has_memory)
9495         (core_has_stack, core_has_registers, core_info_proc): Rework as
9496         core_target methods.
9497         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9498         (_initialize_corelow): Initialize the_core_target.
9499         * gdbcore.h (core_target): Delete.
9500         (the_core_target): New.
9501
9502         * ctf.c: (ctf_target): New class.
9503         (ctf_ops): Now a ctf_target.
9504         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9505         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9506         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9507         methods.
9508         (init_ctf_ops): Delete.
9509         (_initialize_ctf): Don't call it.
9510         * tracefile-tfile.c (tfile_target): New class.
9511         (tfile_ops): Now a tfile_target.
9512         (tfile_open, tfile_close, tfile_files_info)
9513         (tfile_get_tracepoint_status, tfile_trace_find)
9514         (tfile_fetch_registers, tfile_xfer_partial)
9515         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9516         Refactor as tfile_target methods.
9517         (tfile_xfer_partial_features): Remove target_ops parameter.
9518         (init_tfile_ops): Delete.
9519         (_initialize_tracefile_tfile): Don't call it.
9520         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9521         (tracefile_has_stack, tracefile_has_registers)
9522         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9523         tracefile_target methods.
9524         (init_tracefile_ops): Delete.
9525         (tracefile_target::tracefile_target): New.
9526         * tracefile.h: Include "target.h".
9527         (tracefile_target): New class.
9528         (init_tracefile_ops): Delete.
9529
9530         * spu-multiarch.c (spu_multiarch_target): New class.
9531         (spu_ops): Now a spu_multiarch_target.
9532         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9533         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9534         (spu_search_memory, spu_mourn_inferior): Refactor as
9535         spu_multiarch_target methods.
9536         (init_spu_ops): Delete.
9537         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9538         complete_target_initialization.
9539
9540         * ravenscar-thread.c (ravenscar_thread_target): New class.
9541         (ravenscar_ops): Now a ravenscar_thread_target.
9542         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9543         (ravenscar_thread_alive, ravenscar_pid_to_str)
9544         (ravenscar_fetch_registers, ravenscar_store_registers)
9545         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9546         (ravenscar_stopped_by_hw_breakpoint)
9547         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9548         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9549         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9550         methods.
9551         (init_ravenscar_thread_ops): Delete.
9552         (_initialize_ravenscar): Remove references to
9553         init_ravenscar_thread_ops and complete_target_initialization.
9554
9555         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9556         (bsd_uthread_target): New class.
9557         (bsd_uthread_ops): Now a bsd_uthread_target.
9558         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9559         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9560         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9561         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9562         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9563         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9564         (bsd_uthread_target): Delete function.
9565         (_initialize_bsd_uthread): Remove reference to
9566         complete_target_initialization.
9567
9568         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9569         (target_bfd): ... this new class.
9570         (target_bfd_xfer_partial, target_bfd_get_section_table)
9571         (target_bfd_close): Refactor as target_bfd methods.
9572         (target_bfd::~target_bfd): New.
9573         (target_bfd_reopen): Adjust.
9574         (target_bfd::close): New.
9575
9576         * record-btrace.c (record_btrace_target): New class.
9577         (record_btrace_ops): Now a record_btrace_target.
9578         (record_btrace_open, record_btrace_stop_recording)
9579         (record_btrace_disconnect, record_btrace_close)
9580         (record_btrace_async, record_btrace_info)
9581         (record_btrace_insn_history, record_btrace_insn_history_range)
9582         (record_btrace_insn_history_from, record_btrace_call_history)
9583         (record_btrace_call_history_range)
9584         (record_btrace_call_history_from, record_btrace_record_method)
9585         (record_btrace_is_replaying, record_btrace_will_replay)
9586         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9587         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9588         (record_btrace_store_registers, record_btrace_prepare_to_store)
9589         (record_btrace_to_get_unwinder)
9590         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9591         (record_btrace_commit_resume, record_btrace_wait)
9592         (record_btrace_stop, record_btrace_can_execute_reverse)
9593         (record_btrace_stopped_by_sw_breakpoint)
9594         (record_btrace_supports_stopped_by_sw_breakpoint)
9595         (record_btrace_stopped_by_hw_breakpoint)
9596         (record_btrace_supports_stopped_by_hw_breakpoint)
9597         (record_btrace_update_thread_list, record_btrace_thread_alive)
9598         (record_btrace_goto_begin, record_btrace_goto_end)
9599         (record_btrace_goto, record_btrace_stop_replaying_all)
9600         (record_btrace_execution_direction)
9601         (record_btrace_prepare_to_generate_core)
9602         (record_btrace_done_generating_core): Refactor as
9603         record_btrace_target methods.
9604         (init_record_btrace_ops): Delete.
9605         (_initialize_record_btrace): Remove reference to
9606         init_record_btrace_ops.
9607         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9608         the execution_direction global.
9609         (record_full_base_target, record_full_target)
9610         (record_full_core_target): New classes.
9611         (record_full_ops): Now a record_full_target.
9612         (record_full_core_ops): Now a record_full_core_target.
9613         (record_full_target::detach, record_full_target::disconnect)
9614         (record_full_core_target::disconnect)
9615         (record_full_target::mourn_inferior, record_full_target::kill):
9616         New.
9617         (record_full_open, record_full_close, record_full_async): Refactor
9618         as methods of the record_full_base_target class.
9619         (record_full_resume, record_full_commit_resume): Refactor
9620         as methods of the record_full_target class.
9621         (record_full_wait, record_full_stopped_by_watchpoint)
9622         (record_full_stopped_data_address)
9623         (record_full_stopped_by_sw_breakpoint)
9624         (record_full_supports_stopped_by_sw_breakpoint)
9625         (record_full_stopped_by_hw_breakpoint)
9626         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9627         methods of the record_full_base_target class.
9628         (record_full_store_registers, record_full_xfer_partial)
9629         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9630         Refactor as methods of the record_full_target class.
9631         (record_full_can_execute_reverse, record_full_get_bookmark)
9632         (record_full_goto_bookmark, record_full_execution_direction)
9633         (record_full_record_method, record_full_info, record_full_delete)
9634         (record_full_is_replaying, record_full_will_replay)
9635         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9636         (record_full_stop_replaying): Refactor as methods of the
9637         record_full_base_target class.
9638         (record_full_core_resume, record_full_core_kill)
9639         (record_full_core_fetch_registers)
9640         (record_full_core_prepare_to_store)
9641         (record_full_core_store_registers, record_full_core_xfer_partial)
9642         (record_full_core_insert_breakpoint)
9643         (record_full_core_remove_breakpoint)
9644         (record_full_core_has_execution): Refactor
9645         as methods of the record_full_core_target class.
9646         (record_full_base_target::supports_delete_record): New.
9647         (init_record_full_ops): Delete.
9648         (init_record_full_core_ops): Delete.
9649         (record_full_save): Refactor as method of the
9650         record_full_base_target class.
9651         (_initialize_record_full): Remove references to
9652         init_record_full_ops and init_record_full_core_ops.
9653
9654         * remote.c (remote_target, extended_remote_target): New classes.
9655         (remote_ops): Now a remote_target.
9656         (extended_remote_ops): Now an extended_remote_target.
9657         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9658         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9659         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9660         (remote_pass_signals, remote_set_syscall_catchpoint)
9661         (remote_program_signals, )
9662         (remote_thread_always_alive): Remove target_ops parameter.
9663         (remote_thread_alive, remote_thread_name)
9664         (remote_update_thread_list, remote_threads_extra_info)
9665         (remote_static_tracepoint_marker_at)
9666         (remote_static_tracepoint_markers_by_strid)
9667         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9668         (remote_open): Refactor as methods of remote_target.
9669         (extended_remote_open, extended_remote_detach)
9670         (extended_remote_attach, extended_remote_post_attach):
9671         (extended_remote_supports_disable_randomization)
9672         (extended_remote_create_inferior): : Refactor as method of
9673         extended_remote_target.
9674         (remote_set_permissions, remote_open_1, remote_detach)
9675         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9676         (remote_resume, remote_commit_resume, remote_stop)
9677         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9678         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9679         (remote_prepare_to_store, remote_store_registers)
9680         (remote_flash_erase, remote_flash_done, remote_files_info)
9681         (remote_kill, remote_mourn, remote_insert_breakpoint)
9682         (remote_remove_breakpoint, remote_insert_watchpoint)
9683         (remote_watchpoint_addr_within_range)
9684         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9685         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9686         (remote_supports_stopped_by_sw_breakpoint)
9687         (remote_stopped_by_hw_breakpoint)
9688         (remote_supports_stopped_by_hw_breakpoint)
9689         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9690         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9691         (remote_verify_memory): Refactor as methods of remote_target.
9692         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9693         parameter.
9694         (remote_xfer_partial, remote_get_memory_xfer_limit)
9695         (remote_search_memory, remote_rcmd, remote_memory_map)
9696         (remote_pid_to_str, remote_get_thread_local_address)
9697         (remote_get_tib_address, remote_read_description): Refactor as
9698         methods of remote_target.
9699         (remote_target::fileio_open, remote_target::fileio_pwrite)
9700         (remote_target::fileio_pread, remote_target::fileio_close): New.
9701         (remote_hostio_readlink, remote_hostio_fstat)
9702         (remote_filesystem_is_local, remote_can_execute_reverse)
9703         (remote_supports_non_stop, remote_supports_disable_randomization)
9704         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9705         (remote_supports_enable_disable_tracepoint)
9706         (remote_supports_string_tracing)
9707         (remote_can_run_breakpoint_commands, remote_trace_init)
9708         (remote_download_tracepoint, remote_can_download_tracepoint)
9709         (remote_download_trace_state_variable, remote_enable_tracepoint)
9710         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9711         (remote_trace_start, remote_get_trace_status)
9712         (remote_get_tracepoint_status, remote_trace_stop)
9713         (remote_trace_find, remote_get_trace_state_variable_value)
9714         (remote_save_trace_data, remote_get_raw_trace_data)
9715         (remote_set_disconnected_tracing, remote_core_of_thread)
9716         (remote_set_circular_trace_buffer, remote_traceframe_info)
9717         (remote_get_min_fast_tracepoint_insn_len)
9718         (remote_set_trace_buffer_size, remote_set_trace_notes)
9719         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9720         (remote_disable_btrace, remote_teardown_btrace)
9721         (remote_read_btrace, remote_btrace_conf)
9722         (remote_augmented_libraries_svr4_read, remote_load)
9723         (remote_pid_to_exec_file, remote_can_do_single_step)
9724         (remote_execution_direction, remote_thread_handle_to_thread_info):
9725         Refactor as methods of remote_target.
9726         (init_remote_ops, init_extended_remote_ops): Delete.
9727         (remote_can_async_p, remote_is_async_p, remote_async)
9728         (remote_thread_events, remote_upload_tracepoints)
9729         (remote_upload_trace_state_variables): Refactor as methods of
9730         remote_target.
9731         (_initialize_remote): Remove references to init_remote_ops and
9732         init_extended_remote_ops.
9733
9734         * remote-sim.c (gdbsim_target): New class.
9735         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9736         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9737         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9738         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9739         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9740         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9741         Refactor as methods of gdbsim_target.
9742         (gdbsim_ops): Now a gdbsim_target.
9743         (init_gdbsim_ops): Delete.
9744         (gdbsim_cntrl_c): Adjust.
9745         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9746
9747         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9748         (the_amd64_linux_nat_target): New.
9749         (amd64_linux_fetch_inferior_registers)
9750         (amd64_linux_store_inferior_registers): Refactor as methods of
9751         amd64_linux_nat_target.
9752         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9753         * i386-linux-nat.c: Don't include "linux-nat.h".
9754         (i386_linux_nat_target): New class.
9755         (the_i386_linux_nat_target): New.
9756         (i386_linux_fetch_inferior_registers)
9757         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9758         as methods of i386_linux_nat_target.
9759         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9760         * inf-child.c (inf_child_ops): Delete.
9761         (inf_child_fetch_inferior_registers)
9762         (inf_child_store_inferior_registers): Delete.
9763         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9764         methods of inf_child_target.
9765         (inf_child_target::supports_terminal_ours)
9766         (inf_child_target::terminal_init)
9767         (inf_child_target::terminal_inferior)
9768         (inf_child_target::terminal_ours_for_output)
9769         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9770         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9771         New.
9772         (inf_child_open, inf_child_disconnect, inf_child_close)
9773         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9774         (inf_child_post_startup_inferior, inf_child_can_run)
9775         (inf_child_pid_to_exec_file): Refactor as methods of
9776         inf_child_target.
9777         (inf_child_follow_fork): Delete.
9778         (inf_child_target::can_create_inferior)
9779         (inf_child_target::can_attach): New.
9780         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9781         (inf_child_target::has_stack, inf_child_target::has_registers)
9782         (inf_child_target::has_execution): New.
9783         (inf_child_fileio_open, inf_child_fileio_pwrite)
9784         (inf_child_fileio_pread, inf_child_fileio_fstat)
9785         (inf_child_fileio_close, inf_child_fileio_unlink)
9786         (inf_child_fileio_readlink, inf_child_use_agent)
9787         (inf_child_can_use_agent): Refactor as methods of
9788         inf_child_target.
9789         (return_zero, inf_child_target): Delete.
9790         (inf_child_target::inf_child_target): New.
9791         * inf-child.h: Include "target.h".
9792         (inf_child_target): Delete function prototype.
9793         (inf_child_target): New class.
9794         (inf_child_open_target, inf_child_mourn_inferior)
9795         (inf_child_maybe_unpush_target): Delete.
9796         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9797         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9798         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9799         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9800         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9801         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9802         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9803         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9804         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9805         methods of inf_ptrace_target.
9806         (inf_ptrace_target): Delete function.
9807         * inf-ptrace.h: Include "inf-child.h".
9808         (inf_ptrace_target): Delete function declaration.
9809         (inf_ptrace_target): New class.
9810         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9811         * linux-nat.c (linux_target): New.
9812         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9813         (linux_nat_target::~linux_nat_target): New.
9814         (linux_child_post_attach, linux_child_post_startup_inferior)
9815         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9816         (linux_child_remove_fork_catchpoint)
9817         (linux_child_insert_vfork_catchpoint)
9818         (linux_child_remove_vfork_catchpoint)
9819         (linux_child_insert_exec_catchpoint)
9820         (linux_child_remove_exec_catchpoint)
9821         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9822         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9823         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9824         (linux_nat_stopped_data_address)
9825         (linux_nat_stopped_by_sw_breakpoint)
9826         (linux_nat_supports_stopped_by_sw_breakpoint)
9827         (linux_nat_stopped_by_hw_breakpoint)
9828         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9829         (linux_nat_kill, linux_nat_mourn_inferior)
9830         (linux_nat_xfer_partial, linux_nat_thread_alive)
9831         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9832         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9833         (linux_child_static_tracepoint_markers_by_strid)
9834         (linux_nat_is_async_p, linux_nat_can_async_p)
9835         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9836         (linux_nat_supports_multi_process)
9837         (linux_nat_supports_disable_randomization, linux_nat_async)
9838         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9839         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9840         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9841         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9842         methods of linux_nat_target.
9843         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9844         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9845         parameter.
9846         (check_stopped_by_watchpoint): Adjust.
9847         (linux_xfer_partial): Delete.
9848         (linux_target_install_ops, linux_target, linux_nat_add_target):
9849         Delete.
9850         (linux_nat_target::linux_nat_target): New.
9851         * linux-nat.h: Include "inf-ptrace.h".
9852         (linux_nat_target): New.
9853         (linux_target, linux_target_install_ops, linux_nat_add_target):
9854         Delete function declarations.
9855         (linux_target): Declare global.
9856         * linux-thread-db.c (thread_db_target): New.
9857         (thread_db_target::thread_db_target): New.
9858         (thread_db_ops): Delete.
9859         (the_thread_db_target): New.
9860         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9861         (thread_db_update_thread_list, thread_db_pid_to_str)
9862         (thread_db_extra_thread_info)
9863         (thread_db_thread_handle_to_thread_info)
9864         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9865         (thread_db_resume): Refactor as methods of thread_db_target.
9866         (init_thread_db_ops): Delete.
9867         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9868         * x86-linux-nat.c: Don't include "linux-nat.h".
9869         (super_post_startup_inferior): Delete.
9870         (x86_linux_nat_target::~x86_linux_nat_target): New.
9871         (x86_linux_child_post_startup_inferior)
9872         (x86_linux_read_description, x86_linux_enable_btrace)
9873         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9874         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9875         methods of x86_linux_nat_target.
9876         (x86_linux_create_target): Delete.  Bits folded ...
9877         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9878         pointer.
9879         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9880         (x86_linux_nat_target): New class.
9881         (x86_linux_create_target): Delete.
9882         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9883         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9884         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9885         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9886         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9887         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9888         make extern.
9889         (x86_use_watchpoints): Delete.
9890         * x86-nat.h: Include "breakpoint.h" and "target.h".
9891         (x86_use_watchpoints): Delete.
9892         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9893         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9894         (x86_insert_watchpoint, x86_remove_watchpoint)
9895         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9896         (x86_stopped_by_hw_breakpoint): New declarations.
9897         (x86_nat_target): New template class.
9898
9899         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9900         (the_ppc_linux_nat_target): New.
9901         (ppc_linux_fetch_inferior_registers)
9902         (ppc_linux_can_use_hw_breakpoint)
9903         (ppc_linux_region_ok_for_hw_watchpoint)
9904         (ppc_linux_ranged_break_num_registers)
9905         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9906         (ppc_linux_insert_mask_watchpoint)
9907         (ppc_linux_remove_mask_watchpoint)
9908         (ppc_linux_can_accel_watchpoint_condition)
9909         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9910         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9911         (ppc_linux_watchpoint_addr_within_range)
9912         (ppc_linux_masked_watch_num_registers)
9913         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9914         (ppc_linux_read_description): Refactor as methods of
9915         ppc_linux_nat_target.
9916         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9917
9918         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9919         (procfs_target): New class.
9920         (the_procfs_target): New.
9921         (procfs_target): Delete function.
9922         (procfs_auxv_parse, procfs_attach, procfs_detach)
9923         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9924         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9925         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9926         (procfs_create_inferior, procfs_update_thread_list)
9927         (procfs_thread_alive, procfs_pid_to_str)
9928         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9929         (procfs_stopped_data_address, procfs_insert_watchpoint)
9930         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9931         (proc_find_memory_regions, procfs_info_proc)
9932         (procfs_make_note_section): Refactor as methods of procfs_target.
9933         (_initialize_procfs): Adjust.
9934         * sol-thread.c (sol_thread_target): New class.
9935         (sol_thread_ops): Now a sol_thread_target.
9936         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9937         (sol_thread_fetch_registers, sol_thread_store_registers)
9938         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9939         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9940         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9941         (init_sol_thread_ops): Delete.
9942         (_initialize_sol_thread): Adjust.  Remove references to
9943         init_sol_thread_ops and complete_target_initialization.
9944
9945         * windows-nat.c (windows_nat_target): New class.
9946         (windows_fetch_inferior_registers)
9947         (windows_store_inferior_registers, windows_resume, windows_wait)
9948         (windows_attach, windows_detach, windows_pid_to_exec_file)
9949         (windows_files_info, windows_create_inferior)
9950         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9951         (windows_close, windows_pid_to_str, windows_xfer_partial)
9952         (windows_get_tib_address, windows_get_ada_task_ptid)
9953         (windows_thread_name, windows_thread_alive): Refactor as
9954         windows_nat_target methods.
9955         (do_initial_windows_stuff): Adjust.
9956         (windows_target): Delete function.
9957         (_initialize_windows_nat): Adjust.
9958
9959         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9960         (darwin_mourn_inferior, darwin_kill_inferior)
9961         (darwin_create_inferior, darwin_attach, darwin_detach)
9962         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9963         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9964         (darwin_supports_multi_process): Refactor as darwin_nat_target
9965         methods.
9966         (darwin_resume_to, darwin_files_info): Delete.
9967         (_initialize_darwin_inferior): Rename to ...
9968         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9969         * darwin-nat.h: Include "inf-child.h".
9970         (darwin_nat_target): New class.
9971         (darwin_complete_target): Delete.
9972         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9973         (darwin_target): New.
9974         (i386_darwin_fetch_inferior_registers)
9975         (i386_darwin_store_inferior_registers): Refactor as methods of
9976         darwin_nat_target.
9977         (darwin_complete_target): Delete, with ...
9978         (_initialize_i386_darwin_nat): ... bits factored out here.
9979
9980         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9981         (the_alpha_linux_nat_target): New.
9982         (alpha_linux_register_u_offset): Refactor as
9983         alpha_linux_nat_target method.
9984         (_initialize_alpha_linux_nat): Adjust.
9985         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9986         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9987         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9988         methods of linux_nat_trad_target.
9989         (linux_trad_target): Delete.
9990         * linux-nat-trad.h (linux_trad_target): Delete function.
9991         (linux_nat_trad_target): New class.
9992         * mips-linux-nat.c (mips_linux_nat_target): New class.
9993         (super_fetch_registers, super_store_registers, super_close):
9994         Delete.
9995         (the_mips_linux_nat_target): New.
9996         (mips64_linux_regsets_fetch_registers)
9997         (mips64_linux_regsets_store_registers)
9998         (mips64_linux_fetch_registers, mips64_linux_store_registers)
9999         (mips_linux_register_u_offset, mips_linux_read_description)
10000         (mips_linux_can_use_hw_breakpoint)
10001         (mips_linux_stopped_by_watchpoint)
10002         (mips_linux_stopped_data_address)
10003         (mips_linux_region_ok_for_hw_watchpoint)
10004         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10005         (mips_linux_close): Refactor as methods of mips_linux_nat.
10006         (_initialize_mips_linux_nat): Adjust to C++ification.
10007
10008         * aix-thread.c (aix_thread_target): New class.
10009         (aix_thread_ops): Now an aix_thread_target.
10010         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10011         (aix_thread_fetch_registers, aix_thread_store_registers)
10012         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10013         (aix_thread_thread_alive, aix_thread_pid_to_str)
10014         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10015         Refactor as methods of aix_thread_target.
10016         (init_aix_thread_ops): Delete.
10017         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10018         and complete_target_initialization.
10019         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10020         (rs6000_nat_target): New class.
10021         (the_rs6000_nat_target): New.
10022         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10023         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10024         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10025         (super_create_inferior): Delete.
10026         (_initialize_rs6000_nat): Adjust to C++ification.
10027
10028         * arm-linux-nat.c (arm_linux_nat_target): New class.
10029         (the_arm_linux_nat_target): New.
10030         (arm_linux_fetch_inferior_registers)
10031         (arm_linux_store_inferior_registers, arm_linux_read_description)
10032         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10033         (arm_linux_remove_hw_breakpoint)
10034         (arm_linux_region_ok_for_hw_watchpoint)
10035         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10036         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10037         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10038         arm_linux_nat_target.
10039         (_initialize_arm_linux_nat): Adjust to C++ification.
10040
10041         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10042         (the_aarch64_linux_nat_target): New.
10043         (aarch64_linux_fetch_inferior_registers)
10044         (aarch64_linux_store_inferior_registers)
10045         (aarch64_linux_child_post_startup_inferior)
10046         (aarch64_linux_read_description)
10047         (aarch64_linux_can_use_hw_breakpoint)
10048         (aarch64_linux_insert_hw_breakpoint)
10049         (aarch64_linux_remove_hw_breakpoint)
10050         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10051         (aarch64_linux_region_ok_for_hw_watchpoint)
10052         (aarch64_linux_stopped_data_address)
10053         (aarch64_linux_stopped_by_watchpoint)
10054         (aarch64_linux_watchpoint_addr_within_range)
10055         (aarch64_linux_can_do_single_step): Refactor as methods of
10056         aarch64_linux_nat_target.
10057         (super_post_startup_inferior): Delete.
10058         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10059
10060         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10061         (the_hppa_linux_nat_target): New.
10062         (hppa_linux_fetch_inferior_registers)
10063         (hppa_linux_store_inferior_registers): Refactor as methods of
10064         hppa_linux_nat_target.
10065         (_initialize_hppa_linux_nat): Adjust to C++ification.
10066
10067         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10068         (the_ia64_linux_nat_target): New.
10069         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10070         (ia64_linux_stopped_data_address)
10071         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10072         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10073         ia64_linux_nat_target methods.
10074         (super_xfer_partial): Delete.
10075         (_initialize_ia64_linux_nat): Adjust to C++ification.
10076
10077         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10078         (the_m32r_linux_nat_target): New.
10079         (m32r_linux_fetch_inferior_registers)
10080         (m32r_linux_store_inferior_registers): Refactor as
10081         m32r_linux_nat_target methods.
10082         (_initialize_m32r_linux_nat): Adjust to C++ification.
10083
10084         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10085         (the_m68k_linux_nat_target): New.
10086         (m68k_linux_fetch_inferior_registers)
10087         (m68k_linux_store_inferior_registers): Refactor as
10088         m68k_linux_nat_target methods.
10089         (_initialize_m68k_linux_nat): Adjust to C++ification.
10090
10091         * s390-linux-nat.c (s390_linux_nat_target): New class.
10092         (the_s390_linux_nat_target): New.
10093         (s390_linux_fetch_inferior_registers)
10094         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10095         (s390_insert_watchpoint, s390_remove_watchpoint)
10096         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10097         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10098         (s390_auxv_parse, s390_read_description): Refactor as methods of
10099         s390_linux_nat_target.
10100         (_initialize_s390_nat): Adjust to C++ification.
10101
10102         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10103         (the_sparc_linux_nat_target): New.
10104         (_initialize_sparc_linux_nat): Adjust to C++ification.
10105         * sparc-nat.c (sparc_fetch_inferior_registers)
10106         (sparc_store_inferior_registers): Remove target_ops parameter.
10107         * sparc-nat.h (sparc_fetch_inferior_registers)
10108         (sparc_store_inferior_registers): Remove target_ops parameter.
10109         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10110         (the_sparc64_linux_nat_target): New.
10111         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10112
10113         * spu-linux-nat.c (spu_linux_nat_target): New class.
10114         (the_spu_linux_nat_target): New.
10115         (spu_child_post_startup_inferior, spu_child_post_attach)
10116         (spu_child_wait, spu_fetch_inferior_registers)
10117         (spu_store_inferior_registers, spu_xfer_partial)
10118         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10119         methods.
10120         (_initialize_spu_nat): Adjust to C++ification.
10121
10122         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10123         (the_tilegx_linux_nat_target): New.
10124         (fetch_inferior_registers, store_inferior_registers):
10125         Refactor as methods.
10126         (_initialize_tile_linux_nat): Adjust to C++ification.
10127
10128         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10129         (the_xtensa_linux_nat_target): New.
10130         (xtensa_linux_fetch_inferior_registers)
10131         (xtensa_linux_store_inferior_registers): Refactor as
10132         xtensa_linux_nat_target methods.
10133         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10134
10135         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10136         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10137         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10138         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10139         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10140         (fbsd_stopped_by_sw_breakpoint)
10141         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10142         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10143         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10144         (fbsd_post_startup_inferior, fbsd_post_attach)
10145         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10146         (fbsd_set_syscall_catchpoint)
10147         (super_xfer_partial, super_resume, super_wait)
10148         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10149         (fbsd_handle_debug_trap): Remove target_ops parameter.
10150         (fbsd_nat_add_target): Delete.
10151         * fbsd-nat.h: Include "inf-ptrace.h".
10152         (fbsd_nat_add_target): Delete.
10153         (USE_SIGTRAP_SIGINFO): Define.
10154         (fbsd_nat_target): New class.
10155
10156         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10157         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10158         (amd64bsd_target): Delete.
10159         * amd64-bsd-nat.h: New file.
10160         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10161         "x86-bsd-nat.h".
10162         (amd64_fbsd_nat_target): New class.
10163         (the_amd64_fbsd_nat_target): New.
10164         (amd64fbsd_read_description): Refactor as method of
10165         amd64_fbsd_nat_target.
10166         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10167         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10168         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10169         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10170         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10171         (i386bsd_target): Delete.
10172         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10173         (i386bsd_fetch_inferior_registers)
10174         (i386bsd_store_inferior_registers): Declare.
10175         (i386_bsd_nat_target): New class.
10176         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10177         (the_i386_fbsd_nat_target): New.
10178         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10179         i386_fbsd_nat_target methods.
10180         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10181         (_initialize_i386fbsd_nat): Adjust to C++ification.
10182         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10183         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10184         (_initialize_x86_bsd_nat): Adjust to C++ification.
10185         * x86-bsd-nat.h: Include "x86-nat.h".
10186         (x86bsd_target): Delete declaration.
10187         (x86bsd_nat_target): New class.
10188
10189         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10190         (the_aarch64_fbsd_nat_target): New.
10191         (aarch64_fbsd_fetch_inferior_registers)
10192         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10193         aarch64_fbsd_nat_target.
10194         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10195         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10196         (the_alpha_bsd_nat_target): New.
10197         (alphabsd_fetch_inferior_registers)
10198         (alphabsd_store_inferior_registers): Refactor as
10199         alpha_bsd_nat_target methods.
10200         (_initialize_alphabsd_nat): Refactor as methods of
10201         alpha_bsd_nat_target.
10202         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10203         (the_amd64_nbsd_nat_target): New.
10204         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10205         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10206         (the_amd64_obsd_nat_target): New.
10207         (_initialize_amd64obsd_nat): Adjust to C++ification.
10208         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10209         (the_arm_fbsd_nat_target): New.
10210         (arm_fbsd_fetch_inferior_registers)
10211         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10212         (_initialize_arm_fbsd_nat): Refactor as methods of
10213         arm_fbsd_nat_target.
10214         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10215         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10216         (the_arm_netbsd_nat_target): New.
10217         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10218         arm_netbsd_nat_target.
10219         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10220         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10221         (the_hppa_nbsd_nat_target): New.
10222         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10223         hppa_nbsd_nat_target methods.
10224         (_initialize_hppanbsd_nat): Adjust to C++ification.
10225         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10226         (the_hppa_obsd_nat_target): New.
10227         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10228         methods of hppa_obsd_nat_target.
10229         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10230         add_target.
10231         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10232         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10233         add_target.
10234         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10235         (_initialize_i386obsd_nat): Use add_target.
10236         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10237         (the_m68k_bsd_nat_target): New.
10238         (m68kbsd_fetch_inferior_registers)
10239         (m68kbsd_store_inferior_registers): Refactor as methods of
10240         m68k_bsd_nat_target.
10241         (_initialize_m68kbsd_nat): Adjust to C++ification.
10242         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10243         (the_mips_fbsd_nat_target): New.
10244         (mips_fbsd_fetch_inferior_registers)
10245         (mips_fbsd_store_inferior_registers): Refactor as methods of
10246         mips_fbsd_nat_target.
10247         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10248         add_target.
10249         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10250         (the_mips_nbsd_nat_target): New.
10251         (mipsnbsd_fetch_inferior_registers)
10252         (mipsnbsd_store_inferior_registers): Refactor as methods of
10253         mips_nbsd_nat_target.
10254         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10255         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10256         (the_mips64_obsd_nat_target): New.
10257         (mips64obsd_fetch_inferior_registers)
10258         (mips64obsd_store_inferior_registers): Refactor as methods of
10259         mips64_obsd_nat_target.
10260         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10261         add_target.
10262         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10263         nbsd_nat_target.
10264         * nbsd-nat.h: Include "inf-ptrace.h".
10265         (nbsd_nat_target): New class.
10266         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10267         (obsd_wait): Refactor as methods of obsd_nat_target.
10268         (obsd_add_target): Delete.
10269         * obsd-nat.h: Include "inf-ptrace.h".
10270         (obsd_nat_target): New class.
10271         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10272         (the_ppc_fbsd_nat_target): New.
10273         (ppcfbsd_fetch_inferior_registers)
10274         (ppcfbsd_store_inferior_registers): Refactor as methods of
10275         ppc_fbsd_nat_target.
10276         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10277         add_target.
10278         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10279         (the_ppc_nbsd_nat_target): New.
10280         (ppcnbsd_fetch_inferior_registers)
10281         (ppcnbsd_store_inferior_registers): Refactor as methods of
10282         ppc_nbsd_nat_target.
10283         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10284         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10285         (the_ppc_obsd_nat_target): New.
10286         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10287         methods of ppc_obsd_nat_target.
10288         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10289         add_target.
10290         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10291         (the_sh_nbsd_nat_target): New.
10292         (shnbsd_fetch_inferior_registers)
10293         (shnbsd_store_inferior_registers): Refactor as methods of
10294         sh_nbsd_nat_target.
10295         (_initialize_shnbsd_nat): Adjust to C++ification.
10296         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10297         (inf_ptrace_xfer_partial): Delete.
10298         (sparc_xfer_partial, sparc_target): Delete.
10299         * sparc-nat.h (sparc_fetch_inferior_registers)
10300         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10301         (sparc_target): Delete function declaration.
10302         (sparc_target): New template class.
10303         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10304         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10305         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10306         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10307         add_target.
10308         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10309         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10310         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10311         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10312         add_target.
10313         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10314         (the_vax_bsd_nat_target): New.
10315         (vaxbsd_fetch_inferior_registers)
10316         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10317         methods.
10318         (_initialize_vaxbsd_nat): Adjust to C++ification.
10319
10320         * bsd-kvm.c (bsd_kvm_target): New class.
10321         (bsd_kvm_ops): Now a bsd_kvm_target.
10322         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10323         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10324         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10325         bsd_kvm_target.
10326         (bsd_kvm_return_one): Delete.
10327         (bsd_kvm_add_target): Adjust to C++ification.
10328
10329         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10330         (nto_procfs_target_procfs): New classes.
10331         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10332         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10333         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10334         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10335         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10336         (procfs_remove_hw_breakpoint, procfs_resume)
10337         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10338         (procfs_kill_inferior, procfs_store_registers)
10339         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10340         as methods of nto_procfs_target.
10341         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10342         (nto_native_ops): Delete.
10343         (procfs_open, procfs_native_open): Delete.
10344         (nto_native_ops): Now an nto_procfs_target_native.
10345         (init_procfs_targets): Adjust to C++ification.
10346         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10347         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10348         Refactor as methods of nto_procfs_target.
10349
10350         * go32-nat.c (go32_nat_target): New class.
10351         (the_go32_nat_target): New.
10352         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10353         (go32_store_registers, go32_xfer_partial, go32_files_info)
10354         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10355         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10356         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10357         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10358         (go32_target): Delete.
10359         (_initialize_go32_nat): Adjust to C++ification.
10360
10361         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10362         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10363         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10364         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10365         gnu_nat_target.
10366         (gnu_target): Delete.
10367         * gnu-nat.h (gnu_target): Delete.
10368         (gnu_nat_target): New class.
10369         * i386-gnu-nat.c (gnu_base_target): New.
10370         (i386_gnu_nat_target): New class.
10371         (the_i386_gnu_nat_target): New.
10372         (_initialize_i386gnu_nat): Adjust to C++ification.
10373
10374 2018-05-02  Pedro Alves  <palves@redhat.com>
10375
10376         * bfd-target.c (target_bfd_xclose): Rename to ...
10377         (target_bfd_close): ... this.
10378         (target_bfd_reopen): Adjust.
10379         * target.c (target_close): Remove references to to_xclose.
10380         * target.h (target_ops::to_xclose): Delete.
10381         (target_ops::to_close): Update comments.
10382
10383 2018-05-02  Pedro Alves  <palves@redhat.com>
10384
10385         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10386         "linux-nat.h".
10387         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10388         * inf-ptrace.c (inf_ptrace_register_u_offset)
10389         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10390         (inf_ptrace_store_register, inf_ptrace_store_registers)
10391         (inf_ptrace_trad_target): Move to ...
10392         * linux-nat-trad.c: ... this new file.
10393         * linux-nat-trad.h: New file.
10394         * linux-nat.c (linux_target_install_ops): Make extern.
10395         (linux_trad_target): Delete.
10396         * linux-nat.h (linux_trad_target): Delete declaration.
10397         (linux_target_install_ops): Declare.
10398         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10399         "linux-nat.h".
10400
10401 2018-05-02  Pedro Alves  <palves@redhat.com>
10402
10403         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10404         procfs_target/add_target here.
10405         * procfs.c (procfs_target): Make static.
10406         (_initialize_procfs): Call add_target here.
10407         * procfs.h (struct target_ops): Remove forward declaration.
10408         (procfs_target): Remove declaration.
10409         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10410
10411 2018-05-02  Pedro Alves  <palves@redhat.com>
10412
10413         * procfs.c (procfs_stopped_by_watchpoint)
10414         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10415         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10416         Forward declare.
10417         (procfs_use_watchpoints): Delete, move contents...
10418         (procfs_target): ... here.
10419         * procfs.h (procfs_use_watchpoints): Delete declaration.
10420         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10421         procfs_use_watchpoints.
10422         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10423         procfs_use_watchpoints.
10424
10425 2018-05-02  Tom Tromey  <tom@tromey.com>
10426
10427         PR python/20084:
10428         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10429         and var_zuinteger_unlimited.
10430         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10431         and PARAM_ZUINTEGER_UNLIMITED.
10432         (set_parameter_value): Handle var_zuinteger and
10433         var_zuinteger_unlimited.
10434         (add_setshow_generic): Likewise.
10435         (parmpy_init): Likewise.
10436
10437 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10438
10439         PR rust/23124
10440         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10441         pointer is not null before dereferencing it.
10442
10443 2018-04-30  Tom Tromey  <tom@tromey.com>
10444
10445         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10446         is_mi_like_p.
10447
10448 2018-04-30  Tom Tromey  <tom@tromey.com>
10449
10450         * breakpoint.c (mention): Remove use of is_mi_like_p.
10451         (print_mention_ranged_breakpoint): Likewise.
10452         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10453         of is_mi_like_p.
10454
10455 2018-04-30  Tom Tromey  <tom@tromey.com>
10456
10457         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10458
10459 2018-04-30  Tom Tromey  <tom@tromey.com>
10460
10461         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10462         (info_spu_event_command): Remove some uses of is_mi_like_p.
10463
10464 2018-04-30  Tom Tromey  <tom@tromey.com>
10465
10466         * python/py-framefilter.c (py_print_single_arg)
10467         (enumerate_locals, py_print_args, py_print_frame): Remove some
10468         uses of is_mi_like_p.
10469
10470 2018-04-30  Tom Tromey  <tom@tromey.com>
10471
10472         * ui-out.c: Update.
10473         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10474         * ui-out.h (ui_out::is_mi_like_p): Now const.
10475         (ui_out::do_is_mi_like_p): Now const.
10476         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10477
10478 2018-04-30  Tom Tromey  <tom@tromey.com>
10479
10480         * varobj.c (varobj_set_visualizer): Use new_reference.
10481         * python/python.c (gdbpy_decode_line): Use new_reference.
10482         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10483         new_reference.
10484
10485 2018-04-30  Tom Tromey  <tom@tromey.com>
10486
10487         * varobj.c (install_new_value): Use new_reference.
10488         * value.h (value_incref): Return void.  Swap intro comment with
10489         value_decref.
10490         * value.c (set_value_parent): Use new_reference.
10491         (value_incref): Return void.  Update intro comment.
10492         (release_value): Use new_reference.
10493         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10494
10495 2018-04-30  Tom Tromey  <tom@tromey.com>
10496
10497         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10498         * gdb_bfd.h (new_bfd_ref): Remove.
10499         (gdb_bfd_open): Update comment.
10500         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10501         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10502         (gdb_bfd_fdopenr): Use new_reference.
10503         * exec.c (exec_file_attach): Use new_reference.
10504
10505 2018-04-30  Tom Tromey  <tom@tromey.com>
10506
10507         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10508         method.
10509
10510 2018-04-30  Tom Tromey  <tom@tromey.com>
10511
10512         * jit.c (jit_read_code_entry): Use type_align.
10513         * i386-tdep.c (i386_gdbarch_init): Don't call
10514         set_gdbarch_long_long_align_bit.
10515         * gdbarch.sh: Remove long_long_align_bit.
10516         * gdbarch.c, gdbarch.h: Rebuild.
10517         * arc-tdep.c (arc_type_align): New function.
10518         (arc_gdbarch_init): Use arc_type_align.  Don't call
10519         set_gdbarch_long_long_align_bit.
10520
10521 2018-04-30  Tom Tromey  <tom@tromey.com>
10522
10523         * rust-lang.c (rust_type_alignment): Remove.
10524         (rust_composite_type): Use type_align.
10525
10526 2018-04-30  Tom Tromey  <tom@tromey.com>
10527
10528         * NEWS: Mention Type.align.
10529         * python/py-type.c (typy_get_alignof): New function.
10530         (type_object_getset): Add "alignof".
10531
10532 2018-04-30  Tom Tromey  <tom@tromey.com>
10533
10534         PR exp/17095:
10535         * NEWS: Update.
10536         * std-operator.def (UNOP_ALIGNOF): New operator.
10537         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10538         New.
10539         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10540         * c-lang.c (c_op_print_tab): Add alignof.
10541         * c-exp.y (ALIGNOF): New token.
10542         (exp): Add "ALIGNOF" production.
10543         (ident_tokens): Add _Alignof and alignof.
10544
10545 2018-04-30  Tom Tromey  <tom@tromey.com>
10546
10547         * i386-tdep.c (i386_type_align): New function.
10548         (i386_gdbarch_init): Update.
10549         * gdbarch.sh (type_align): New method.
10550         * gdbarch.c, gdbarch.h: Rebuild.
10551         * arch-utils.h (default_type_align): Declare.
10552         * arch-utils.c (default_type_align): New function.
10553         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10554         (struct type) <align_log2>: New field.
10555         <instance_flags>: Now a bitfield.
10556         (TYPE_RAW_ALIGN): New macro.
10557         (type_align, type_raw_align, set_type_align): Declare.
10558         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10559         functions.
10560         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10561         (get_alignment, maybe_set_alignment): New functions.
10562         (read_structure_type, read_enumeration_type, read_array_type)
10563         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10564         (read_subrange_type, read_base_type): Set type alignment.
10565
10566 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10567
10568         * dwarf2read.c (read_index_from_section): Use bool.
10569
10570 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10571
10572         PR gdb/22950
10573         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10574         with #ifdef.
10575
10576 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10577
10578         PR build/22873
10579         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10580         last step, and do it atomically.
10581
10582 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10583
10584         * compile/compile-c-types.c (convert_int, convert_float):
10585         Update for C FE v1.
10586
10587 2018-04-27  Tom Tromey  <tom@tromey.com>
10588
10589         PR rust/22545:
10590         * rust-lang.c (rust_inclusive_range_type_p): New function.
10591         (rust_range): Handle inclusive ranges.
10592         (rust_compute_range): Likewise.
10593         * rust-exp.y (struct rust_op) <inclusive>: New field.
10594         (DOTDOTEQ): New constant.
10595         (range_expr): Add "..=" productions.
10596         (operator_tokens): Add "..=" token.
10597         (ast_range): Add "inclusive" parameter.
10598         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10599         ranges.
10600         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10601         bounds values.
10602         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10603         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10604         Update comments.
10605         * expprint.c (print_subexp_standard): Handle new bounds values.
10606         (dump_subexp_body_standard): Likewise.
10607
10608 2018-04-27  Tom Tromey  <tom@tromey.com>
10609
10610         * configure: Rebuild.
10611         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10612         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10613         "OVERRIDE".
10614         (class symbol_needs_eval_context): Likewise.
10615         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10616         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10617         "virtual".
10618         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10619         "override".
10620         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10621         * aarch64-tdep.c (instruction_reader::read): Use "override".
10622         (instruction_reader_test::read): Likewise.
10623         * arm-tdep.c (instruction_reader::read): Use "override".
10624         (instruction_reader_thumb::read): Likewise.
10625
10626 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10627
10628         PR remote/9665
10629         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10630         instead of remote_send.
10631         (remote_send): Remove.
10632
10633 2018-04-26  Pedro Alves  <palves@redhat.com>
10634
10635         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10636         find_function_start_sal instead of find_pc_line.
10637
10638 2018-04-26  Pedro Alves  <palves@redhat.com>
10639
10640         * breakpoint.c (set_breakpoint_location_function): Handle
10641         mst_data_gnu_ifunc.
10642         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10643         * elfread.c (elf_symtab_read): Give data symbols with
10644         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10645         (elf_rel_plt_read): Update comment.
10646         * linespec.c (convert_linespec_to_sals): Handle
10647         mst_data_gnu_ifunc.
10648         (minsym_found): Handle mst_data_gnu_ifunc.
10649         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10650         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10651         * parse.c (find_minsym_type_and_address): Handle
10652         mst_data_gnu_ifunc.
10653         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10654         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10655         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10656         comment.
10657         <mst_data_gnu_ifunc>: New enumerator.
10658
10659 2018-04-26  Pedro Alves  <palves@redhat.com>
10660
10661         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10662         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10663         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10664         Handle it.
10665         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10666         (lookup_minimal_symbol_by_pc): Adjust.
10667         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10668         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10669         * minsyms.h (lookup_msym_prefer): New enum.
10670         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10671         parameter by a lookup_msym_prefer parameter.
10672
10673 2018-04-26  Pedro Alves  <palves@redhat.com>
10674
10675         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10676         ends in "@plt" instead of looking at the symbol's section.
10677
10678 2018-04-26  Pedro Alves  <palves@redhat.com>
10679
10680         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10681         all references.
10682         (find_pc_partial_function_gnu_ifunc): Rename to ...
10683         (find_pc_partial_function): ... this, and remove references to
10684         'is_gnu_ifunc_p'.
10685         (find_pc_partial_function): Delete old implementation.
10686         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10687
10688 2018-04-26  Pedro Alves  <palves@redhat.com>
10689
10690         * linespec.c (struct bound_minimal_symbol_search_key): New.
10691         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10692         skip first line if we found a GNU ifunc minimal symbol by name.
10693         (compare_msymbols): Change parameters to work with a destructured
10694         lhs minsym.
10695         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10696         functions.
10697
10698 2018-04-26  Pedro Alves  <palves@redhat.com>
10699
10700         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10701         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10702         address/name.
10703         (add_location_to_breakpoint): Store the minsym and the objfile in
10704         the breakpoint location.
10705         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10706         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10707         Record the minsym in the sal.
10708         * symtab.h (symtab_and_line) <msymbol>: New field.
10709
10710 2018-04-26  Pedro Alves  <palves@redhat.com>
10711
10712         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10713         unless we actually resolved the ifunc.
10714
10715 2018-04-26  Pedro Alves  <palves@redhat.com>
10716
10717         * c-exp.y (variable production): Prefer ifunc minsyms over
10718         regular function symbols.
10719         * symtab.c (find_gnu_ifunc): New function.
10720         * minsyms.h (lookup_msym_prefer): New enum.
10721         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10722         parameter by a lookup_msym_prefer parameter.
10723         * symtab.h (find_gnu_ifunc): New declaration.
10724
10725 2018-04-26  Pedro Alves  <palves@redhat.com>
10726
10727         * blockframe.c (find_gnu_ifunc_target_type): New function.
10728         (find_function_type): New.
10729         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10730         return a value with a memory address.
10731         (eval_call): For calls to GNU ifunc functions, try to find the
10732         type of the target function from the type that the resolver
10733         returns.
10734         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10735         symbols.
10736         * infcall.c (find_function_return_type): Delete.
10737         (find_function_addr): Add 'function_type' parameter.  For calls to
10738         GNU ifunc functions, try to find the type of the target function
10739         from the type that the resolver returns, and return it via
10740         FUNCTION_TYPE.
10741         (call_function_by_hand_dummy): Adjust to use the function type
10742         returned by find_function_addr.
10743         (find_function_addr): Add 'function_type' parameter and move
10744         description here.
10745         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10746         declarations.
10747
10748 2018-04-26  Pedro Alves  <palves@redhat.com>
10749
10750         * c-exp.y (variable production): Skip finding an alias for ifunc
10751         symbols.
10752
10753 2018-04-26  Pedro Alves  <palves@redhat.com>
10754
10755         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10756
10757 2018-04-25  Pedro Alves  <palves@redhat.com>
10758
10759         * infcmd.c (kill_command): Print the pid as string, not the whole
10760         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10761         message.
10762         * remote.c (remote_detach_1): Print the pid as string, not the
10763         whole thread's ptid.
10764
10765 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10766             Sergio Durigan Junior  <sergiodj@redhat.com>
10767             Pedro Alves  <palves@redhat.com>
10768
10769         * infcmd.c (kill_command): Print message when inferior has
10770         been killed.
10771         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10772         '1'.
10773         (add_inferior): Improve message printed when
10774         'print_inferior_events' is on.
10775         (exit_inferior): Remove message printed when
10776         'print_inferior_events' is on.
10777         (detach_inferior): Improve message printed when
10778         'print_inferior_events' is on.
10779         (initialize_inferiors): Use 'add_inferior_silent' to set
10780         'current_inferior_'.
10781         * inferior.h (print_inferior_events): Declare here as
10782         'extern'.
10783         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10784         '[Detaching...]' messages when 'print_inferior_events' is on.
10785         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10786         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10787         'Detaching after fork from child...', replace it by '... from
10788         parent...'.
10789         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10790         prefix/suffix when printing 'Detaching...' messages.  Print
10791         them when 'print_inferior_events' is on.
10792         * remote.c (remote_detach_1): Print message when detaching
10793         from inferior and '!is_fork_parent'.
10794
10795 2018-04-24  Tom Tromey  <tom@tromey.com>
10796
10797         * cli-out.h: Reindent.
10798
10799 2018-04-24  Tom Tromey  <tom@tromey.com>
10800
10801         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10802         (cli_ui_out::do_field_string): Use fputs_filtered.
10803         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10804
10805 2018-04-23  Tom Tromey  <tom@tromey.com>
10806
10807         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10808         gdb::unique_xmalloc_ptr.
10809
10810 2018-04-23  Tom Tromey  <tom@tromey.com>
10811
10812         * configure: Rebuild.
10813
10814 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10815
10816         PR gdb/23095
10817         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10818         prepare_for_testing.  Set normal_bp to r_debug_state if target
10819         is bsd.
10820
10821 2018-04-21  Pedro Alves  <palves@redhat.com>
10822             Rajendra SY  <rajendra.sy@gmail.com>
10823
10824         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10825         * remote.c (extended_remote_attach): In all-stop mode, mark the
10826         thread as executing.
10827
10828 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10829
10830         * thread.c (thread_apply_all_command): Fix comment.
10831         (thread_command): Fix comment.
10832
10833 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10834
10835         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10836         parameter.
10837         * features/aarch64-core.c (create_feature_aarch64_core):
10838         Regenerate.
10839         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10840         Likewise.
10841         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10842         Likewise.
10843         * features/i386/32bit-avx512.c
10844         (create_feature_i386_32bit_avx512): Likewise.
10845         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10846         Likewise.
10847         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10848         Likewise.
10849         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10850         Likewise.
10851         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10852         Likewise.
10853         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10854         Likewise.
10855         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10856         Likewise.
10857         * features/i386/64bit-avx512.c
10858         (create_feature_i386_64bit_avx512): Likewise.
10859         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10860         Likewise.
10861         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10862         Likewise.
10863         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10864         Likewise.
10865         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10866         Likewise.
10867         * features/i386/64bit-segments.c
10868         (create_feature_i386_64bit_segments): Likewise.
10869         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10870         Likewise.
10871         * features/i386/x32-core.c
10872         (create_feature_i386_x32_core): Likewise.
10873         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10874         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10875         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10876         * target-descriptions.c: In generated code, don't pass xml
10877         filename.
10878
10879 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10880
10881         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10882         (print_xml_feature::visit_post): Likewise.
10883         (print_xml_feature::visit): Likewise.
10884         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10885         (print_xml_feature): Add new class.
10886         * regformats/regdat.sh: Null xmltarget on feature targets.
10887         * target-descriptions.c (struct target_desc): Add xmltarget.
10888         (maintenance_check_tdesc_xml_convert): Add unittest function.
10889         (tdesc_get_features_xml): Add function to get xml.
10890         (maintenance_check_xml_descriptions): Test xml generation.
10891         * xml-tdesc.c (string_read_description_xml): Add function.
10892         * xml-tdesc.h (string_read_description_xml): Add declaration.
10893
10894 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10895
10896         * features/Makefile: Add feature marker to targets with new style
10897         target descriptions.
10898         * regformats/aarch64.dat: Regenerate.
10899         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10900         * regformats/i386/amd64-avx-linux.dat: Likewise.
10901         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10902         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10903         * regformats/i386/amd64-linux.dat: Likewise.
10904         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10905         * regformats/i386/amd64.dat: Likewise.
10906         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10907         * regformats/i386/i386-avx-linux.dat: Likewise.
10908         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10909         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10910         * regformats/i386/i386-linux.dat: Likewise.
10911         * regformats/i386/i386-mmx-linux.dat: Likewise.
10912         * regformats/i386/i386-mpx-linux.dat: Likewise.
10913         * regformats/i386/i386.dat: Likewise.
10914         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10915         * regformats/i386/x32-avx-linux.dat: Likewise.
10916         * regformats/i386/x32-linux.dat: Likewise.
10917         * regformats/tic6x-c62x-linux.dat: Likewise.
10918         * regformats/tic6x-c64x-linux.dat: Likewise.
10919         * regformats/tic6x-c64xp-linux.dat: Likewise.
10920         * regformats/regdat.sh: Parse feature marker.
10921
10922 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10923
10924         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10925         (tdesc_osabi_name): Likewise.
10926         * target-descriptions.c (tdesc_architecture_name): Add new
10927         function.
10928         (tdesc_osabi_name): Likewise.
10929
10930 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10931
10932         * common/tdesc.c (tdesc_predefined_type): Move to here.
10933         (tdesc_named_type): Likewise.
10934         (tdesc_create_vector): Likewise.
10935         (tdesc_create_struct): Likewise.
10936         (tdesc_set_struct_size): Likewise.
10937         (tdesc_create_union): Likewise.
10938         (tdesc_create_flags): Likewise.
10939         (tdesc_create_enum): Likewise.
10940         (tdesc_add_field): Likewise.
10941         (tdesc_add_typed_bitfield): Likewise.
10942         (tdesc_add_bitfield): Likewise.
10943         (tdesc_add_flag): Likewise.
10944         (tdesc_add_enum_value): Likewise.
10945         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10946         (struct tdesc_type_vector): Likewise.
10947         (struct tdesc_type_field): Likewise.
10948         (struct tdesc_type_with_fields): Likewise.
10949         (tdesc_create_enum): Add declaration.
10950         (tdesc_add_typed_bitfield): Likewise.
10951         (tdesc_add_enum_value): Likewise.
10952         * target-descriptions.c (tdesc_type_field): Move from here.
10953         (tdesc_type_builtin): Likewise.
10954         (tdesc_type_vector): Likewise.
10955         (tdesc_type_with_fields): Likewise.
10956         (tdesc_predefined_types): Likewise.
10957         (tdesc_named_type): Likewise.
10958         (tdesc_create_vector): Likewise.
10959         (tdesc_create_struct): Likewise.
10960         (tdesc_set_struct_size): Likewise.
10961         (tdesc_create_union): Likewise.
10962         (tdesc_create_flags): Likewise.
10963         (tdesc_create_enum): Likewise.
10964         (tdesc_add_field): Likewise.
10965         (tdesc_add_typed_bitfield): Likewise.
10966         (tdesc_add_bitfield): Likewise.
10967         (tdesc_add_flag): Likewise.
10968         (tdesc_add_enum_value): Likewise.
10969         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10970         (tdesc_add_typed_bitfield): Likewise.
10971         (tdesc_add_enum_value): Likewise.
10972
10973 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10974
10975         * common/tdesc.c (tdesc_feature::accept): Move to here.
10976         (tdesc_feature::operator==): Likewise.
10977         (tdesc_create_reg): Likewise.
10978         * common/tdesc.h (tdesc_type_kind): Likewise.
10979         (struct tdesc_type): Likewise.
10980         (struct tdesc_feature): Likewise.
10981         * regformats/regdat.sh: Create a feature.
10982         * target-descriptions.c (tdesc_type_kind): Move from here.
10983         (tdesc_type): Likewise.
10984         (tdesc_type_up): Likewise.
10985         (tdesc_feature): Likewise.
10986         (tdesc_create_reg): Likewise.
10987
10988 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10989
10990         * Makefile.in: Add arch/tdesc.c
10991         * common/tdesc.c: New file.
10992         * common/tdesc.h (tdesc_element_visitor): Move to here.
10993         (tdesc_element): Likewise.
10994         (tdesc_reg): Likewise.
10995         (tdesc_reg_up): Likewise.
10996         * regformats/regdef.h (reg): Add offset to constructors.
10997         * target-descriptions.c (tdesc_element_visitor): Move from here.
10998         (tdesc_element): Likewise.
10999         (tdesc_reg): Likewise.
11000         (tdesc_reg_up): Likewise.
11001
11002 2018-04-17  Tom Tromey  <tom@tromey.com>
11003
11004         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11005         discriminant field.
11006
11007 2018-04-17  Tom Tromey  <tom@tromey.com>
11008
11009         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11010
11011 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11012
11013         * symtab.c (print_symbol_info): Skip printing filename and line
11014         number when `last' is NULL.
11015         (symtab_symbol_info): Use empty string instead of NULL for first
11016         invocation of print_symbol_info.
11017         (rbreak_command): Pass NULL to `last' parameter of
11018         print_symbol_info.
11019
11020 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11021
11022         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11023         instead of nullptr.
11024
11025 2018-04-16  Pedro Alves  <palves@redhat.com>
11026
11027         * MAINTAINERS (sh): Remove.
11028         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11029         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11030         (ALLDEPFILES): Remove sh64-tdep.c.
11031         * NEWS: Mentions that support for SH-5/SH64 is removed.
11032         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11033         (sh*-*-openbsd*): Ditto.
11034         (sh64-*-elf*): Remove.
11035         (sh*): Remove.
11036         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11037         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11038         * sh-tdep.c: No longer include "sh64-tdep.h".
11039         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11040         * sh64-tdep.c, sh64-tdep.h: Remove files.
11041
11042 2018-04-16  Pedro Alves  <palves@redhat.com>
11043
11044         * MAINTAINERS: Remove m88k.
11045         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11046         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11047         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11048         * NEWS: Mention that support for m88k was removed.
11049         * configure.host (m88*-*-*): Remove support.
11050         * configure.nat (m88k-*-*): Remove support.
11051         * configure.tgt (m88*-*-openbsd*): Remove.
11052         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11053
11054 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11055
11056         * configure.tgt (x86_tobjs): New variable.
11057         (amd64_tobjs, i386_tobjs): Use it.
11058
11059 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11060
11061         * symtab.c (print_symbol_info): Precede the symbol definition by
11062         the line number when available.
11063         * NEWS: Advertise this enhancement.
11064
11065 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11066
11067         * NEWS (New options): announce set/show record btrace cpu.
11068         * btrace.c: Include record-btrace.h.
11069         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11070         the vendor is unknown.
11071         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11072         Maybe overwrite the btrace configuration's cpu.
11073         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11074         (btrace_fetch): Add cpu parameter.  Update callers.
11075         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11076         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11077         errata workarounds if the vendor is unknown.
11078         * python/py-record-btrace.c: Include record-btrace.h.
11079         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11080         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11081         * record-btrace.c (record_btrace_cpu_state_kind): New.
11082         (record_btrace_cpu): New.
11083         (set_record_btrace_cpu_cmdlist): New.
11084         (record_btrace_get_cpu): New.
11085         (require_btrace_thread, record_btrace_info)
11086         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11087         (cmd_set_record_btrace_cpu_none): New.
11088         (cmd_set_record_btrace_cpu_auto): New.
11089         (cmd_set_record_btrace_cpu): New.
11090         (cmd_show_record_btrace_cpu): New.
11091         (_initialize_record_btrace): Initialize set/show record btrace cpu
11092         commands.
11093         * record-btrace.h (record_btrace_get_cpu): New.
11094
11095 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11096
11097         * record.c (set_record_command): Fix typo in message.
11098
11099 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11100
11101         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11102
11103 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11104
11105         * infrun.c (process_event_stop_test): Call
11106         gdbarch_in_indirect_branch_thunk.
11107         * gdbarch.sh (in_indirect_branch_thunk): New.
11108         * gdbarch.c: Regenerated.
11109         * gdbarch.h: Regenerated.
11110         * x86-tdep.h: New.
11111         * x86-tdep.c: New.
11112         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11113         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11114         (ALLDEPFILES): Add x86-tdep.c.
11115         * arch-utils.h (default_in_indirect_branch_thunk): New.
11116         * arch-utils.c (default_in_indirect_branch_thunk): New.
11117         * i386-tdep: Include x86-tdep.h.
11118         (i386_in_indirect_branch_thunk): New.
11119         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11120         function.
11121         * amd64-tdep: Include x86-tdep.h.
11122         (amd64_in_indirect_branch_thunk): New.
11123         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11124
11125 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11126
11127         PR gdb/23053
11128         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11129         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11130         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11131         regression.
11132
11133 2018-04-12  Tom Tromey  <tom@tromey.com>
11134
11135         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11136         (rust_evaluate_subexp): Likewise.
11137
11138 2018-04-12  Pedro Alves  <palves@redhat.com>
11139
11140         * procfs.c (procfs_detach): Make forward declaration's prototype
11141         match definition's protototype.
11142         (proc_get_LDT_entry): Remove stale do_cleanups call.
11143
11144 2018-04-12  Pedro Alves  <palves@redhat.com>
11145
11146         * target.h (target_ops::to_has_exited): Delete.
11147         (target_has_exited): Delete.
11148         * target-delegates.c: Regenerate.
11149
11150 2018-04-11  Pedro Alves  <palves@redhat.com>
11151
11152         * target.c (fileio_fh_t::t): Add comment.
11153         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11154         (target_fileio_close): Handle a NULL target.
11155         (invalidate_fileio_fh): New.
11156         (target_close): Call it.
11157         * remote.c (remote_hostio_send_command): No longer check whether
11158         remote_desc is open.
11159
11160 2018-04-11  Pedro Alves  <palves@redhat.com>
11161
11162         * target.c (fileio_fh_t): Make it a named struct instead of a
11163         typedef.
11164         (fileio_fh_t::is_closed): New method.
11165         (DEF_VEC_O (fileio_fh_t)): Remove.
11166         (fileio_fhandles): Now a std::vector.
11167         (is_closed_fileio_fh): Delete.
11168         (acquire_fileio_fd): Adjust.  Rename parameters.
11169         (release_fileio_fd): Adjust.
11170         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11171         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11172         (target_fileio_close): Adjust.
11173
11174 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11175
11176         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11177         index.
11178
11179 2018-04-10  Pedro Alves  <palves@redhat.com>
11180
11181         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11182         (scoped_finish_thread_state): New class.
11183         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11184         cleanup.
11185         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11186         (fetch_inferior_event, normal_stop): Likewise.
11187         * thread.c (finish_thread_state_cleanup): Delete.
11188
11189 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11190             Pedro Alves  <palves@redhat.com>
11191
11192         * value.c: Include "selftest.h" and "common/array-view.h".
11193         (struct range) <operator ==>: New.
11194         (test_ranges_contain): New.
11195         (check_ranges_vector): New.
11196         (test_insert_into_bit_range_vector): New.
11197         (_initialize_values): Register selftests.
11198         * common/array-view.h (operator==, operator!=): New.
11199
11200 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11201
11202         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11203         an iterator.
11204         * inline-frame.c: Include <algorithm>.
11205         (struct inline_state): Add constructor.
11206         (inline_state_s): Remove.
11207         (DEF_VEC_O(inline_state_s)): Remove.
11208         (inline_states): Change type to std::vector.
11209         (find_inline_frame_state): Adjust to std::vector.
11210         (allocate_inline_frame_state): Remove.
11211         (clear_inline_frame_state): Adjust to std::vector.
11212         (skip_inline_frames): Adjust to std::vector.
11213
11214 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11215
11216         * tracepoint.h (struct trace_state_variable): Add constructor.
11217         <name>: Change type to std::string.
11218         * tracepoint.c (tsv_s): Remove.
11219         (DEF_VEC_O(tsv_s)): Remove.
11220         (tvariables): Change to std::vector.
11221         (create_trace_state_variable): Adjust to std::vector.
11222         (find_trace_state_variable): Likewise.
11223         (find_trace_state_variable_by_number): Likewise.
11224         (delete_trace_state_variable): Likewise.
11225         (trace_variable_command): Adjust to std::string.
11226         (delete_trace_variable_command): Likewise.
11227         (tvariables_info_1): Adjust to std::vector.
11228         (save_trace_state_variables): Likewise.
11229         (start_tracing): Likewise.
11230         (merge_uploaded_trace_state_variables): Adjust to std::vector
11231         and std::string.
11232         * target.h (struct target_ops)
11233         <to_download_trace_state_variable>: Pass reference to
11234         trace_state_variable.
11235         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11236         * target-delegates.c: Re-generate.
11237         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11238         (mi_tsv_deleted): Likewise.
11239         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11240         * remote.c (remote_download_trace_state_variable): Change
11241         pointer to reference and adjust.
11242         * make-target-delegates (parse_argtypes): Handle references.
11243         (write_function_header): Likewise.
11244         (munge_type): Likewise.
11245
11246 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11247
11248         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11249         string_view-selftests.c.
11250         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11251         testsuite.
11252         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11253         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11254         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11255         * unittests/basic_string_view/element_access/char/1.cc:
11256         Likewise.
11257         * unittests/basic_string_view/element_access/char/empty.cc:
11258         Likewise.
11259         * unittests/basic_string_view/element_access/char/front_back.cc:
11260         Likewise.
11261         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11262         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11263         Likewise.
11264         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11265         Likewise.
11266         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11267         Likewise.
11268         * unittests/basic_string_view/operations/compare/char/1.cc:
11269         Likewise.
11270         * unittests/basic_string_view/operations/compare/char/13650.cc:
11271         Likewise.
11272         * unittests/basic_string_view/operations/copy/char/1.cc:
11273         Likewise.
11274         * unittests/basic_string_view/operations/data/char/1.cc:
11275         Likewise.
11276         * unittests/basic_string_view/operations/find/char/1.cc:
11277         Likewise.
11278         * unittests/basic_string_view/operations/find/char/2.cc:
11279         Likewise.
11280         * unittests/basic_string_view/operations/find/char/3.cc:
11281         Likewise.
11282         * unittests/basic_string_view/operations/find/char/4.cc:
11283         Likewise.
11284         * unittests/basic_string_view/operations/rfind/char/1.cc:
11285         Likewise.
11286         * unittests/basic_string_view/operations/rfind/char/2.cc:
11287         Likewise.
11288         * unittests/basic_string_view/operations/rfind/char/3.cc:
11289         Likewise.
11290         * unittests/basic_string_view/operations/substr/char/1.cc:
11291         Likewise.
11292         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11293         * unittests/string_view-selftests.c: New file.
11294
11295 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11296
11297         * unittests/basic_string_view/capacity/1.cc: New file.
11298         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11299         * unittests/basic_string_view/cons/char/1.cc: New file.
11300         * unittests/basic_string_view/cons/char/2.cc: New file.
11301         * unittests/basic_string_view/cons/char/3.cc: New file.
11302         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11303         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11304         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11305         * unittests/basic_string_view/element_access/char/1.cc: New file.
11306         * unittests/basic_string_view/element_access/char/2.cc: New file.
11307         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11308         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11309         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11310         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11311         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11312         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11313         * unittests/basic_string_view/include.cc: New file.
11314         * unittests/basic_string_view/inserters/char/1.cc: New file.
11315         * unittests/basic_string_view/inserters/char/2.cc: New file.
11316         * unittests/basic_string_view/inserters/char/3.cc: New file.
11317         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11318         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11319         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11320         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11321         * unittests/basic_string_view/literals/types.cc: New file.
11322         * unittests/basic_string_view/literals/values.cc: New file.
11323         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11324         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11325         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11326         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11327         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11328         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11329         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11330         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11331         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11332         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11333         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11334         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11335         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11336         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11337         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11338         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11339         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11340         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11341         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11342         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11343         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11344         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11345         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11346         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11347         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11348         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11349         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11350         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11351         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11352         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11353         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11354         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11355         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11356         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11357         * unittests/basic_string_view/operators/char/2.cc: New file.
11358         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11359         * unittests/basic_string_view/range_access/char/1.cc: New file.
11360         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11361         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11362         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11363         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11364         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11365         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11366         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11367         * unittests/basic_string_view/typedefs.cc: New file.
11368         * unittests/basic_string_view/types/1.cc: New file.
11369
11370 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11371
11372         * common/gdb_string_view.h: Remove libstdc++ implementation
11373         details, adjust to gdb reality.
11374         * common/gdb_string_view.tcc: Likewise.
11375         * cli/cli-script.c (struct string_view): Remove.
11376         (user_args) <m_args>: Change element type to gdb::string_view.
11377         (user_args::insert_args): Adjust.
11378
11379 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11380
11381         * common/gdb_string_view.h: New file.
11382         * common/gdb_string_view.tcc: New file.
11383
11384 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11385
11386         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11387         * configure: Re-generate.
11388
11389 2018-04-09  Pedro Alves  <palves@redhat.com>
11390
11391         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11392         (set_target_gdbarch): Call
11393         gdb::observers::architecture_changed.notify instead of
11394         observer_notify_architecture_changed.
11395
11396 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11397
11398         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11399         (do_restore_current_traceframe_cleanup): Remove.
11400         (restore_current_traceframe_cleanup_dtor): Remove.
11401         (make_cleanup_restore_current_traceframe): Remove.
11402         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11403         New.
11404         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11405         * infrun.c (fetch_inferior_event): Use
11406         scoped_restore_current_traceframe.
11407
11408 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11409
11410         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11411         Remove.
11412         <n_allocated_type_units>: Remove.
11413         <all_type_units>: Change to std::vector.
11414         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11415         to std::vector change.
11416         (dwarf2_per_objfile::get_cutu): Likewise.
11417         (dwarf2_per_objfile::get_tu): Likewise.
11418         (create_signatured_type_table_from_index): Likewise.
11419         (create_signatured_type_table_from_debug_names): Likewise.
11420         (dw2_symtab_iter_next): Likewise.
11421         (dw2_print_stats): Likewise.
11422         (dw2_expand_all_symtabs): Likewise.
11423         (dw2_expand_marked_cus): Likewise.
11424         (dw2_debug_names_iterator::next): Likewise.
11425         (dwarf2_initialize_objfile): Likewise.
11426         (add_signatured_type_cu_to_table): Likewise.
11427         (create_all_type_units): Likewise.
11428         (add_type_unit): Likewise.
11429         (struct tu_abbrev_offset): Add constructor.
11430         (build_type_psymtabs_1): Adjust to std::vector change.
11431         (print_tu_stats): Likewise.
11432         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11433         (write_debug_names): Likewise.
11434
11435 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11436
11437         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11438         Make an std::vector.
11439         <n_comp_units>: Remove.
11440         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11441         to std::vector change.
11442         (dwarf2_per_objfile::get_cutu): Likewise.
11443         (dwarf2_per_objfile::get_cu): Likewise.
11444         (create_cus_from_index): Likewise.
11445         (create_addrmap_from_index): Likewise.
11446         (create_addrmap_from_aranges): Likewise.
11447         (dwarf2_read_index): Likewise.
11448         (dw2_find_last_source_symtab): Likewise.
11449         (dw2_map_symtabs_matching_filename): Likewise.
11450         (dw2_symtab_iter_next): Likewise.
11451         (dw2_print_stats): Likewise.
11452         (dw2_expand_all_symtabs): Likewise.
11453         (dw2_expand_symtabs_with_fullname): Likewise.
11454         (dw2_expand_marked_cus): Likewise.
11455         (dw2_map_symbol_filenames): Likewise.
11456         (create_cus_from_debug_names): Likewise.
11457         (dwarf2_read_debug_names): Likewise.
11458         (dw2_debug_names_iterator::next): Likewise.
11459         (dwarf2_initialize_objfile): Likewise.
11460         (set_partial_user): Likewise.
11461         (dwarf2_build_psymtabs_hard): Likewise.
11462         (read_comp_units_from_section): Remove arguments, adjust to
11463         std::vector change.
11464         (create_all_comp_units): Adjust to std::vector and
11465         read_comp_units_from_section changes.
11466         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11467         change.
11468         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11469         (psyms_seen_size): Likewise.
11470         (write_gdbindex): Likewise.
11471         (write_debug_names): Likewise.
11472
11473 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11474
11475         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11476         with dwarf2_per_objfile.
11477         (create_cus_from_index): Likewise.
11478         (create_signatured_type_table_from_index): Likewise.
11479         (dwarf2_read_index): Likewise.
11480         (dwarf2_initialize_objfile): Likewise.
11481         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11482         per_cu rather than get_dwarf2_per_objfile.
11483
11484 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11485
11486         * dwarf2read.h (struct signatured_type): Forward declare.
11487         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11488         New methods.
11489         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11490         (dw2_get_cutu): ...this.
11491         (dwarf2_per_objfile::get_cu): Rename from...
11492         (dw2_get_cu): ...this.
11493         (dwarf2_per_objfile::get_tu): New.
11494         (create_addrmap_from_index): Adjust.
11495         (create_addrmap_from_aranges): Adjust.
11496         (dw2_find_last_source_symtab): Adjust.
11497         (dw2_map_symtabs_matching_filename): Adjust.
11498         (dw2_symtab_iter_next): Adjust.
11499         (dw2_print_stats): Adjust.
11500         (dw2_expand_all_symtabs): Adjust.
11501         (dw2_expand_symtabs_with_fullname): Adjust.
11502         (dw2_expand_marked_cus): Adjust.
11503         (dw_expand_symtabs_matching_file_matcher): Adjust.
11504         (dw2_map_symbol_filenames): Adjust.
11505         (dw2_debug_names_iterator::next): Adjust.
11506         (dwarf2_initialize_objfile): Adjust.
11507         (set_partial_user): Adjust.
11508         (dwarf2_build_psymtabs_hard): Adjust.
11509
11510 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11511
11512         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11513         Remove unused variables.
11514         (dw2_map_symtabs_matching_filename): Likewise.
11515         (dwarf2_record_block_ranges): Likewise.
11516         (dwarf2_read_addr_index): Likewise.
11517         (follow_die_offset): Likewise.
11518
11519 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11520
11521         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11522         to symbol_file_add_main.
11523
11524 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11525
11526         PR mi/22299
11527         * mi/mi-console.c (do_fputc_async_safe): New.
11528         (mi_console_file::write_async_safe): New.
11529         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11530         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11531         New.
11532         * ui-file.c (ui_file::putstrn): Adjust call to
11533         fputstrn_unfiltered.
11534         * utils.c (printchar): Replace do_fputs and do_fprintf
11535         parameters by do_fputc.
11536         (fputstr_filtered): Adjust call to printchar.
11537         (fputstr_unfiltered): Likewise.
11538         (fputstrn_filtered): Likewise.
11539         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11540         printchar.
11541         * utils.h (do_fputc_ftype): New typedef.
11542         (fputstrn_unfiltered): Add do_fputc parameter.
11543
11544 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11545
11546         * regformats/i386/i386-avx.dat: Remove.
11547
11548 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11549
11550         PR gdb/22979
11551         * amd64-tdep.c (amd64_none_init_abi): New function.
11552         (amd64_x32_none_init_abi): New function.
11553         (_initialize_amd64_tdep): Register handlers for x86-64 and
11554         x64_32 with GDB_OSABI_NONE.
11555         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11556         GDB_OSABI_NONE osabi.
11557
11558 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11559
11560         PR gdb/22980
11561         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11562         GDB_OSABI_NONE.
11563         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11564         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11565
11566 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11567
11568         * common/byte-vector.h (char_vector): New type.
11569         * target.h (target_read_alloc): Return
11570         gdb::optional<byte_vector>.
11571         (target_read_stralloc): Return gdb::optional<char_vector>.
11572         (target_get_osdata): Return gdb::optional<char_vector>.
11573         * target.c (target_read_alloc_1): Templatize.  Replacement
11574         manual memory management with vector.
11575         (target_read_alloc): Change return type, adjust.
11576         (target_read_stralloc): Change return type, adjust.
11577         (target_get_osdata): Change return type, adjust.
11578         * auxv.c (struct auxv_info) <length>: Remove.
11579         <data>: Change type to gdb::optional<byte_vector>.
11580         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11581         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11582         (target_auxv_search): Adjust.
11583         (fprint_target_auxv): Adjust.
11584         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11585         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11586         (linux_make_corefile_notes): Adjust.
11587         * osdata.c (get_osdata): Adjust.
11588         * remote.c (remote_get_threads_with_qxfer): Adjust.
11589         (remote_memory_map): Adjust.
11590         (remote_traceframe_info): Adjust.
11591         (btrace_read_config): Adjust.
11592         (remote_read_btrace): Adjust.
11593         (remote_pid_to_exec_file): Adjust.
11594         * solib-aix.c (solib_aix_get_library_list): Adjust.
11595         * solib-dsbt.c (decode_loadmap): Don't free buf.
11596         (dsbt_get_initial_loadmaps): Adjust.
11597         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11598         * solib-target.c (solib_target_current_sos): Adjust.
11599         * tracepoint.c (sdata_make_value): Adjust.
11600         * xml-support.c (xinclude_start_include): Adjust.
11601         (xml_fetch_content_from_file): Adjust.
11602         * xml-support.h (xml_fetch_another): Change return type.
11603         (xml_fetch_content_from_file): Change return type.
11604         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11605         * xml-tdesc.c (file_read_description_xml): Adjust.
11606         (fetch_available_features_from_target): Change return type.
11607         (target_fetch_description_xml): Adjust.
11608         (target_read_description_xml): Adjust.
11609
11610 2018-04-06  Tom Tromey  <tom@tromey.com>
11611
11612         * value.c (~value): Update.
11613         (struct value) <contents>: Now unique_xmalloc_ptr.
11614         (value_contents_bits_eq, allocate_value_contents)
11615         (value_contents_raw, value_contents_all_raw)
11616         (value_contents_for_printing, value_contents_for_printing_const)
11617         (set_value_enclosing_type): Update.
11618
11619 2018-04-06  Tom Tromey  <tom@tromey.com>
11620
11621         * value.c (range_s): Remove typedef, VEC.
11622         (struct range): Add operator<.
11623         (range_lessthan): Remove.
11624         (ranges_contain): Change type.
11625         (~value): Update.
11626         (struct value) <unavailable, optimized_out>: Now std::vector.
11627         (value_entirely_available)
11628         (value_entirely_covered_by_range_vector)
11629         (value_entirely_unavailable, value_entirely_optimized_out):
11630         Update.
11631         (insert_into_bit_range_vector): Change argument type.
11632         (find_first_range_overlap): Likewise.
11633         (struct ranges_and_idx, value_contents_bits_eq)
11634         (require_not_optimized_out, require_available): Update.
11635         (ranges_copy_adjusted): Change argument types.
11636         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11637
11638 2018-04-06  Tom Tromey  <tom@tromey.com>
11639
11640         * value.c (~value): Update.
11641         (struct value) <parent>: Now a value_ref_ptr.
11642         (value_parent, set_value_parent, value_address, value_copy):
11643         Update.
11644
11645 2018-04-06  Tom Tromey  <tom@tromey.com>
11646
11647         * value.c (struct value): Add constructor, destructor, and member
11648         initializers.
11649         (allocate_value_lazy, value_decref): Update.
11650
11651 2018-04-06  Tom Tromey  <tom@tromey.com>
11652
11653         * value.c (struct value) <released, next>: Remove.
11654         (all_values): Now a std::vector.
11655         (allocate_value_lazy): Update.
11656         (value_next): Remove.
11657         (value_mark, value_free_to_mark, release_value)
11658         (value_release_to_mark): Update.
11659
11660 2018-04-06  Tom Tromey  <tom@tromey.com>
11661
11662         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11663         (free_value_chain): Remove.
11664         * value.c (free_value_chain): Remove.
11665         (value_release_to_mark): Return a std::vector.
11666         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11667         std::vector.
11668         (check_condition): Update.
11669         * eval.c (fetch_subexp_value): Change "val_chain" to a
11670         std::vector.
11671         * breakpoint.c (update_watchpoint): Update.
11672         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11673
11674 2018-04-06  Tom Tromey  <tom@tromey.com>
11675
11676         * value.h (free_all_values): Remove.
11677         * value.c (free_all_values): Remove.
11678
11679 2018-04-06  Tom Tromey  <tom@tromey.com>
11680
11681         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11682         (value_history_chain, value_history_count): Remove.
11683         (value_history): New global.
11684         (record_latest_value, access_value_history, show_values)
11685         (preserve_values): Update.
11686
11687 2018-04-06  Tom Tromey  <tom@tromey.com>
11688
11689         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11690         * varobj.c (varobj_set_display_format, varobj_set_value)
11691         (install_default_visualizer, construct_visualizer)
11692         (install_new_value, ~varobj, varobj_get_value_type)
11693         (my_value_of_variable, varobj_editable_p): Update.
11694         * c-varobj.c (c_describe_child, c_value_of_variable)
11695         (cplus_number_of_children, cplus_describe_child): Update.
11696         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11697         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11698         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11699
11700 2018-04-06  Tom Tromey  <tom@tromey.com>
11701
11702         * printcmd.c (last_examine_address): Change type to
11703         value_ref_ptr.
11704         (do_examine, x_command): Update.
11705
11706 2018-04-06  Tom Tromey  <tom@tromey.com>
11707
11708         * value.c (release_value): Update.
11709         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11710         (struct bpstats) <val>: Now a value_ref_ptr.
11711         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11712         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11713         (~watchpoint, print_it_watchpoint, watch_command_1)
11714         (invalidate_bp_value_on_memory_change): Update.
11715
11716 2018-04-06  Tom Tromey  <tom@tromey.com>
11717
11718         * varobj.c (varobj_clear_saved_item)
11719         (update_dynamic_varobj_children, install_new_value, ~varobj):
11720         Update.
11721         * value.h (value_incref): Move declaration earlier.
11722         (value_decref): Rename from value_free.
11723         (struct value_ref_policy): New.
11724         (value_ref_ptr): New typedef.
11725         (struct value_deleter): Remove.
11726         (gdb_value_up): Remove typedef.
11727         (release_value): Change return type.
11728         (release_value_or_incref): Remove.
11729         * value.c (set_value_parent): Update.
11730         (value_incref): Change return type.
11731         (value_decref): Rename from value_free.
11732         (value_free_to_mark, free_all_values, free_value_chain): Update.
11733         (release_value): Return value_ref_ptr.
11734         (release_value_or_incref): Remove.
11735         (record_latest_value, set_internalvar, clear_internalvar):
11736         Update.
11737         * stack.c (info_frame_command): Don't call value_free.
11738         * python/py-value.c (valpy_dealloc, valpy_new)
11739         (value_to_value_object): Update.
11740         * printcmd.c (do_examine): Update.
11741         * opencl-lang.c (lval_func_free_closure): Update.
11742         * mi/mi-main.c (register_changed_p): Don't call value_free.
11743         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11744         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11745         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11746         value_free.
11747         * guile/scm-value.c (vlscm_free_value_smob)
11748         (vlscm_scm_from_value): Update.
11749         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11750         (frame_unwind_register_unsigned, get_frame_register_bytes)
11751         (put_frame_register_bytes): Don't call value_free.
11752         * findvar.c (address_from_register): Don't call value_free.
11753         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11754         * dwarf2loc.c (entry_data_value_free_closure)
11755         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11756         (dwarf2_evaluate_loc_desc_full): Update.
11757         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11758         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11759         (~watchpoint, watch_command_1)
11760         (invalidate_bp_value_on_memory_change): Update.
11761         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11762
11763 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11764
11765         PR gdb/23022
11766         * warning.m4: Add -Wno-error=deprecated-register.
11767         * configure: Re-generate.
11768
11769 2018-04-05  Tom Tromey  <tom@tromey.com>
11770
11771         * linespec.h: Remove include of "vec.h".
11772
11773 2018-04-05  Tom Tromey  <tom@tromey.com>
11774
11775         * linespec.c (typep): Remove typedef.
11776         (find_methods, find_superclass_methods): Take a std::vector.
11777         (find_method): Use std::vector.
11778
11779 2018-04-05  Tom Tromey  <tom@tromey.com>
11780
11781         * utils.c (compare_strings): Remove.
11782         * utils.h (compare_strings): Remove.
11783         * objc-lang.h (find_imps): Update.
11784         * objc-lang.c (find_methods): Take a std::vector.
11785         (uniquify_strings, find_imps): Likewise.
11786         * linespec.c (find_methods): Take a std::vector.
11787         (decode_objc): Use std::vector.
11788         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11789         a std::vector.
11790         (find_method, find_function_symbols): Use std::vector.
11791
11792 2018-04-05  Tom Tromey  <tom@tromey.com>
11793
11794         * completer.c (completion_tracker::completion_tracker): Remove
11795         cast.
11796         (completion_tracker::discard_completions): Likewise.
11797         * breakpoint.c (ambiguous_names_p): Remove cast.
11798         * ada-lang.c (_initialize_ada_language): Remove cast.
11799         * utils.h (streq): Update.
11800         (streq_hash): Add new declaration.
11801         * utils.c (streq): Return bool.
11802         (streq_hash): New function.
11803
11804 2018-04-05  Tom Tromey  <tom@tromey.com>
11805
11806         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11807         Remove a string copy.
11808
11809 2018-04-05  Tom Tromey  <tom@tromey.com>
11810
11811         * linespec.c (filter_results): Use std::vector.
11812         (decode_line_2, decode_line_full): Update.
11813
11814 2018-04-05  Tom Tromey  <tom@tromey.com>
11815
11816         * linespec.c (canonical_to_fullform): Return std::string.
11817         (filter_results): Update.
11818         (struct decode_line_2_item): Add constructor.
11819         <fullform, displayform>: Now std::string.
11820         (decode_line_2_compare_items): Now a std::sort comparator.
11821         (decode_line_2): Update.
11822
11823 2018-04-05  Tom Tromey  <tom@tromey.com>
11824
11825         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11826         (unexpected_linespec_error): Update.
11827         (linespec_parse_basic, parse_linespec): Update.
11828
11829 2018-04-05  Tom Tromey  <tom@tromey.com>
11830
11831         * linespec.c (linespec_parse_basic): Reindent.
11832
11833 2018-04-05  Tom Tromey  <tom@tromey.com>
11834
11835         * minsyms.h (iterate_over_minimal_symbols): Update.
11836         * minsyms.c (iterate_over_minimal_symbols): Take a
11837         gdb::function_view.
11838         * linespec.c (struct collect_minsyms): Remove.
11839         (compare_msyms): Now a std::sort comparator.
11840         (add_minsym): Add parameters.
11841         (search_minsyms_for_name): Update.  Use std::vector.
11842
11843 2018-04-03  Tom Tromey  <tom@tromey.com>
11844
11845         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11846         gdb::byte_vector.
11847
11848 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11849
11850         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11851
11852 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11853
11854         PR gdb/16959
11855         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11856         printing static type.
11857
11858 2018-04-01  Tom Tromey  <tom@tromey.com>
11859
11860         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11861         (rs6000_xfer_shared_libraries): Update.
11862
11863 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11864
11865         * common/gdb_vecs.h (char_ptr): Remove.
11866         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11867
11868 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11869
11870         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11871         with std::vector.
11872         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11873
11874 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11875
11876         * tracepoint.h (struct uploaded_tp): Initialize fields.
11877         <actions, step_actions, cmd_strings>: Change type to
11878         std::vector<char *>.
11879         * tracepoint.c (get_uploaded_tp): Allocate with new.
11880         (free_uploaded_tps): Free with delete.
11881         (parse_tracepoint_definition): Adjust to std::vector change.
11882         * breakpoint.c (read_uploaded_action): Likewise.
11883         (create_tracepoint_from_upload): Likewise.
11884         * ctf.c (ctf_write_uploaded_tp): Likewise.
11885         (SET_ARRAY_FIELD): Likewise.
11886         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11887
11888 2018-03-30  Tom Tromey  <tom@tromey.com>
11889
11890         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11891         std::unique_ptr.
11892         (svr4_keep_data_in_core): Update.
11893         (svr4_read_so_list): Update.
11894
11895 2018-03-30  Tom Tromey  <tom@tromey.com>
11896
11897         * windows-nat.c (handle_output_debug_string, handle_exception):
11898         Update.
11899         * target.h (target_read_string): Update.
11900         * target.c (target_read_string): Change "string" to
11901         unique_xmalloc_ptr.
11902         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11903         Update.
11904         * solib-frv.c (frv_current_sos): Update.
11905         * solib-dsbt.c (dsbt_current_sos): Update.
11906         * solib-darwin.c (darwin_current_sos): Update.
11907         * linux-thread-db.c (inferior_has_bug): Update.
11908         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11909         Update.  Remove alloca.
11910         * ada-lang.c (ada_main_name): Update.
11911
11912 2018-03-30  Tom Tromey  <tom@tromey.com>
11913
11914         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11915         (struct dwo_file_deleter): New.
11916         (dwo_file_up): New typedef.
11917         (open_and_init_dwo_file): Use dwo_file_up.
11918         (free_dwo_file_cleanup): Remove.
11919
11920 2018-03-30  Tom Tromey  <tom@tromey.com>
11921
11922         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11923         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11924
11925 2018-03-30  Tom Tromey  <tom@tromey.com>
11926
11927         * dwarf2read.c (class free_cached_comp_units): New class.
11928         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11929         (free_cached_comp_units): Remove function.
11930
11931 2018-03-30  Tom Tromey  <tom@tromey.com>
11932
11933         * utils.h (make_cleanup_unpush_target): Remove.
11934         * inf-ptrace.c (struct target_unpusher): New.
11935         (target_unpush_up) New typedef.
11936         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11937         target_unpush_up.
11938         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11939
11940 2018-03-27  Tom Tromey  <tom@tromey.com>
11941
11942         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11943
11944 2018-03-27  Pedro Alves  <palves@redhat.com>
11945             Tom Tromey  <tom@tromey.com>
11946
11947         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11948         destructor.  Now a class.
11949         (gdb_readline_wrapper_cleanup): Remove function.
11950         (gdb_readline_wrapper): Remove cleanups.
11951
11952 2018-03-27  Tom Tromey  <tom@tromey.com>
11953
11954         * typeprint.h (struct type_print_options) <local_typedefs,
11955         global_typedefs>: Remove "struct" keyword.
11956         (class typedef_hash_table): New class.
11957         (recursively_update_typedef_hash, add_template_parameters)
11958         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11959         (find_typedef_in_hash): Don't declare.
11960         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11961         (typedef_hash_table::recursively_update): Rename from
11962         recursively_update_typedef_hash.  Now a member.
11963         (typedef_hash_table::add_template_parameters): Rename from
11964         add_template_parameters.  Now a member.
11965         (typedef_hash_table::typedef_hash_table): Now a constructor;
11966         rename from create_typedef_hash.
11967         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11968         rename from free_typedef_hash.
11969         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11970         (do_free_global_table): Remove.
11971         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11972         from copy_type_recursive.
11973         (create_global_typedef_table): Remove.
11974         (typedef_hash_table::find_global_typedef): Now a member of
11975         typedef_hash_table.
11976         (typedef_hash_table::find_typedef): Rename from
11977         find_typedef_in_hash; now a member.
11978         (whatis_exp): Update.
11979         * extension.h (struct ext_lang_type_printers): Add constructor and
11980         destructor.
11981         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11982         declare.
11983         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11984         Now a constructor; rename from start_ext_lang_type_printers.
11985         (ext_lang_type_printers): Now a destructor; rename from
11986         free_ext_lang_type_printers.
11987         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11988         Update.
11989         (c_type_print_base_struct_union): Update.  Remove cleanups.
11990
11991 2018-03-27  Tom Tromey  <tom@tromey.com>
11992
11993         * dwarf-index-write.c: Include <cmath>.
11994
11995 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
11996
11997         * NEWS: Add entry describing new "set|show varsize-limit" command.
11998         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
11999         command.
12000         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12001         "set variable".
12002
12003 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12004
12005         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12006         dwarf-index-write.c
12007         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12008         * dwarf-index-common.c: New file.
12009         * dwarf-index-common.h: New file.
12010         * dwarf-index-write.c: New file.
12011         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12012         (struct dwarf2_section_info): Move from here.
12013         (dwarf2_section_info_def): Likewise.
12014         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12015         (offset_type): Likewise.
12016         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12017         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12018         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12019         (byte_swap): Likewise.
12020         (MAYBE_SWAP): Likewise.
12021         (dwarf2_per_cu_ptr): Likewise.
12022         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12023         (struct tu_stats): Likewise.
12024         (struct dwarf2_per_objfile): Likewise.
12025         (struct dwarf2_per_cu_data): Likewise.
12026         (struct signatured_type): Likewise.
12027         (sig_type_ptr): Likewise.
12028         (DEF_VEC_P (sig_type_ptr)): Likewise.
12029         (INDEX4_SUFFIX): Likewise.
12030         (INDEX5_SUFFIX): Likewise.
12031         (DEBUG_STR_SUFFIX): Likewise.
12032         (dwarf2_read_section): Make non-static.
12033         (mapped_index_string_hash): Move from here.
12034         (dwarf5_djb_hash): Likewise.
12035         (file_write): Likewise.
12036         (class data_buf): Likewise.
12037         (struct symtab_index_entry): Likewise.
12038         (struct mapped_symtab): Likewise.
12039         (find_slot): Likewise.
12040         (hash_expand): Likewise.
12041         (add_index_entry): Likewise.
12042         (uniquify_cu_indices): Likewise.
12043         (class c_str_view): Likewise.
12044         (class c_str_view_hasher): Likewise.
12045         (class vector_hasher): Likewise.
12046         (write_hash_table): Likewise.
12047         (psym_index_map): Likewise.
12048         (struct addrmap_index_data): Likewise.
12049         (add_address_entry): Likewise.
12050         (add_address_entry_worker): Likewise.
12051         (write_address_map): Likewise.
12052         (symbol_kind): Likewise.
12053         (write_psymbols): Likewise.
12054         (struct signatured_type_index_data): Likewise.
12055         (write_one_signatured_type): Likewise.
12056         (recursively_count_psymbols): Likewise.
12057         (recursively_write_psymbols): Likewise.
12058         (class debug_names): Likewise.
12059         (check_dwarf64_offsets): Likewise.
12060         (psyms_seen_size): Likewise.
12061         (write_gdbindex): Likewise.
12062         (write_debug_names): Likewise.
12063         (assert_file_size): Likewise.
12064         (write_psymtabs_to_index): Likewise.
12065         (save_gdb_index_command): Likewise.
12066         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12067         command.
12068         * dwarf2read.h: New file.
12069
12070 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12071
12072         PR gdb/22670
12073         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12074         symbol name if the CU's language stores symbol names in linkage
12075         format.
12076         * language.h (struct language_defn)
12077         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12078         all instances of this struct.
12079
12080 2018-03-26  Tom Tromey  <tom@tromey.com>
12081
12082         * stack.c (backtrace_command_1): Remove verbose code.
12083
12084 2018-03-26  Tom Tromey  <tom@tromey.com>
12085
12086         * python/py-framefilter.c (py_print_type): Don't catch
12087         exceptions.  Return void.
12088         (py_print_value): Likewise.
12089         (py_print_single_arg): Likewise.
12090         (enumerate_args): Don't catch exceptions.
12091         (py_print_args): Likewise.
12092         (py_print_frame): Likewise.
12093         (gdbpy_apply_frame_filter): Catch exceptions here.
12094
12095 2018-03-26  Tom Tromey  <tom@tromey.com>
12096
12097         * stack.c (_initialize_stack): Remove trailing newlines from help
12098         text.  Add "Usage" line to "backtrace" help.
12099
12100 2018-03-26  Tom Tromey  <tom@tromey.com>
12101
12102         PR python/16486:
12103         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12104
12105 2018-03-26  Tom Tromey  <tom@tromey.com>
12106
12107         * python/py-framefilter.c (py_print_single_arg): Return
12108         EXT_LANG_BT_ERROR from catch.
12109
12110 2018-03-26  Tom Tromey  <tom@tromey.com>
12111
12112         PR backtrace/15584:
12113         * stack.c (backtrace_command_1): Move some code into no-filters
12114         "if".
12115
12116 2018-03-26  Tom Tromey  <tom@tromey.com>
12117
12118         * python/py-framefilter.c (throw_quit_or_print_exception): New
12119         function.
12120         (gdbpy_apply_frame_filter): Use it.
12121
12122 2018-03-26  Tom Tromey  <tom@tromey.com>
12123
12124         PR cli/17716:
12125         * python/py-framefilter.c (py_print_type, py_print_value)
12126         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12127         RETURN_MASK_ERROR.
12128
12129 2018-03-26  Tom Tromey  <tom@tromey.com>
12130
12131         * python/py-framefilter.c (enumerate_args): Use
12132         gdb::unique_xmalloc_ptr.
12133
12134 2018-03-26  Tom Tromey  <tom@tromey.com>
12135
12136         * python/py-framefilter.c (py_print_frame): Return
12137         EXT_LANG_BT_OK.
12138         (gdbpy_apply_frame_filter): Update comment.
12139         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12140         Remove.
12141         <EXT_LANG_BT_NO_FILTERS>: Change value.
12142
12143 2018-03-26  Tom Tromey  <tom@tromey.com>
12144
12145         PR backtrace/15582:
12146         * stack.c (backtrace_command): Parse "hide" argument.
12147         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12148         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12149         constant.
12150
12151 2018-03-26  Tom Tromey  <tom@tromey.com>
12152
12153         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12154         add "flags".
12155         (backtrace_command): Remove "fulltrace", add "flags".
12156
12157 2018-03-26  Tom Tromey  <tom@tromey.com>
12158
12159         * stack.c (backtrace_command): Rewrite command line parsing.
12160
12161 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12162
12163         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12164
12165 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12166
12167         * filename-seen-cache.h: Add include guard.
12168
12169 2018-03-26  Keith Seitz  <keiths@redhat.com>
12170
12171         * symfile.c (place_section): Remove "struct" from section_addr_info
12172         in comment.
12173         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12174         "struct" keyword from section_addr_info.
12175
12176 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12177
12178         * regformats/regdef.h (reg): Add constructors.
12179
12180 2018-03-25  Pedro Alves  <palves@redhat.com>
12181
12182         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12183         if then/else bodies in var_func_name extraction.
12184
12185 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12186
12187         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12188         lookup_minimal_symbol() to find symbol entry.
12189         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12190
12191 2018-03-23  Keith Seitz  <keiths@redhat.com>
12192
12193         PR c++/22968
12194         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12195         nested type definitions for C++, too.
12196
12197 2018-03-23  Tom Tromey  <tom@tromey.com>
12198
12199         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12200         a typedef.
12201         (macho_register_oso): Remove.
12202         (macho_symtab_read): Take a std::vector.
12203         (oso_el_compare_name): Now a std::sort comparator.
12204         (macho_symfile_read_all_oso): Take a std::vector.
12205         (macho_symfile_read): Use std::vector.  Remove cleanups.
12206
12207 2018-03-22  Tom Tromey  <tom@tromey.com>
12208
12209         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12210         (record_full_goto_bookmark): Use std::string.
12211
12212 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12213
12214         PR tdep/18295
12215         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12216         a single mask.
12217
12218 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12219
12220         * rs6000-tdep.c (store_insn_p): New function.
12221         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12222         and cr_reg to their unshifted values. Use store_insn_p to
12223         match LR saves using either R1 or fdata->alloca_reg. Use
12224         store_insn_p to match CR saves. Set alloca_reg_offset
12225         when alloca_reg and framep are set. Remove lr_reg shift
12226         when assigning to fdata->lr_register.
12227
12228 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12229
12230         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12231         command line args instead of emitting a warning.
12232
12233 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12234
12235         * tracepoint.h (struct static_tracepoint_marker): Initialize
12236         fields, define default constructor, move constructor and move
12237         assignment, disable the rest.
12238         <str_id, extra>: Make std::string.
12239         (release_static_tracepoint_marker): Remove.
12240         (free_current_marker): Remove.
12241         * tracepoint.c (free_current_marker): Remove.
12242         (parse_static_tracepoint_marker_definition): Adjust to
12243         std::string, use new hex2str overload.
12244         (release_static_tracepoint_marker): Remove.
12245         (print_one_static_tracepoint_marker): Get marker by reference
12246         and adjust to std::string.
12247         (info_static_tracepoint_markers_command): Adjust to std::vector
12248         changes
12249         * target.h (static_tracepoint_marker_p): Remove typedef.
12250         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12251         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12252         bool.
12253         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12254         * target-debug.h
12255         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12256         (target_debug_print_std_vector_static_tracepoint_marker): New.
12257         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12258         to...
12259         (target_debug_print_static_tracepoint_marker_p): ... this.
12260         * target-delegates.c: Re-generate.
12261         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12262         Make std::string.
12263         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12264         (decode_static_tracepoint_spec): Adjust to std::vector.
12265         (tracepoint_print_one_detail): Adjust to std::string.
12266         (strace_marker_decode_location): Adjust to std::string.
12267         (update_static_tracepoint): Adjust to std::string, remove call
12268         to release_static_tracepoint_marker.
12269         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12270         Adjust to std::vector.
12271         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12272         (remote_static_tracepoint_markers_by_strid): Adjust to
12273         std::vector.
12274         * common/rsp-low.h (hex2str): New overload with explicit count
12275         of bytes.
12276         * common/rsp-low.c (hex2str): New overload with explicit count
12277         of bytes.
12278         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12279         (_initialize_rsp_low_selftests): Add test_hex2str test.
12280         * unittests/tracepoint-selftests.c
12281         (test_parse_static_tracepoint_marker_definition): Adjust to
12282         std::string.
12283
12284 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12285
12286         * tracepoint.c (parse_static_tracepoint_marker_definition):
12287         Consider case where the definition is followed by more
12288         definitions.
12289         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12290         tracepoint-selftests.c.
12291         * unittests/tracepoint-selftests.c: New.
12292
12293 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12294
12295         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12296         Carvalho.
12297
12298 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12299
12300         * symtab.c (find_pc_sect_line): fixed indentation.
12301
12302 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12303
12304         * symtab.c (find_pc_sect_line): now uses binary search.
12305
12306 2018-03-19  Tom Tromey  <tom@tromey.com>
12307
12308         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12309         "IDENT" production.
12310
12311 2018-03-19  Pedro Alves  <palves@redhat.com>
12312             Tom Tromey  <tom@tromey.com>
12313
12314         * unittests/observable-selftests.c: New file.
12315         * common/observable.h: New file.
12316         * observable.h: New file.
12317         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12318         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12319         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12320         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12321         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12322         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12323         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12324         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12325         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12326         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12327         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12328         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12329         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12330         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12331         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12332         tui/tui-interp.c, valops.c: Update all users.
12333         * tui/tui-hooks.c (tui_bp_created_observer)
12334         (tui_bp_deleted_observer, tui_bp_modified_observer)
12335         (tui_inferior_exit_observer, tui_before_prompt_observer)
12336         (tui_normal_stop_observer, tui_register_changed_observer):
12337         Remove.
12338         (tui_observers_token): New global.
12339         (attach_or_detach, tui_attach_detach_observers): New functions.
12340         (tui_install_hooks, tui_remove_hooks): Use
12341         tui_attach_detach_observers.
12342         * record-btrace.c (record_btrace_thread_observer): Remove.
12343         (record_btrace_thread_observer_token): New global.
12344         * observer.sh: Remove.
12345         * observer.c: Rename to observable.c.
12346         * observable.c (namespace gdb_observers): Define new objects.
12347         (observer_debug): Move into gdb_observers namespace.
12348         (struct observer, struct observer_list, xalloc_observer_list_node)
12349         (xfree_observer_list_node, generic_observer_attach)
12350         (generic_observer_detach, generic_observer_notify): Remove.
12351         (_initialize_observer): Update.
12352         Don't include observer.inc.
12353         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12354         (clean mostlyclean): Likewise.
12355         (observer.h, observer.inc): Remove targets.
12356         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12357         (COMMON_SFILES): Use observable.c, not observer.c.
12358         * .gitignore: Remove observer.h.
12359
12360 2018-03-18  Tom Tromey  <tom@tromey.com>
12361
12362         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12363         gdb::def_vector.
12364         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12365
12366 2018-03-17  Tom Tromey  <tom@tromey.com>
12367
12368         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12369
12370 2018-03-17  Tom Tromey  <tom@tromey.com>
12371
12372         * target.c (class scoped_target_fd): New.
12373         (target_fileio_close_cleanup): Remove.
12374         (target_fileio_read_alloc_1): Use scoped_target_fd.
12375
12376 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12377
12378         * silent-rules.mk: New.
12379         * Makefile.in: Include silent-rules.mk
12380         (srcdir, VPATH, top_srcdir): Move up.
12381         (COMPILE): Add ECHO_CXX.
12382         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12383         (init.c): Add ECHO_INIT_C.
12384         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12385         (version.c): Add ECHO_GEN.
12386         (printcmd.o): Add ECHO_CXX.
12387         (target-float.o): Add ECHO_CXX.
12388         (ada-exp.o): Add ECHO_CXX.
12389         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12390         (insight$(EXEEXT)): Add ECHO_CXXLD.
12391         * gnulib/configure.ac: Add AM_SILENT_RULES.
12392         * gnulib/aclocal.m4: Re-generate.
12393         * gnulib/configure: Re-generate.
12394         * gnulib/import/Makefile.in: Re-generate.
12395
12396 2018-03-16  Tom Tromey  <tom@tromey.com>
12397
12398         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12399         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12400         * utils.c (do_free_section_addr_info)
12401         (make_cleanup_free_section_addr_info): Remove.
12402         * symfile.h (struct other_sections): Add constructor.
12403         (struct section_addr_info): Remove.
12404         (section_addr_info): New typedef.
12405         (struct sym_fns) <sym_offsets>: Change type of parameter.
12406         (build_section_addr_info_from_objfile)
12407         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12408         (default_symfile_offsets, symbol_file_add)
12409         (symbol_file_add_from_bfd)
12410         (build_section_addr_info_from_section_table): Update.
12411         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12412         * symfile.c (alloc_section_addr_info): Remove.
12413         (build_section_addr_info_from_section_table): Change return type.
12414         Update.
12415         (build_section_addr_info_from_bfd)
12416         (build_section_addr_info_from_objfile): Likewise.
12417         (free_section_addr_info): Remove.
12418         (relative_addr_info_to_section_offsets): Change type of "addrs".
12419         (addrs_section_compar): Now a std::sort comparator.
12420         (addrs_section_sort): Change return type.
12421         (addr_info_make_relative): Change type of "addrs".  Update.
12422         (default_symfile_offsets, syms_from_objfile_1)
12423         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12424         (symbol_file_add_separate): Update.
12425         (symbol_file_add): Change type of "addrs".  Update.
12426         (add_symbol_file_command): Update.  Remove cleanups.
12427         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12428         cleanups.
12429         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12430         * solib.c (solib_read_symbols): Update.
12431         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12432         * machoread.c (macho_symfile_offsets): Update.
12433         * jit.c (jit_bfd_try_read_symtab): Update.
12434
12435 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12436
12437         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12438         unittests/utils-selftests.c.
12439         * unittests/utils-selftests.c: New file.
12440
12441 2018-03-14  Tom Tromey  <tom@tromey.com>
12442
12443         PR cli/14977:
12444         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12445         for NULL.
12446
12447 2018-03-14  Tom Tromey  <tom@tromey.com>
12448
12449         PR cli/19918:
12450         * printcmd.c (printf_pointer): Allow "-" in format.
12451
12452 2018-03-14  Tom Tromey  <tom@tromey.com>
12453
12454         * printcmd.c (_initialize_printcmd): Add usage to printf.
12455
12456 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12457
12458         * MAINTAINERS: Update my email address.
12459
12460 2018-03-13  Tom Tromey  <tom@tromey.com>
12461
12462         * machoread.c (macho_check_dsym): Change filenamep to a
12463         std::string*.
12464         (macho_symfile_read): Update.
12465         * symfile.c (load_command): Use std::string.
12466
12467 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12468
12469         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12470         to error message string.
12471         (riscv_register_name): Use xsnprintf instead of sprintf.
12472         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12473         internal_error.
12474         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12475         error.
12476         (riscv_push_dummy_call): Likewise.
12477
12478 2018-03-12  Tom Tromey  <tom@tromey.com>
12479
12480         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12481         Use gdb::byte_vector.
12482         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12483
12484 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12485
12486         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12487         parameter type to readable_regcache.
12488         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12489         the declaration.
12490
12491 2018-03-11  Tom Tromey  <tom@tromey.com>
12492
12493         * dwarf2read.c (struct nextfield): Add initializers.
12494         (struct nextfnfield): Remove.
12495         (struct fnfieldlist): Add initializers.  Remove "length" and
12496         "head", use std::vector.
12497         (struct decl_field_list): Remove.
12498         (struct field_info): Add initializers.
12499         <fields, baseclasses>: Now std::vector.
12500         <nbaseclasses, nfnfields, typedef_field_list_count,
12501         nested_types_list_count>: Remove.
12502         (dwarf2_add_field, dwarf2_add_type_defn)
12503         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12504         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12505         (process_structure_scope): Update.
12506
12507 2018-03-11  Tom Tromey  <tom@tromey.com>
12508
12509         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12510         for use by std::sort.
12511         (build_type_psymtabs_1): Use std::vector.
12512
12513 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12514
12515         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12516         and LIBMPFR in the printed configuration.
12517
12518 2018-03-08  Tom Tromey  <tom@tromey.com>
12519
12520         * source.c (get_filename_and_charpos): Use scoped_fd.
12521         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12522         (procfs_pidlist): Likewise.
12523         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12524         (iterate_over_mappings): Likewise.
12525
12526 2018-03-08  Tom Tromey  <tom@tromey.com>
12527
12528         * infcall.c (struct call_return_meta_info)
12529         <stack_temporaries_enabled>: Remove.
12530         (get_call_return_value, call_function_by_hand_dummy): Update.
12531         * thread.c (disable_thread_stack_temporaries): Remove.
12532         (enable_thread_stack_temporaries): Remove.
12533         (thread_stack_temporaries_enabled_p): Return bool.
12534         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12535         (get_last_thread_stack_temporary): Update.
12536         * eval.c (evaluate_subexp): Update.
12537         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12538         class, not a function.
12539         (value_ptr, value_vec): Remove typedefs.
12540         (class thread_info) <stack_temporaries_enabled>: Now bool.
12541         <stack_temporaries>: Now a std::vector.
12542         (thread_stack_temporaries_enabled_p)
12543         (value_in_thread_stack_temporaries): Return bool.
12544
12545 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12546
12547         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12548         (getpkt_or_notif_sane_1): Likewise.
12549
12550 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12551
12552         * build-id.c (build_id_to_debug_bfd): Use std::string.
12553
12554 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12555
12556         * build-id.c (find_separate_debug_file_by_buildid): Return
12557         std::string.
12558         * build-id.h (find_separate_debug_file_by_buildid): Return
12559         std::string.
12560         * coffread.c (coff_symfile_read): Adjust to std::string.
12561         * elfread.c (elf_symfile_read): Adjust to std::string.
12562         * symfile.c (separate_debug_file_exists): Change parameter to
12563         std::string.
12564         (find_separate_debug_file): Return std::string.
12565         (find_separate_debug_file_by_debuglink): Return std::string.
12566         * symfile.h (find_separate_debug_file_by_debuglink): Return
12567         std::string.
12568
12569 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12570
12571         * common/xml-utils.c (xml_escape_text): Move code to...
12572         (xml_escape_text_append): ... this new function.
12573         * common/xml-utils.h (xml_escape_text_append): New declaration.
12574         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12575         New function.
12576         (_initialize_xml_utils): register test_xml_escape_text_append as
12577         a selftest.
12578
12579 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12580
12581         * defs.h: Remove MAX_REGISTER_SIZE.
12582         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12583         asserts.
12584         * python/py-unwind.c (pyuw_sniffer): Likewise.
12585
12586 2018-03-07  Tom Tromey  <tom@tromey.com>
12587
12588         * linux-tdep.c (linux_info_proc): Update.
12589         * target.h (struct target_ops) <to_fileio_readlink>: Return
12590         optional<string>.
12591         (target_fileio_readlink): Return optional<string>.
12592         * remote.c (remote_hostio_readlink): Return optional<string>.
12593         * inf-child.c (inf_child_fileio_readlink): Return
12594         optional<string>.
12595         * target.c (target_fileio_readlink): Return optional<string>.
12596
12597 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12598
12599         * regcache.c (cooked_read_test): Add riscv to the list of
12600         architectures that have a save_reggroup.
12601
12602 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12603
12604         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12605         value is not a dynamic class object.
12606
12607 2018-03-06  Tom Tromey  <tom@tromey.com>
12608
12609         * rust-exp.y: Formatting fixes.
12610
12611 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12612
12613         * riscv-tdep.c (riscv_register_name): Remove target description
12614         support.
12615         (riscv_gdbarch_init): Remove target description check.
12616
12617 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12618
12619         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12620         comment.
12621         * riscv-tdep.h: Likewise.
12622
12623 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12624
12625         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12626         (riscv_pseudo_register_write): Delete.
12627         (riscv_gdbarch_init): Remove all use of pseudo registers.
12628
12629 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12630
12631         * record-btrace.c (btrace_print_lines): Replace cleanup
12632         parameter with RAII equivalents.
12633         (btrace_insn_history): Replace cleanup with RAII equivalents.
12634         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12635         make_cleanup_ui_out_tuple_begin_end): Remove.
12636         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12637         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12638         make_cleanup_ui_out_list_begin_end): Remove.
12639
12640 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12641
12642         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12643         parameter types to std::vector.  Use bool.
12644         (record_btrace_wait): Replace VEC(tp_t) with
12645         std::vector<thread_info *>.
12646         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12647
12648 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12649
12650         * record-btrace.c (record_btrace_disable_callback): Remove.
12651         (struct scoped_btrace_disable): New.
12652         (record_btrace_open): Use scoped_btrace_disable.
12653
12654 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12655
12656         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12657         reading values from registers.
12658
12659 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12660
12661         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12662         where appropriate.
12663
12664 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12665
12666         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12667         change parameter type.  Use GDB's print functions, and use
12668         core_addr_to_string where appropriate.
12669         (riscv_push_dummy_call): Use core_addr_to_string where
12670         appropriate, update call to riscv_print_arg_location, and reindent
12671         a few lines.
12672         (riscv_return_value): Update call to riscv_print_arg_location.
12673
12674 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12675             Tim Newsome <tim@sifive.com>
12676             Albert Ou <a0u@eecs.berkeley.edu>
12677             Darius Rad <darius@bluespec.com>
12678
12679         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12680         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12681         (ALLDEPFILES): Add riscv-tdep.c
12682         * configure.tgt: Add riscv support.
12683         * riscv-tdep.c: New file.
12684         * riscv-tdep.h: New file.
12685         * NEWS: Mention new target.
12686         * MAINTAINERS: Add entry for riscv.
12687
12688 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12689
12690         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12691         fields within aggregates.
12692
12693 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12694
12695         * record-btrace.c (btrace_print_lines): Change type of flags to
12696         gdb_disassembly_flags.
12697
12698 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12699
12700         * fbsd-nat.c: Include "inf-ptrace.h".
12701         (USE_SIGTRAP_SIGINFO): Conditionally define.
12702         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12703         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12704         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12705         function.
12706         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12707         Likewise.
12708         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12709         Likewise.
12710         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12711         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12712         "supports_stopped_by_hw_breakpoint" target methods.
12713
12714 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12715
12716         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12717         * fbsd-nat.c (debug_fbsd_nat): New variable.
12718         (show_fbsd_nat_debug): New function.
12719         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12720         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12721
12722 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12723
12724         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12725         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12726         prototype.
12727         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12728         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12729         method.
12730
12731 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12732
12733         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12734         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12735
12736 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12737
12738         * charset.c (struct charset_vector): New.
12739         (charsets): Change type to charset_vector.
12740         (find_charset_names): Adjust.
12741         (add_one): Adjust.
12742         (_initialize_charset): Adjust.
12743
12744 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12745
12746         * progspace.h (struct program_space) <deleted_solibs>: Change
12747         type to std::vector<std::string>.
12748         * progspace.c (clear_program_space_solib_cache): Adjust.
12749         * breakpoint.c (print_solib_event): Adjust.
12750         (check_status_catch_solib): Adjust.
12751         * solib.c (update_solib_list): Adjust.
12752         * ui-out.h (class ui_out) <field_string>: New overload.
12753         * ui-out.c (ui_out::field_string): New overload.
12754
12755 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12756
12757         * progspace.h (struct program_space): Add constructor and
12758         destructor, initialize fields.
12759         (add_program_space): Remove.
12760         * progspace.c (add_program_space): Rename to...
12761         (program_space::program_space): ... this.
12762         (release_program_space): Rename to...
12763         (program_space::~program_space): ... this.
12764         (delete_program_space): Use delete to delete program_space.
12765         (initialize_progspace): Use new to allocate program_space.
12766         * inferior.c (add_inferior_with_spaces): Likewise.
12767         (clone_inferior_command): Likewise.
12768         * infrun.c (follow_fork_inferior): Likewise.
12769         (handle_vfork_child_exec_or_exit): Likewise.
12770
12771 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12772
12773         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12774         (delim_string_to_char_ptr_vec): Return std::vector of
12775         gdb::unique_xmalloc_ptr.
12776         (dirnames_to_char_ptr_vec_append): Take std::vector of
12777         gdb::unique_xmalloc_ptr.
12778         (dirnames_to_char_ptr_vec): Return std::vector of
12779         gdb::unique_xmalloc_ptr.
12780         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12781         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12782         (delim_string_to_char_ptr_vec): Return an std::vector of
12783         gdb::unique_xmalloc_ptr, adjust the code.
12784         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12785         gdb::unique_xmalloc_ptr, adjust the code.
12786         (dirnames_to_char_ptr_vec): Return an std::vector of
12787         gdb::unique_xmalloc_ptr, adjust the code.
12788         * auto-load.c (auto_load_safe_path_vec): Change type to
12789         std::vector of gdb::unique_xmalloc_ptr.
12790         (auto_load_expand_dir_vars): Return an std::vector of
12791         gdb::unique_xmalloc_ptr, adjust the code.
12792         (auto_load_safe_path_vec_update): Adjust.
12793         (filename_is_in_auto_load_safe_path_vec): Adjust.
12794         (auto_load_objfile_script_1): Adjust.
12795         * build-id.c (build_id_to_debug_bfd): Adjust.
12796         * linux-thread-db.c (thread_db_load_search): Adjust.
12797         * source.c (add_path): Adjust.
12798         (openp): Adjust.
12799         * symfile.c (find_separate_debug_file): Adjust.
12800         * utils.c (do_free_char_ptr_vec): Remove.
12801         (make_cleanup_free_char_ptr_vec): Remove.
12802
12803 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12804
12805         PR gdb/22907
12806         * common/pathstuff.c: Conditionally include "<windows.h>".
12807
12808 2018-03-01  Georg Sauthoff  <mail@georg.so>
12809
12810         PR gdb/22888
12811         * gcore.in: Quote variables and switch interpreter to bash.
12812
12813 2018-03-01  Tom Tromey  <tom@tromey.com>
12814
12815         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12816         assertion.  Add assertion for discriminant_index.
12817         (quirk_rust_enum): Use correct base type name in univariant case.
12818
12819 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12820
12821         * record.c (get_call_history_modifiers): Return a
12822         record_print_flags.
12823         (cmd_record_call_history): Adjust.
12824         * record-btrace.c (record_btrace_call_history): Adjust.
12825         (record_btrace_call_history_range): Adjust.
12826         (record_btrace_call_history_from): Adjust.
12827         * target-debug.h (target_debug_print_record_print_flags): New.
12828         * target-delegates.c: Re-generate.
12829         * target.c (target_call_history): Change flags type.
12830         (target_call_history_from): Likewise.
12831         (target_call_history_range): Likewise.
12832         * target.h (struct target_ops) <target_call_history>: Likewise.
12833         (target_call_history_from): Likewise.
12834         (target_call_history_range): Likewise.
12835
12836 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12837             Simon Marchi  <simon.marchi@polymtl.ca>
12838
12839         * common/common-utils.c: Include "sys/stat.h".
12840         (is_regular_file): Move here from "source.c"; change return
12841         type to "bool".
12842         * common/common-utils.h (is_regular_file): New prototype.
12843         * common/pathstuff.c (contains_dir_separator): New function.
12844         * common/pathstuff.h (contains_dir_separator): New prototype.
12845         * source.c: Don't include "sys/stat.h".
12846         (is_regular_file): Move to "common/common-utils.c".
12847
12848 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12849
12850         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12851         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12852         * auto-load.c: Include "common/pathstuff.h".
12853         * common/common-def.h (current_directory): Move here.
12854         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12855         function.
12856         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12857         prototype.
12858         * common/pathstuff.c: New file.
12859         * common/pathstuff.h: New file.
12860         * compile/compile.c: Include "common/pathstuff.h".
12861         * defs.h (current_directory): Move to "common/common-defs.h".
12862         * dwarf2read.c: Include "common/pathstuff.h".
12863         * exec.c: Likewise.
12864         * guile/scm-safe-call.c: Likewise.
12865         * linux-thread-db.c: Likewise.
12866         * main.c: Likewise.
12867         * nto-tdep.c: Likewise.
12868         * objfiles.c: Likewise.
12869         * source.c: Likewise.
12870         * symtab.c: Likewise.
12871         * utils.c: Include "common/pathstuff.h".
12872         (gdb_realpath): Move to "common/pathstuff.c".
12873         (gdb_realpath_keepfile): Likewise.
12874         (gdb_abspath): Likewise.
12875         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12876         (gdb_realpath_keepfile): Likewise.
12877         (gdb_abspath): Likewise.
12878
12879 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12880
12881         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12882         wildcard process pid for super_resume for kernels with a
12883         specific bug.
12884
12885 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12886
12887         * compile/compile.c (get_args): Add additional comments
12888         explaining function.
12889
12890 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12891             Tom Tromey  <tom@tromey.com>
12892
12893         * target.h (memory_write_request_s): Remove typedef.  Don't define
12894         VEC.
12895         (target_write_memory_blocks): Change argument to std::vector.
12896         (struct memory_write_request): Add constructor.
12897         * target-memory.c (compare_block_starting_address): Return bool.
12898         Change argument types.
12899         (claim_memory): Change arguments to use std::vector.
12900         (split_regular_and_flash_blocks, blocks_to_erase)
12901         (compute_garbled_blocks): Likewise.
12902         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12903         (target_write_memory_blocks): Change argument to std::vector.
12904         * symfile.c (struct load_section_data): Add constructor and
12905         destructor.  Use std::vector for "requests".
12906         (struct load_progress_data): Add initializers.
12907         (load_section_callback): Update.  Use "new".
12908         (clear_memory_write_data): Remove.
12909         (generic_load): Update.
12910
12911 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12912
12913         * arch/aarch64.h: Use common/tdesc.h.
12914
12915 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12916
12917         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12918         architecture with a 64-bit ABI.
12919
12920 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12921
12922         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12923         ahead of target description loading.
12924
12925 2018-02-26  Tom Tromey  <tom@tromey.com>
12926
12927         * stack.c (backtrace_command_1): Update.
12928         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12929         of "flags".
12930         * python/py-framefilter.c (py_print_frame)
12931         (gdbpy_apply_frame_filter): Change type of "flags".
12932         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12933         of "flags".
12934         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12935         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12936         * extension.h (enum frame_filter_flag): Rename from
12937         frame_filter_flags.
12938         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12939         (apply_ext_lang_frame_filter): Change type of "flags".
12940         * extension.c (apply_ext_lang_frame_filter): Change type of
12941         "flags".
12942         * extension-priv.h (struct extension_language_ops)
12943         <apply_frame_filter>: Change type of "flags".
12944
12945 2018-02-26  Tom Tromey  <tom@tromey.com>
12946
12947         PR python/16497:
12948         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12949         off-by-one in py_end computation.
12950         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12951         PRINT_MORE_FRAMES.
12952         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12953         constant.
12954
12955 2018-02-26  Tom Tromey  <tom@tromey.com>
12956
12957         * dwarf2read.c (struct variant_field): New.
12958         (struct nextfield) <variant>: New field.
12959         (dwarf2_add_field): Handle DW_TAG_variant_part.
12960         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12961         discriminated union.
12962         (read_structure_type): Handle DW_TAG_variant_part.
12963         (handle_struct_member_die): New function, extracted from
12964         process_structure_scope.  Handle DW_TAG_variant.
12965         (process_structure_scope): Handle discriminated unions.  Call
12966         handle_struct_member_die.
12967
12968 2018-02-26  Tom Tromey  <tom@tromey.com>
12969
12970         * rust-lang.h (rust_last_path_segment): Declare.
12971         * rust-lang.c (rust_last_path_segment): Now public.  Change
12972         contract.
12973         (struct disr_info): Remove.
12974         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12975         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12976         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12977         (rust_enum_p, rust_enum_variant): New function.
12978         (rust_underscore_fields): Remove "offset" parameter.
12979         (rust_print_enum): New function.
12980         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12981         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12982         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12983         enums.
12984         (rust_internal_print_type): New function, from rust_print_type.
12985         Remove enum code.
12986         (rust_print_type): Call rust_internal_print_type.
12987         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12988         Update enum handling.
12989         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12990         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12991         (rust_union_quirks): New functions.
12992         (process_full_comp_unit, process_full_type_unit): Call
12993         rust_union_quirks.
12994         (process_structure_scope): Update rust_unions if necessary.
12995
12996 2018-02-26  Tom Tromey  <tom@tromey.com>
12997
12998         * value.h (value_union_variant): Declare.
12999         * valops.c (value_union_variant): New function.
13000         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13001         (struct discriminant_info): New.
13002         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13003         enumerator.
13004         (struct main_type) <flag_discriminated_union>: New field.
13005
13006 2018-02-26  Tom Tromey  <tom@tromey.com>
13007
13008         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13009         unittests/unpack-selftests.c.
13010         * unittests/unpack-selftests.c: New file.
13011         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13012
13013 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13014
13015         * dwarf2read.c (struct partial_die_info) <read>: New method.
13016         (read_partial_die): Remove the declaration.
13017         (load_partial_dies): Update.
13018         (partial_die_info::partial_die_info):
13019         (read_partial_die): Change it to partial_die_info::read.
13020
13021 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13022
13023         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13024         (fixup_partial_die): Remove declaration.
13025         (scan_partial_symbols): Update.
13026         (partial_die_parent_scope): Likewise.
13027         (partial_die_full_name): Likewise.
13028         (fixup_partial_die): Change it to partial_die_info::fixup.
13029
13030 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13031
13032         * dwarf2read.c (read_partial_die): Update the declaration.
13033         (load_partial_dies): Caller update.
13034         (read_partial_die): Remove one argument abbrev_len.
13035
13036 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13037
13038         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13039         assignment operator.
13040         (load_partial_dies): Use ctor and copy ctor.
13041         (read_partial_die): Update.
13042         (dwarf2_cu::find_partial_die): Use ctor.
13043
13044 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13045
13046         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13047         (find_partial_die_in_comp_unit): Change it to
13048         dwarf2_cu::find_partial_die.
13049         (find_partial_die): Update.
13050
13051 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13052
13053         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13054         is NULL.
13055
13056 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13057
13058         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13059
13060 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13061
13062         * arch/amd64.h: Use common/tdesc.h.
13063         * arch/i386.c: Likewise.
13064         * arch/i386.h: Likewise.
13065         * arch/tic6x.c: Likewise.
13066         * arch/tdesc.h: Move file from here...
13067         * common/tdesc.h: ...to here.
13068         * features/aarch64-core.c: Regenerate.
13069         * features/aarch64-fpu.c: Regenerate.
13070         * features/i386/32bit-avx.c: Regenerate.
13071         * features/i386/32bit-avx512.c: Regenerate.
13072         * features/i386/32bit-core.c: Regenerate.
13073         * features/i386/32bit-linux.c: Regenerate.
13074         * features/i386/32bit-mpx.c: Regenerate.
13075         * features/i386/32bit-pkeys.c: Regenerate.
13076         * features/i386/32bit-sse.c: Regenerate.
13077         * features/i386/64bit-avx.c: Regenerate.
13078         * features/i386/64bit-avx512.c: Regenerate.
13079         * features/i386/64bit-core.c: Regenerate.
13080         * features/i386/64bit-linux.c: Regenerate.
13081         * features/i386/64bit-mpx.c: Regenerate.
13082         * features/i386/64bit-pkeys.c: Regenerate.
13083         * features/i386/64bit-segments.c: Regenerate.
13084         * features/i386/64bit-sse.c: Regenerate.
13085         * features/i386/x32-core.c: Regenerate.
13086         * features/tic6x-c6xp.c: Regenerate.
13087         * features/tic6x-core.c: Regenerate.
13088         * features/tic6x-gp.c: Regenerate.
13089         * target-descriptions.c: Use common/tdesc.h.
13090         * target-descriptions.h: Likewise.
13091
13092 2018-02-24  Tom Tromey  <tom@tromey.com>
13093
13094         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13095         (try_thread_db_load_from_dir, thread_db_load_search): Use
13096         std::string.
13097         (info_auto_load_libthread_db_compare): Return bool.  Change
13098         argument types.
13099         (info_auto_load_libthread_db): Use std::vector, std::string.
13100         Remove cleanups.
13101
13102 2018-02-24  Tom Tromey  <tom@tromey.com>
13103
13104         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13105         std::string.
13106         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13107         std::string*.
13108         * gdbarch.c: Rebuild.
13109         * gdbarch.h: Rebuild.
13110         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13111         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13112         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13113         std::string*.
13114
13115 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13116
13117         * gdbtypes.h (sect_offset): Change type to uint64_t.
13118         (sect_offset_str): New function.
13119         * dwarf2read.c (create_addrmap_from_aranges): Use
13120         sect_offset_str.
13121         (error_check_comp_unit_head): Likewise.
13122         (create_debug_type_hash_table): Likewise.
13123         (read_cutu_die_from_dwo): Likewise.
13124         (init_cutu_and_read_dies): Likewise.
13125         (init_cutu_and_read_dies_no_follow): Likewise.
13126         (process_psymtab_comp_unit_reader): Likewise.
13127         (partial_die_parent_scope): Likewise.
13128         (peek_die_abbrev): Likewise.
13129         (process_queue): Likewise.
13130         (dwarf2_physname): Likewise.
13131         (read_namespace_alias): Likewise.
13132         (read_import_statement): Likewise.
13133         (create_dwo_cu_reader): Likewise.
13134         (create_cus_hash_table): Likewise.
13135         (lookup_dwo_cutu): Likewise.
13136         (inherit_abstract_dies): Likewise.
13137         (read_func_scope): Likewise.
13138         (read_call_site_scope): Likewise.
13139         (dwarf2_add_member_fn): Likewise.
13140         (read_common_block): Likewise.
13141         (read_module_type): Likewise.
13142         (read_typedef): Likewise.
13143         (read_subrange_type): Likewise.
13144         (load_partial_dies): Likewise.
13145         (read_partial_die): Likewise.
13146         (find_partial_die): Likewise.
13147         (read_str_index): Likewise.
13148         (dwarf2_string_attr): Likewise.
13149         (build_error_marker_type): Likewise.
13150         (lookup_die_type): Likewise.
13151         (dump_die_shallow): Likewise.
13152         (follow_die_ref): Likewise.
13153         (dwarf2_fetch_die_loc_sect_off): Likewise.
13154         (dwarf2_fetch_constant_bytes): Likewise.
13155         (follow_die_sig): Likewise.
13156         (get_signatured_type): Likewise.
13157         (get_DW_AT_signature_type): Likewise.
13158         (dwarf2_find_containing_comp_unit): Likewise.
13159         (set_die_type): Likewise.
13160
13161 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13162
13163         * arch/aarch64.c: Include "common-defs.h".
13164         * arch/amd64.c: Likewise.
13165         * arch/i386.c: Likewise.
13166
13167 2018-02-21  Tom Tromey  <tom@tromey.com>
13168
13169         * value.h: (extract_field_op): Update.
13170         * eval.c (extract_field_op): Return a const char *.
13171         * expression.h (parse_expression_for_completion): Update.
13172         * completer.c (complete_expression): Update.
13173         (add_struct_fields): Make fieldname const.
13174         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13175         (mark_completion_tag, parse_exp_in_context_1): Update.
13176         (parse_expression_for_completion): Change "name" to
13177         unique_xmalloc_ptr*.
13178
13179 2018-02-21  Tom Tromey  <tom@tromey.com>
13180
13181         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13182
13183 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13184
13185         * avr-tdep.c (avr_read_pc): Change parameter type to
13186         readable_regcache.
13187         * gdbarch.sh (read_pc): Likewise.
13188         * gdbarch.c: Re-generated.
13189         * gdbarch.h: Re-generated.
13190         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13191         readable_regcache.
13192         * ia64-tdep.c (ia64_read_pc): Likewise.
13193         * mips-tdep.c (mips_read_pc): Likewise.
13194         * spu-tdep.c (spu_read_pc): Likewise.
13195
13196 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13197
13198         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13199         * regcache-dump.c: New file.
13200         * regcache.c: Move register_dump to regcache-dump.c.
13201         (maintenance_print_registers): Likewise.
13202         (maintenance_print_raw_registers): Likewise.
13203         (maintenance_print_cooked_registers): Likewise.
13204         (maintenance_print_register_groups): Likewise.
13205         (maintenance_print_remote_registers): Likewise.
13206         (_initialize_regcache): Likewise.
13207         * regcache.h (register_dump): Moved from regcache.c.
13208
13209 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13210
13211         * regcache.c (regcache::regcache): Update.
13212         (regcache::invalidate): Move it to detached_regcache::invalidate.
13213         (get_thread_arch_aspace_regcache): Update.
13214         (regcache::raw_update): Update.
13215         (regcache::cooked_read): Remove some code.
13216         (regcache::cooked_read_value): Likewise.
13217         (regcache::raw_write): Remove assert on m_readonly_p.
13218         (regcache::raw_supply_integer): Move it to
13219         detached_regcache::raw_supply_integer.
13220         (regcache::raw_supply_zeroed): Likewise.
13221         * regcache.h (detached_regcache) <raw_supply_integer>: New
13222         declaration.
13223         <raw_supply_zeroed, invalidate>: Likewise.
13224         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13225         <invalidate>: Likewise.
13226         <m_readonly_p>: Removed.
13227
13228 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13229
13230         * infcmd.c (get_return_value): Let stop_regs point to
13231         get_current_regcache.
13232         * regcache.c (regcache::regcache): Remove.
13233         (register_dump_reg_buffer): New class.
13234         (regcache_print): Adjust.
13235         * regcache.h (regcache): Remove constructors.
13236
13237 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13238
13239         * regcache.c (class register_dump): New class.
13240         (register_dump_regcache, register_dump_none): New class.
13241         (register_dump_remote, register_dump_groups): New class.
13242         (regcache_print): Update.
13243         * regcache.h (regcache_dump_what): Move it to regcache.c.
13244         (regcache) <dump>: Remove.
13245
13246 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13247
13248         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13249          reg_buffer_rw *.
13250         (jit_unwind_reg_set_impl): Call raw_supply.
13251         (jit_frame_sniffer): Use reg_buffer_rw.
13252         * record-full.c (record_full_core_regbuf): Change its type.
13253         (record_full_core_open_1): Use reg_buffer_rw.
13254         (record_full_close): Likewise.
13255         (record_full_core_fetch_registers): Use regcache->raw_supply.
13256         (record_full_core_store_registers): Likewise.
13257         * regcache.c (regcache::get_register_status): Move it to
13258         reg_buffer.
13259         (regcache_raw_set_cached_value): Remove.
13260         (regcache::raw_set_cached_value): Remove.
13261         (regcache::raw_write): Call raw_supply.
13262         (regcache::raw_supply): Move it to reg_buffer_rw.
13263         * regcache.h (regcache_raw_set_cached_value): Remove.
13264         (reg_buffer_rw): New class.
13265
13266 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13267
13268         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13269         readonly_detached_regcache.
13270         (dummy_frame_prev_register): Use regcache->cooked_read.
13271         * frame.c (frame_save_as_regcache): Change return type.
13272         (frame_pop): Update.
13273         * frame.h (frame_save_as_regcache): Update declaration.
13274         * inferior.h (get_infcall_suspend_state_regcache): Update
13275         declaration.
13276         * infrun.c (infcall_suspend_state) <registers>: use
13277         readonly_detached_regcache.
13278         (save_infcall_suspend_state): Don't use regcache_dup.
13279         (get_infcall_suspend_state_regcache): Change return type.
13280         * linux-fork.c (struct fork_info) <savedregs>: Change to
13281         readonly_detached_regcache.
13282         <pc>: New field.
13283         (fork_save_infrun_state): Don't use regcache_dup.
13284         (info_checkpoints_command): Adjust.
13285         * mi/mi-main.c (register_changed_p): Update declaration.
13286         (mi_cmd_data_list_changed_registers): Use
13287         readonly_detached_regcache.
13288         (register_changed_p): Change parameter type to
13289         readonly_detached_regcache.
13290         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13291         readonly_detached_regcache.
13292         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13293         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13294         New.
13295         (regcache::save): Move it to reg_buffer.
13296         (regcache::restore): Change parameter type.
13297         (regcache_dup): Remove.
13298         * regcache.h (reg_buffer) <save>: New method.
13299         (readonly_detached_regcache): New class.
13300         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13301         readonly_detached_regcache.
13302         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13303
13304 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13305
13306         * frame.c (frame_save_as_regcache): Use regcache method save.
13307         (frame_pop): Use regcache method restore.
13308         * infrun.c (restore_infcall_suspend_state): Likewise.
13309         * linux-fork.c (fork_load_infrun_state): Likewise.
13310         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13311         save.
13312         * regcache.c (regcache_save): Remove.
13313         (regcache::restore): More asserts.
13314         (regcache_cpy): Remove.
13315         * regcache.h (regcache_save): Remove the declaration.
13316         (regcache::restore): Move from private to public.
13317         Remove the friend declaration of regcache_cpy.
13318         (regcache_cpy): Remove declaration.
13319
13320 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13321
13322         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13323         parameter type to 'readable_regcache *'.
13324         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13325         * arm-tdep.c (arm_neon_quad_read): Likewise.
13326         (arm_pseudo_read): Likewise.
13327         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13328         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13329         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13330         * gdbarch.c: Re-generated.
13331         * gdbarch.h: Re-generated.
13332         * gdbarch.sh (pseudo_register_read): Change parameter type to
13333         'readable_regcache *'.
13334         (pseudo_register_read_value): Likewise.
13335         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13336         (h8300_pseudo_register_read): Likewise.
13337         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13338         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13339         (i386_pseudo_register_read_into_value): Likewise.
13340         (i386_pseudo_register_read_value): Likewise.
13341         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13342         declaration.
13343         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13344         * m32c-tdep.c (m32c_raw_read): Likewise.
13345         (m32c_read_flg): Likewise.
13346         (m32c_banked_register): Likewise.
13347         (m32c_banked_read): Likewise.
13348         (m32c_sb_read): Likewise.
13349         (m32c_part_read): Likewise.
13350         (m32c_cat_read): Likewise.
13351         (m32c_r3r2r1r0_read): Likewise.
13352         (m32c_pseudo_register_read): Likewise.
13353         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13354         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13355         (mep_pseudo_cr64_read): Likewise.
13356         (mep_pseudo_register_read): Likewise.
13357         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13358         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13359         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13360         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13361         (regcache::cooked_read): Likewise.
13362         (regcache::cooked_read_value): Likewise.
13363         (regcache_cooked_read_signed):
13364         (regcache::cooked_read): Likewise.
13365         * regcache.h (readable_regcache): New class.
13366         (regcache): Inherit readable_regcache.  Move some methods to
13367         readable_regcache.
13368         * rl78-tdep.c (rl78_pseudo_register_read): Change
13369         parameter type to 'readable_regcache *'.
13370         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13371         (e500_pseudo_register_read): Change parameter type to
13372         'readable_regcache *'.
13373         (dfp_pseudo_register_read): Likewise.
13374         (vsx_pseudo_register_read): Likewise.
13375         (efpr_pseudo_register_read): Likewise.
13376         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13377         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13378         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13379         (sh64_pseudo_register_read): Likewise.
13380         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13381         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13382         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13383         (spu_pseudo_register_read): Likewise.
13384         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13385         (xtensa_pseudo_register_read): Likewise.
13386
13387 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13388
13389         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13390         (regcache::arch): Move it to reg_buffer::arch.
13391         (regcache::register_buffer): Likewise.
13392         (regcache::assert_regnum): Likewise.
13393         (regcache::num_raw_registers): Likewise.
13394         * regcache.h (reg_buffer): New class.
13395         (regcache): Inherit reg_buffer.
13396
13397 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13398
13399         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13400         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13401
13402 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13403
13404         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13405
13406 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13407
13408         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13409         (SFILES): Remove common/*.c files.
13410         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13411         * common/common.host: Add common reference.
13412         * configure.ac: Likewise.
13413         * configure: Regenerate.
13414
13415 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13416
13417         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13418         (block_initialize_namespace): Use new.
13419         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13420         (dwarf2_free_objfile): Use delete.
13421         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13422         (copy_type_recursive): Use new.
13423         * gdb_obstack.h (allocate_on_obstack): New.
13424
13425 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13426
13427         PR gdb/22849
13428         * inferior.c (exit_inferior_1): Reset inf->control.
13429
13430 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13431
13432         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13433         declaration.
13434
13435 2018-02-14  Pedro Alves  <palves@redhat.com>
13436
13437         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13438         frame_cleanup_after_sniffer on exception.
13439
13440 2018-02-14  Tom Tromey  <tom@tromey.com>
13441
13442         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13443         const.
13444         (solib_bfd_open): Make pathname const.
13445         * solib.c (solib_bfd_open): Make pathname const.
13446         * solib-spu.c (spu_bfd_fopen): Make name const.
13447         (spu_bfd_open): Make pathname const.
13448         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13449         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13450
13451 2018-02-14  Tom Tromey  <tom@tromey.com>
13452
13453         * symfile.c (symfile_bfd_open): Update.
13454         * source.h (openp, source_full_path_of, find_and_open_source):
13455         Change argument type to unique_xmalloc_ptr.
13456         * source.c (openp): Take a unique_xmalloc_ptr.
13457         (source_full_path_of, find_and_open_source): Likewise.
13458         (open_source_file, symtab_to_fullname): Update.
13459         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13460         unique_xmalloc_ptr.
13461         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13462         (exec_file_find): Update.
13463         * psymtab.c (psymtab_to_fullname): Update.
13464         * nto-tdep.h (nto_find_and_open_solib): Update.
13465         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13466         unique_xmalloc_ptr.
13467         * exec.c (exec_file_attach): Update.
13468         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13469         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13470
13471 2018-02-14  Tom Tromey  <tom@tromey.com>
13472
13473         * solib.c: Include source.h.
13474         * nto-tdep.c: Include source.h.
13475         * mi/mi-cmd-env.c: Include source.h.
13476         * infcmd.c: Include source.h.
13477         * exec.c: Include source.h.
13478         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13479         (add_path, directory_switch, source_path, init_source_path): Move
13480         declarations...
13481         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13482         (add_path, directory_switch, source_path, init_source_path):
13483         ...here.
13484
13485 2018-02-14  Tom Tromey  <tom@tromey.com>
13486
13487         * solist.h (exec_file_find, solib_find): Return
13488         unique_xmalloc_ptr.
13489         (solib_bfd_fopen): Take a const char *.
13490         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13491         (exec_file_find, solib_find): Likewise.
13492         (solib_bfd_fopen): Do not take ownership of "pathname".
13493         (solib_bfd_open): Use unique_xmalloc_ptr.
13494         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13495         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13496         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13497         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13498
13499 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13500
13501         * ada-lang.c (name_match_type_from_name): Remove reference to
13502         ada_name_for_lookup in function's documentation.
13503         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13504
13505 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13506
13507         * defs.h (enum openp_flags): New enum.
13508         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13509         Move to enum openp_flags.
13510         (openp_flags): New enum flags.
13511         (openp): Change parameter type to openp_flags.
13512         * source.c (openp): Change parameter type to openp_flags.
13513         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13514         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13515
13516 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13517
13518         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13519         per-command.
13520
13521 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13522
13523         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13524         into...
13525         (class dwarf2_queue_guard): ...the destructor of this new class.
13526         (dw2_do_instantiate_symtab): Create instance of the new class
13527         dwarf2_queue_guard, remove cleanup.
13528
13529 2018-02-09  Tom Tromey  <tom@tromey.com>
13530
13531         * source.c (find_source_lines): Don't reference past the end of
13532         the vector.
13533
13534 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13535
13536         * remote.c (remote_btrace_maybe_reopen): Change error message.
13537         * btrace.c (btrace_enable): Likewise.
13538         (parse_xml_btrace): Likewise.
13539         (parse_xml_btrace_conf): Likewise.
13540
13541 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13542
13543         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13544         (linux_enable_pt, linux_enable_bts): Call
13545         diagnose_perf_event_open_fail.
13546
13547 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13548
13549         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13550         Remove parameter and change return type.  Update callers.  Move it.
13551         (linux_enable_bts, linux_enable_pt): Improve error message.
13552         (linux_enable_pt): Remove zero buffer size check.
13553         (linux_enable_btrace): Improve error messages.  Remove NULL return
13554         check.
13555
13556 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13557
13558         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13559         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13560         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13561         (linux_supports_pt, linux_supports_btrace): Remove.
13562         (linux_enable_bts): Call cpu_supports_bts.
13563         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13564         * remote.c (remote_supports_btrace): Remove.
13565         (init_remote_ops): Remove remote_supports_btrace.
13566         * target-delegates.c: Regenerated.
13567         * target.c (target_supports_btrace): Remove.
13568         * target.h (target_ops) <to_supports_btrace>: Remove
13569         (target_supports_btrace): Remove.
13570         * x86-linux-nat.c (x86_linux_create_target): Remove
13571         linux_supports_btrace.
13572
13573 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13574
13575         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13576         btrace failed.
13577         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13578         exception and use message in own exception.
13579
13580 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13581
13582         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13583         (perf_event_pt_event_type): Use gdb_file_up.
13584         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13585         scoped_fd, and scoped_mmap.
13586
13587 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13588
13589         * common/scoped_mmap.h: New.
13590         * unittests/scoped_mmap-selftest.c: New.
13591         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13592         unittests/scoped_mmap-selftest.c.
13593
13594 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13595
13596         * common/scoped_fd.h: New.
13597         * unittests/scoped_fd-selftest.c: New.
13598         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13599         unittests/scoped_fd-selftest.c.
13600
13601 2018-02-09  Tom Tromey  <tom@tromey.com>
13602
13603         * auto-load.c (auto_load_section_scripts): Use
13604         gdb::unique_xmalloc_ptr.
13605
13606 2018-02-09  Tom Tromey  <tom@tromey.com>
13607
13608         * auto-load.c (execute_script_contents): Use std::string.
13609
13610 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13611
13612         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13613         Python function, rather than a new command.
13614
13615 2018-02-08  Tom Tromey  <tom@tromey.com>
13616
13617         * solib.c (solib_find_1): Use std::string.
13618         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13619
13620 2018-02-08  Tom Tromey  <tom@tromey.com>
13621
13622         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13623
13624 2018-02-08  Tom Tromey  <tom@tromey.com>
13625
13626         * source.c (find_source_lines): Use gdb::def_vector.
13627
13628 2018-02-08  Tom Tromey  <tom@tromey.com>
13629
13630         * macrocmd.c (struct temporary_macro_definition): New.
13631         (macro_define_command): Use temporary_macro_definition.  Remove
13632         cleanups.
13633         (free_macro_definition_ptr): Remove.
13634
13635 2018-02-08  Tom Tromey  <tom@tromey.com>
13636
13637         * macroexp.c (maybe_expand): Use std::string.
13638
13639 2018-02-08  Tom Tromey  <tom@tromey.com>
13640
13641         * macroexp.c (struct macro_buffer): Add initializers for some
13642         members.
13643         (init_buffer, init_shared_buffer, free_buffer)
13644         (free_buffer_return_text): Remove.
13645         (macro_buffer): New constructors.
13646         (~macro_buffer): New destructor.
13647         (macro_buffer::set_shared): New method.
13648         (macro_buffer::resize_buffer, macro_buffer::appendc)
13649         (macro_buffer::appendmem): Now methods, not free functions.
13650         (set_token, append_tokens_without_splicing, stringify)
13651         (macro_stringify): Update.
13652         (gather_arguments): Change return type.  Remove argc_p argument,
13653         add args_ptr argument.  Use std::vector.
13654         (substitute_args): Remove argc argument.  Accept std::vector.
13655         (expand): Update.  Use std::vector.
13656         (scan, macro_expand, macro_expand_next): Update.
13657
13658 2018-02-08  Tom Tromey  <tom@tromey.com>
13659
13660         * symtab.c (default_collect_symbol_completion_matches_break_on):
13661         Use unique_xmalloc_ptr.
13662         * macroscope.h: (sal_macro_scope, user_macro_scope)
13663         (default_macro_scope): Return unique_xmalloc_ptr.
13664         * macroscope.c (sal_macro_scope, user_macro_scope)
13665         (default_macro_scope): Return unique_xmalloc_ptr.
13666         * macroexp.h (macro_expand, macro_expand_once): Return
13667         unique_xmalloc_ptr.
13668         * macroexp.c (macro_expand, macro_expand_once): Return
13669         unique_xmalloc_ptr.
13670         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13671         (info_macro_command, info_macros_command): Use
13672         unique_xmalloc_ptr.
13673         * compile/compile-c-support.c (write_macro_definitions): Use
13674         unique_xmalloc_ptr.
13675         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13676
13677 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13678
13679         * value.c (value_static_field): Assign field type instead of
13680         containing type when returning an optimized out value.
13681
13682 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13683
13684         * ft32-tdep.c (ft32_read_pc): Remove.
13685         (ft32_write_pc): Remove.
13686         (ft32_gdbarch_init): Update.
13687         * m32r-tdep.c (m32r_read_pc): Remove.
13688         (m32r_gdbarch_init): Update.
13689         * mep-tdep.c (mep_read_pc): Remove.
13690         (mep_gdbarch_init): Update.
13691         * microblaze-tdep.c (microblaze_write_pc): Remove.
13692         (microblaze_gdbarch_init): Update.
13693         * mn10300-tdep.c (mn10300_read_pc): Remove.
13694         (mn10300_write_pc): Remove.
13695         (mn10300_gdbarch_init): Update.
13696         * moxie-tdep.c (moxie_read_pc): Remove.
13697         (moxie_write_pc): Remove.
13698         (moxie_gdbarch_init): Update.
13699
13700 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13701
13702         * expprint.c (print_subexp_standard): Handle
13703         OP_F77_UNDETERMINED_ARGLIST.
13704         (dump_subexp_body_standard): Likewise.
13705
13706 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13707
13708         * target-descriptions.c (tdesc_element_visitor) Add empty
13709         implementations.
13710         (tdesc_type): Move make_gdb_type from here.
13711         (tdesc_type_builtin): Likewise.
13712         (tdesc_type_vector): Likewise.
13713         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13714         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13715         (make_gdb_type_union): Likewise.
13716         (make_gdb_type_flags): Likewise.
13717         (make_gdb_type_enum): Likewise.
13718         (make_gdb_type): New function.
13719         (tdesc_register_type): Use static make_gdb_type.
13720
13721 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13722
13723         * infcmd.c (default_print_one_register_info): Align natural-format
13724         column values consistently one under another.
13725         (pad_to_column): New function.
13726
13727 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13728
13729         * dwarf2read.c (dwarf2_physname): Move commment.
13730
13731 2018-02-01  Leszek Swirski  <leszeks@google.com>
13732
13733         * varobj.c (varobj_formatted_print_options): Allow recursive
13734         pretty printing if pretty printing is enabled.
13735
13736 2018-02-01  Leszek Swirski  <leszeks@google.com>
13737
13738         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13739         names after a structop as a filename.
13740
13741 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13742
13743         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13744         (arm_record_coproc_data_proc): Likewise.
13745
13746 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13747
13748         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13749
13750 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13751
13752         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13753         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13754
13755 2018-01-31  Pedro Alves  <palves@redhat.com>
13756
13757         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13758         * inflow.c (child_terminal_save_inferior): Wrap reference to
13759         tcgetpgrp in HAVE_TERMIOS_H.
13760         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13761         _WIN32.
13762         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13763         always iterate over all inferiors.
13764         (gdbsim_cntrl_c): Adjust.
13765         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13766
13767 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13768
13769         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13770         index type is objfile-owned if the element type is as well.
13771
13772 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13773
13774         GDB 8.1 released.
13775
13776 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13777
13778         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13779         "features/s390x-linux64.c".
13780         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13781         s390_linux32 and s390x_linux64.
13782         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13783         default tdesc.
13784         * s390-tdep.c: Include "features/s390-linux32.c" and
13785         "features/s390x-linux64.c".
13786         (s390_tdesc_valid): Add check for tdesc_has_registers.
13787         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13788         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13789         tdesc_s390x_linux64.
13790         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13791         tdesc_s390x_linux64 to...
13792         * s390-tdep.h: ...here.
13793
13794 2018-01-30  Pedro Alves  <palves@redhat.com>
13795
13796         PR gdb/13211
13797         * config.in, configure: Regenerate.
13798         * configure.ac: Check for getpgid.
13799         * go32-nat.c (go32_pass_ctrlc): New.
13800         (go32_target): Install it.
13801         * inf-child.c (inf_child_target): Install
13802         child_terminal_save_inferior, child_pass_ctrlc and
13803         child_interrupt.
13804         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13805         (inf_ptrace_target): No longer install it.
13806         * infcmd.c (interrupt_target_1): Adjust.
13807         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13808         (child_interrupt): Declare.
13809         (inferior::terminal_state): New.
13810         * inflow.c (struct terminal_info): Update comments.
13811         (inferior_process_group): Delete.
13812         (terminal_is_ours): Delete.
13813         (gdb_tty_state): New.
13814         (child_terminal_init): Adjust.
13815         (is_gdb_terminal, sharing_input_terminal_1)
13816         (sharing_input_terminal): New functions.
13817         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13818         Set the process's actual process group in the foreground if
13819         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13820         mark terminal as the inferior's if not sharing GDB's terminal.
13821         Don't check attach_flag.
13822         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13823         pass down a target_terminal_state.
13824         (child_terminal_save_inferior): New, factored out from ...
13825         (child_terminal_ours_1): ... this.  Handle
13826         target_terminal_state::is_ours_for_output.
13827         (child_interrupt, child_pass_ctrlc): New.
13828         (inflow_inferior_exit): Clear the inferior's terminal_state.
13829         (copy_terminal_info): Copy the inferior's terminal state.
13830         (_initialize_inflow): Remove reference to terminal_is_ours.
13831         * inflow.h (inferior_process_group): Delete.
13832         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13833         * procfs.c (procfs_target): Don't install procfs_interrupt.
13834         (procfs_interrupt): Delete.
13835         * remote.c (remote_serial_quit_handler): Adjust.
13836         (remote_interrupt): Remove ptid parameter.  Adjust.
13837         * target-delegates.c: Regenerate.
13838         * target.c: Include "terminal.h".
13839         (target_terminal::terminal_state): Rename to ...
13840         (target_terminal::m_terminal_state): ... this.
13841         (target_terminal::init): Adjust.
13842         (target_terminal::inferior): Adjust to per-inferior
13843         terminal_state.
13844         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13845         (target_terminal::ours, target_terminal::ours_for_output): Use
13846         target_terminal_is_ours_kind.
13847         (target_interrupt): Remove ptid parameter.  Adjust.
13848         (default_target_pass_ctrlc): Adjust.
13849         * target.h (target_ops::to_terminal_save_inferior): New field.
13850         (target_ops::to_interrupt): Remove ptid_t parameter.
13851         (target_interrupt): Remove ptid_t parameter.  Update comment.
13852         (target_pass_ctrlc): Update comment.
13853         * target/target.h (target_terminal_state): New scoped enum,
13854         factored out of ...
13855         (target_terminal::terminal_state): ... here.
13856         (target_terminal::inferior): Update comments.
13857         (target_terminal::restore_inferior): New.
13858         (target_terminal::is_inferior, target_terminal::is_ours)
13859         (target_terminal::is_ours_for_output): Adjust.
13860         (target_terminal::scoped_restore_terminal_state): Adjust to
13861         rename, and call restore_inferior() instead of inferior().
13862         (target_terminal::scoped_restore_terminal_state::m_state): Change
13863         type.
13864         (target_terminal::terminal_state): Rename to ...
13865         (target_terminal::m_terminal_state): ... this and change type.
13866
13867 2018-01-30  Pedro Alves  <palves@redhat.com>
13868
13869         * linux-nat.c (wait_for_signal): New function.
13870         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13871         directly.
13872         (async_terminal_is_ours)
13873         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13874         (linux_nat_add_target): Don't override
13875         to_terminal_inferior/to_terminal_ours.
13876
13877 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13878
13879         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13880
13881 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13882
13883         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13884         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13885         dwarf2_per_objfile_free here.
13886         (dwarf2_per_objfile_free): Remove.
13887         (_initialize_dwarf2_read): Don't register
13888         dwarf2_per_objfile_free as a registry cleanup.
13889
13890 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13891
13892         Avoid compilation errors in MinGW native builds
13893
13894         The error is triggered by including python-internal.h, and the
13895         error message is:
13896
13897              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13898                       from build-gnulib/import/math.h:27,
13899                       from d:/usr/Python26/include/pyport.h:235,
13900                       from d:/usr/Python26/include/Python.h:58,
13901                       from python/python-internal.h:94,
13902                       from python/py-arch.c:24:
13903              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13904         using ::hypot;
13905                 ^~~~~
13906
13907         This happens because Python headers define 'hypot' to expand t
13908         '_hypot' in the Windows builds.
13909         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13910         'hypoth'.  This avoids a compilation error.
13911
13912 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13913
13914         * MAINTAINERS (Write After Approval): Fix ordering.
13915
13916 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13917
13918         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13919
13920 2018-01-26  Alan Modra  <amodra@gmail.com>
13921
13922         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13923         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13924         Remove nop.  Make const.  Comment.
13925         (powerpc32_plt_stub_so_2): New.
13926         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13927         Correct count.  Update uses.
13928         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13929         Move common code reading PLT entry word.  Correct
13930         powerpc32_plt_stub PLT address calculation.
13931         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13932         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13933         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13934         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13935         (ppc64_standard_linkage8): Likewise.
13936         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13937         Correct insns description.
13938         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13939
13940 2018-01-24  Pedro Alves  <palves@redhat.com>
13941
13942         GCC PR libstdc++/83906
13943         * gdbtypes.c (operator==(const dynamic_prop &,
13944         const dynamic_prop &)): New.
13945         (operator==(const range_bounds &, const range_bounds &)): New.
13946         (check_types_equal): Use them instead of memcmp.
13947         * gdbtypes.h (operator==(const dynamic_prop &,
13948         const dynamic_prop &)): Declare.
13949         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13950         (operator==(const range_bounds &, const range_bounds &)): Declare.
13951         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13952
13953 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13954
13955         * s390-linux-tdep.c (s390_record_address_mask)
13956         (s390_record_calc_disp_common, s390_record_calc_disp)
13957         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13958         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13959         (s390_process_record): Move to s390-tdep.c.
13960         (s390_linux_init_abi_any): Adjust.
13961         * s390-tdep.c (s390_record_address_mask)
13962         (s390_record_calc_disp_common, s390_record_calc_disp)
13963         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13964         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13965         (s390_process_record): Moved from s390-linux-tdep.c
13966         (s390_gdbarch_init): Adjust.
13967
13968 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13969
13970         * s390-linux-nat.c (s390-tdep.h): New include.
13971         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13972         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13973         (ALLDEPFILES): Add s390-tdep.c.
13974         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13975         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13976         * s390-tdep.h: ...this.  New file.
13977         * s390-linux-tdep.c (s390-tdep.h): New include.
13978         (_initialize_s390_tdep): Rename to...
13979         (_initialize_s390_linux_tdep): ...this and adjust.
13980         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13981         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13982         s390-tdep.h.
13983         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13984         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13985         (s390_is_partial_instruction, s390_software_single_step)
13986         (is_non_branch_ril, s390_displaced_step_copy_insn)
13987         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13988         (s390_prologue_data, s390_addr, s390_store, s390_load)
13989         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13990         (s390_register_call_saved, s390_guess_tracepoint_registers)
13991         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
13992         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
13993         (s390_pseudo_register_name, s390_pseudo_register_type)
13994         (s390_pseudo_register_read, s390_pseudo_register_write)
13995         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
13996         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
13997         (s390_addr_bits_remove, s390_address_class_type_flags)
13998         (s390_address_class_type_flags_to_name)
13999         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14000         (s390_function_arg_float, s390_function_arg_vector)
14001         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14002         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14003         (s390_frame_align, s390_register_return_value, s390_return_value)
14004         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14005         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14006         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14007         (s390_trad_frame_prev_register, s390_unwind_cache)
14008         (s390_prologue_frame_unwind_cache)
14009         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14010         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14011         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14012         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14013         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14014         (s390_frame_base_address, s390_local_base_address)
14015         (s390_frame_base, s390_gcc_target_options)
14016         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14017         (s390_validate_reg_range, s390_tdesc_valid)
14018         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14019         * s390-tdep.c: ...this.  New file.
14020
14021 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14022
14023         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14024         (s390_process_record, s390_gdbarch_tdep_alloc)
14025         (s390_linux_init_abi_any): Use/set new hook.
14026
14027 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14028
14029         * s390-linux-tdep.c (osabi.h): New include.
14030         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14031         (s390_linux_init_abi_any): New functions.
14032         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14033
14034 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14035
14036         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14037         tdesc_has_registers check
14038
14039 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14040
14041         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14042         (s390_validate_reg_range): New macro.
14043         (s390_gdbarch_init): Adjust.
14044
14045 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14046
14047         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14048         (s390_gdbarch_tdep_alloc): Adjust.
14049         (s390_gdbarch_init): Adjust.
14050
14051 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14052
14053         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14054         <have_tdb>: Change type to bool.
14055         (s390_gdbarch_tdep_alloc): Adjust.
14056         (s390_gdbarch_init): Adjust.
14057
14058 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14059
14060         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14061         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14062         (s390_gdbarch_tdep_alloc): New function.
14063         (s390_gdbarch_init): Allocate tdep at start and use its fields
14064         instead of separate variables.
14065
14066 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14067
14068         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14069         when looking for cached gdbarch and add comment for remaining.
14070
14071 2018-01-22  Pedro Alves  <palves@redhat.com>
14072             Sergio Durigan Junior  <sergiodj@redhat.com>
14073
14074         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14075         case.
14076
14077 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14078
14079         * MAINTAINERS: Update my company e-mail address.
14080
14081 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14082
14083         * regcache.c (cooked_write_test): New function.
14084         (_initialize_regcache): Register the test.
14085
14086 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14087
14088         * ia64-tdep.c (ia64_pseudo_register_read): Call
14089         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14090         * m32c-tdep.c (m32c_cat_read): Likewise.
14091         (m32c_r3r2r1r0_read): Likewise.
14092         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14093         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14094
14095 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14096
14097         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14098         method raw_read instead of regcache_raw_read.
14099         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14100         * arm-tdep.c (arm_neon_quad_read): Likewise.
14101         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14102         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14103         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14104         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14105         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14106         (i386_pseudo_register_read_into_value): Likewise.
14107         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14108         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14109         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14110         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14111         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14112         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14113         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14114         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14115         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14116
14117 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14118
14119         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14120         * configure.tgt: Remove target mt.
14121         * mt-tdep.c: Remove.
14122         * regcache.c (cooked_read_test): Remove the check for mt.
14123
14124 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14125
14126         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14127         instead of gdbarch_pseudo_register_read_value.
14128
14129 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14130
14131         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14132         language is Ada.
14133
14134 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14135
14136         * linespec.c (create_sals_line_offset): Remove code that preserved
14137         the symtab_and_line's line number.
14138
14139 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14140
14141         * varobj.c (varobj_create): Don't set valid_block when creating a
14142         floating varobj.
14143
14144 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14145
14146         * varobj.c (varobj_create): Remove out of date comment.
14147
14148 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14149
14150         PR mi/20395
14151         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14152         updating innermost block.
14153         * parse.c (innermost_block_tracker::update): Take extra type
14154         parameter, and check types match before updating innermost block.
14155         (write_dollar_variable): Update innermost block for registers.
14156         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14157         (innermost_block_tracker::innermost_block_tracker): Initialise
14158         m_types member.
14159         (innermost_block_tracker::reset): Take type parameter.
14160         (innermost_block_tracker::update): Take type parameter, and pass
14161         type through as needed.
14162         (innermost_block_tracker::m_types): New member.
14163         * varobj.c (varobj_create): Pass type when reseting innermost
14164         block.
14165
14166 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14167
14168         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14169         * ada-lang.c (resolve_subexp): Likewise.
14170         * breakpoint.c (set_breakpoint_condition) Likewise.
14171         (watch_command_1) Likewise.
14172         * c-exp.y (variable): Likewise.
14173         * d-exp.y (PrimaryExpression): Likewise.
14174         * f-exp.y (variable): Likewise.
14175         * go-exp.y (variable): Likewise.
14176         * m2-exp.y (variable): Likewise.
14177         * objfiles.c (objfile::~objfile): Likewise.
14178         * p-exp.y (variable): Likewise.
14179         * parse.c (innermost_block): Change type.
14180         * parser-defs.h (class innermost_block_tracker): New.
14181         (innermost_block): Change to innermost_block_tracker.
14182         * printcmd.c (display_command): Switch to innermost_block API.
14183         (do_one_display): Likewise.
14184         * rust-exp.y (do_one_display): Likewise.
14185         * symfile.c (clear_symtab_users): Likewise.
14186         * varobj.c (varobj_create): Switch to innermost_block API, replace
14187         use of innermost_block with block stored on varobj object.
14188
14189 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14190
14191         * expression.h (innermost_block): Remove declaration.
14192         * varobj.c: Add 'parser-defs.h' include.
14193
14194 2018-01-19  Tom Tromey  <tom@tromey.com>
14195
14196         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14197         symbols in the static and global blocks.
14198
14199 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14200
14201         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14202         gdb_ptrace.h, and move including gdb_wait.h ...
14203         * nat/linux-ptrace.h: ... to here.
14204
14205 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14206
14207         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14208         inf_ptrace_detach_success.
14209         (inf_ptrace_detach_success): Add inferior parameter, use it
14210         instead of inferior_ptid, pass it to detach_inferior.
14211         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14212         parameter.
14213         * inferior.c (detach_inferior): Add overload that takes an
14214         inferior object.
14215         * inferior.h (detach_inferior): Likewise.
14216         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14217         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14218         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14219
14220 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14221
14222         * target.h (struct target_ops) <to_detach>: Add inferior
14223         parameter.
14224         (target_detach): Likewise.
14225         * target.c (dispose_inferior): Pass inferior down.
14226         (target_detach): Pass inferior down.  Assert that it is equal to
14227         the current inferior.
14228         * aix-thread.c (aix_thread_detach): Pass inferior down.
14229         * corefile.c (core_file_command): Pass current_inferior() down.
14230         * corelow.c (core_detach): Add inferior parameter.
14231         * darwin-nat.c (darwin_detach): Likewise.
14232         * gnu-nat.c (gnu_detach): Likewise.
14233         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14234         * infcmd.c (detach_command): Pass current_inferior() down to
14235         target_detach.
14236         * infrun.c (follow_fork_inferior): Pass parent_inf to
14237         target_detach.
14238         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14239         target_detach.
14240         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14241         * linux-thread-db.c (thread_db_detach): Likewise.
14242         * nto-procfs.c (procfs_detach): Likewise.
14243         * procfs.c (procfs_detach): Likewise.
14244         * record.c (record_detach): Likewise.
14245         * record.h (struct inferior): Forward-declare.
14246         (record_detach): Add inferior parameter.
14247         * remote-sim.c (gdbsim_detach): Likewise.
14248         * remote.c (remote_detach_1): Likewise.
14249         (remote_detach): Likewise.
14250         (extended_remote_detach): Likewise.
14251         * sol-thread.c (sol_thread_detach): Likewise.
14252         * target-debug.h (target_debug_print_inferior_p): New macro.
14253         * target-delegates.c: Re-generate.
14254         * top.c (kill_or_detach): Pass inferior down to target_detach.
14255         * windows-nat.c (windows_detach): Add inferior parameter.
14256
14257 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14258
14259         * target.h (struct target_ops) <to_detach>: Remove args
14260         parameter.
14261         (target_detach): Likewise.
14262         * target.c (dispose_inferior): Adjust.
14263         (target_detach): Remove args parameter, adjust.
14264         * aix-thread.c (aix_thread_detach): Adjust.
14265         * corefile.c (core_file_command): Adjust.
14266         * corelow.c (core_detach): Adjust.
14267         * darwin-nat.c (darwin_detach): Adjust.
14268         * gnu-nat.c (gnu_detach): Adjust.
14269         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14270         * infcmd.c (detach_command): Adjust
14271         * infrun.c (follow_fork_inferior): Adjust.
14272         (handle_vfork_child_exec_or_exit): Adjust.
14273         * linux-fork.c (linux_fork_detach): Remove args parameter.
14274         * linux-fork.h (linux_fork_detach): Likewise.
14275         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14276         * linux-thread-db.c (thread_db_detach): Likewise.
14277         * nto-procfs.c (procfs_detach): Likewise.
14278         * procfs.c (procfs_detach): Likewise.
14279         (do_detach): Remove signo parameter.
14280         * record.c (record_detach): Remove args parameter.
14281         * record.h (record_detach): Likewise.
14282         * remote-sim.c (gdbsim_detach): Likewise.
14283         * remote.c (remote_detach_1): Likewise.
14284         (remote_detach): Likewise.
14285         (extended_remote_detach): Likewise.
14286         * sol-thread.c (sol_thread_detach): Likewise.
14287         * target-delegates.c: Re-generate.
14288         * top.c (struct qt_args) <args>: Remove field.
14289         (kill_or_detach): Don't pass args.
14290         (quit_force): Don't set args.
14291         * windows-nat.c (windows_detach): Remove args parameter.
14292
14293 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14294
14295         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14296         (arm_linux_init_abi): Install it.
14297
14298 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14299
14300         * osabi.c (gdb_osabi_names): Extend the regexp for
14301         arm-linux-gnueabihf.
14302
14303 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14304
14305         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14306         m_abbrevs.
14307         (abbrev_table::add_abbrev): Update.
14308         (abbrev_table::lookup_abbrev): Update.
14309
14310 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14311
14312         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14313
14314 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14315
14316         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14317         to "std::string".
14318
14319 2018-01-17  Tom Tromey  <tom@tromey.com>
14320
14321         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14322
14323 2018-01-17  Tom Tromey  <tom@tromey.com>
14324
14325         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14326         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14327         (create_array_type_with_stride): Update.
14328         * dwarf2read.c (set_die_type): Update.
14329
14330 2018-01-17  Tom Tromey  <tom@tromey.com>
14331
14332         * dwarf2read.c (delayed_method_info): Remove typedef.
14333         (dwarf2_cu::method_info): Now a std::vector.
14334         (add_to_method_list): Update.
14335         (free_delayed_list): Remove.
14336         (compute_delayed_physnames): Update.
14337         (process_full_comp_unit, process_full_type_unit): Clear the method
14338         list.  Remove cleanups.
14339         (psymtab_include_file_name): Add name_holder parameter.  Use
14340         unique_xmalloc_ptr.
14341         (dwarf_decode_lines): Update.
14342
14343 2018-01-17  Tom Tromey  <tom@tromey.com>
14344             Simon Marchi  <simon.marchi@ericsson.com>
14345
14346         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14347         (dwarf2_per_objfile::free_cached_comp_units)
14348         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14349         (init_cutu_and_read_dies_no_follow): Update.
14350         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14351         (dwarf2_cu::~dwarf2_cu): New.
14352         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14353         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14354
14355 2018-01-17  Tom Tromey  <tom@tromey.com>
14356             Simon Marchi  <simon.marchi@ericsson.com>
14357
14358         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14359         (struct die_reader_specs) <abbrev_table>: New member.
14360         (struct abbrev_table): Add constructor.
14361         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14362         <abbrev_obstack>: Now an auto_obstack.
14363         (abbrev_table_up): New typedef.
14364         (init_cu_die_reader): Add abbrev_table parameter.
14365         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14366         Add result_dwo_abbrev_table.
14367         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14368         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14369         Update.
14370         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14371         parameter.
14372         (skip_children): Update.
14373         (abbrev_table::alloc_abbrev): Rename from
14374         abbrev_table_alloc_abbrev.
14375         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14376         (abbrev_table::lookup_abbrev): Rename from
14377         abbrev_table_lookup_abbrev.
14378         (abbrev_table_read_table): Return abbrev_table_up.
14379         (abbrev_table_free, abbrev_table_free_cleanup)
14380         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14381         (load_partial_dies): Update.
14382
14383 2018-01-17  Tom Tromey  <tom@tromey.com>
14384
14385         * dwarf2read.c (dwarf2_compute_name): Update comment.
14386         (read_func_scope, read_variable): Update.
14387         (new_symbol): Remove.
14388         (new_symbol_full): Rename to new_symbol.
14389
14390 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14391
14392         PR gdb/16577
14393         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14394         a warning instead of throwing an error, set section size to 0 and return
14395         NULL.
14396         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14397
14398 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14399
14400         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14401         std::string.
14402         (linux_ptrace_attach_fail_reason_string): Likewise.
14403         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14404         Likewise.
14405         (linux_ptrace_attach_fail_reason_string): Likewise.
14406         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14407
14408 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14409
14410         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14411
14412 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14413
14414         PR gdb/21559
14415         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14416         checking for fs_base/gs_base fields in struct user_regs_struct.
14417         * configure: Regenerate.
14418
14419 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14420
14421         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14422         function.
14423         (aarch64_linux_init_abi): Install it to gdbarch hook
14424         gcc_target_options.
14425
14426 2018-01-15  Pedro Alves  <palves@redhat.com>
14427
14428         * common/signals-state-save-restore.c
14429         (save_original_signals_state): Fix typos.
14430
14431 2017-01-12  Tom Tromey  <tom@tromey.com>
14432             Sergio Durigan Junior  <sergiodj@redhat.com>
14433
14434         * Makefile.in (install-only): Install gdb-add-index.
14435
14436 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14437
14438         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14439
14440 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14441
14442         * infrun.c (keep_going_pass_signal): Clear step-over info when
14443         insert_breakpoints fails.
14444
14445 2018-01-11  Pedro Alves  <palves@redhat.com>
14446
14447         PR gdb/22583
14448         * infrun.c (resume): Rename to ...
14449         (resume_1): ... this.
14450         (resume): Reimplement as wrapper around resume_1.
14451
14452 2018-01-11  Pedro Alves  <palves@redhat.com>
14453
14454         PR remote/22597
14455         * remote.c (remote_parse_stop_reply): Default to the last-set
14456         general thread instead of to 'magic_null_ptid'.
14457
14458 2018-01-10  Pedro Alves  <palves@redhat.com>
14459
14460         * language.h (language_get_symbol_name_matcher): Rename ...
14461         (get_symbol_name_matcher): ... this.
14462         * language.c (language_get_symbol_name_matcher): Ditto.
14463         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14464         callers adjusted.
14465
14466 2018-01-10  Pedro Alves  <palves@redhat.com>
14467
14468         PR gdb/22670
14469         * dwarf2read.c
14470         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14471         Adjust to use language_get_symbol_name_matcher instead of
14472         language_defn::la_get_symbol_name_matcher.
14473         * language.c (language_get_symbol_name_matcher): If in Ada mode
14474         and the lookup name is a verbatim match, return Ada's matcher.
14475         * language.h (language_get_symbol_name_matcher): Adjust comment.
14476         (ada_lookup_name_info::verbatim_p):: New method.
14477
14478 2018-01-10  Pedro Alves  <palves@redhat.com>
14479
14480         PR gdb/22670
14481         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14482         minsym's language is language_auto or language_cplus, pass down
14483         language_ada instead.
14484         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14485
14486 2018-01-10  Pedro Alves  <palves@redhat.com>
14487
14488         PR gdb/22670
14489         * minsyms.c (linkage_name_str): New function.
14490         (iterate_over_minimal_symbols): Use it.
14491
14492 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14493
14494         * NEWS: Document that 'info proc' now works on FreeBSD.
14495
14496 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14497
14498         * configure.ac: Check for kinfo_getfile in libutil.
14499         * configure: Regenerate.
14500         * config.in: Regenerate.
14501         * fbsd-nat.c: Include "fbsd-tdep.h".
14502         (fbsd_fetch_cmdline): New.
14503         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14504         rather than calling error.
14505         (fbsd_info_proc): New.
14506         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14507         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14508         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14509
14510 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14511
14512         * fbsd-nat.c (struct free_deleter): Remove.
14513         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14514
14515 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14516
14517         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14518         NULL for an empty pathname.
14519
14520 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14521
14522         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14523         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14524         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14525         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14526         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14527         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14528         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14529         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14530         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14531         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14532         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14533         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14534         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14535         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14536         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14537
14538 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14539
14540         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14541         (gnu_xfer_auxv): New function.
14542         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14543         TARGET_OBJECT_AUXV.
14544
14545 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14546             Simon Marchi  <simon.marchi@ericsson.com>
14547
14548         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14549         common/selftest.c.
14550         (COMMON_OBS): Remove selftest.o.
14551         * configure.ac: Append selftest-arch.c and common/selftest.c to
14552         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14553         * configure: Re-generated.
14554         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14555         GDB_SELF_TEST.
14556         (maintenance_info_selftests): Likewise.
14557
14558 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14559
14560         * ada-valprint.c (val_print_packed_array_elements): Use
14561         proper number of elements when printing an array indexed
14562         by an enumeration type.
14563
14564 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14565
14566         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14567         (dw2_get_file_names_reader): Adjust.
14568         (lookup_dwo_signatured_type): Adjust.
14569         (lookup_dwp_signatured_type): Adjust.
14570         (lookup_signatured_type): Adjust.
14571         (create_type_unit_group): Adjust.
14572         (get_type_unit_group): Adjust.
14573         (process_psymtab_comp_unit_reader): Adjust.
14574         (build_type_psymtabs_reader): Adjust.
14575         (scan_partial_symbols): Adjust.
14576         (add_partial_symbol): Adjust.
14577         (add_partial_subprogram): Adjust.
14578         (peek_die_abbrev): Adjust.
14579         (fixup_go_packaging): Adjust.
14580         (process_imported_unit_die): Adjust.
14581         (dwarf2_compute_name): Adjust.
14582         (dwarf2_physname): Adjust.
14583         (read_import_statement): Adjust.
14584         (handle_DW_AT_stmt_list): Adjust.
14585         (read_file_scope): Adjust.
14586         (read_func_scope): Adjust.
14587         (read_lexical_block_scope): Adjust.
14588         (read_call_site_scope): Adjust.
14589         (read_variable): Adjust.
14590         (dwarf2_rnglists_process): Adjust.
14591         (dwarf2_ranges_process): Adjust.
14592         (dwarf2_ranges_read): Adjust.
14593         (dwarf2_get_pc_bounds): Adjust.
14594         (dwarf2_record_block_ranges): Adjust.
14595         (dwarf2_add_field): Adjust.
14596         (dwarf2_add_member_fn): Adjust.
14597         (read_structure_type): Adjust.
14598         (process_structure_scope): Adjust.
14599         (read_enumeration_type): Adjust.
14600         (read_array_type): Adjust.
14601         (mark_common_block_symbol_computed): Adjust.
14602         (read_common_block): Adjust.
14603         (read_namespace_type): Adjust.
14604         (read_namespace): Adjust.
14605         (read_module_type): Adjust.
14606         (read_tag_pointer_type): Adjust.
14607         (read_tag_ptr_to_member_type): Adjust.
14608         (read_tag_string_type): Adjust.
14609         (read_subroutine_type): Adjust.
14610         (read_typedef): Adjust.
14611         (read_base_type): Adjust.
14612         (attr_to_dynamic_prop): Adjust.
14613         (read_subrange_type): Adjust.
14614         (read_unspecified_type): Adjust.
14615         (dwarf2_read_abbrevs): Adjust.
14616         (load_partial_dies): Adjust.
14617         (read_partial_die): Adjust.
14618         (find_partial_die): Adjust.
14619         (guess_partial_die_structure_name): Adjust.
14620         (fixup_partial_die): Adjust.
14621         (read_attribute_value): Adjust.
14622         (read_addr_index): Adjust.
14623         (read_addr_index_from_leb128): Adjust.
14624         (read_str_index): Adjust.
14625         (dwarf2_string_attr): Adjust.
14626         (get_debug_line_section): Adjust.
14627         (dwarf_decode_line_header): Adjust.
14628         (lnp_state_machine::check_line_address): Adjust.
14629         (dwarf_decode_lines_1): Adjust.
14630         (dwarf_decode_lines): Adjust.
14631         (dwarf2_start_symtab): Adjust.
14632         (var_decode_location): Adjust.
14633         (new_symbol_full): Adjust.
14634         (dwarf2_const_value_data): Adjust.
14635         (dwarf2_const_value_attr): Adjust.
14636         (dwarf2_const_value): Adjust.
14637         (die_type): Adjust.
14638         (die_containing_type): Adjust.
14639         (build_error_marker_type): Adjust.
14640         (lookup_die_type): Adjust.
14641         (guess_full_die_structure_name): Adjust.
14642         (anonymous_struct_prefix): Adjust.
14643         (determine_prefix): Adjust.
14644         (dwarf2_name): Adjust.
14645         (follow_die_ref_or_sig): Adjust.
14646         (follow_die_offset): Adjust.
14647         (follow_die_ref): Adjust.
14648         (follow_die_sig_1): Adjust.
14649         (follow_die_sig): Adjust.
14650         (get_signatured_type): Adjust.
14651         (get_DW_AT_signature_type): Adjust.
14652         (decode_locdesc): Adjust.
14653         (dwarf_decode_macros): Adjust.
14654         (cu_debug_loc_section): Adjust.
14655         (fill_in_loclist_baton): Adjust.
14656         (dwarf2_symbol_mark_computed): Adjust.
14657         (init_one_comp_unit): Don't assign
14658         dwarf2_cu::dwarf2_per_objfile.
14659         (set_die_type): Adjust.
14660
14661 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14662
14663         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14664         <dwarf2_per_objfile>: New field.
14665         (dwarf2_per_objfile): Remove global.
14666         (get_dwarf2_per_objfile): New function.
14667         (set_dwarf2_per_objfile): New function.
14668         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14669         dwarf2_per_objfile.
14670         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14671         (read_abbrev_offset): Likewise.
14672         (read_indirect_string): Likewise.
14673         (read_indirect_line_string): Likewise.
14674         (read_indirect_string_at_offset): Likewise.
14675         (read_indirect_string_from_dwz): Likewise.
14676         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14677         dwarf2_per_objfile.
14678         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14679         (create_all_comp_units): Change objfile parameter to
14680         dwarf2_per_objfile.
14681         (create_all_type_units): Likewise.
14682         (process_queue): Add dwarf2_per_objfile parameter.
14683         (read_and_check_comp_unit_head): Likewise.
14684         (lookup_dwo_unit_in_dwp): Likewise.
14685         (get_dwp_file): Likewise.
14686         (process_cu_includes): Likewise.
14687         (struct free_dwo_file_cleanup_data): New struct.
14688         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14689         set_dwarf2_per_objfile.
14690         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14691         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14692         context, adjust calls.
14693         (dw2_instantiate_symtab): Likewise.
14694         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14695         (dw2_get_cu): Likewise.
14696         (create_cu_from_index_list): Change objfile parameter to
14697         dwarf2_per_objfile.
14698         (create_cus_from_index_list): Get dwarf2_per_objfile from
14699         context, adjust calls.
14700         (create_cus_from_index): Likewise.
14701         (create_signatured_type_table_from_index): Change objfile
14702         parameter to dwarf2_per_objfile.
14703         (create_signatured_type_table_from_debug_names): Change objfile
14704         parameter to dwarf2_per_objfile.
14705         (create_addrmap_from_index): Likewise.
14706         (create_addrmap_from_aranges): Likewise.
14707         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14708         (dw2_setup): Remove.
14709         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14710         context.
14711         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14712         get_dwarf2_per_objfile.
14713         (dw2_forget_cached_source_info): Likewise.
14714         (dw2_map_symtabs_matching_filename): Likewise.
14715         (struct dw2_symtab_iterator) <index>: Remove.
14716         <dwarf2_per_objfile>: New field.
14717         (dw2_symtab_iter_init): Replace index parameter with
14718         dwarf2_per_objfile.
14719         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14720         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14721         (dw2_print_stats): Likewise.
14722         (dw2_dump): Likewise.
14723         (dw2_expand_symtabs_for_function): Likewise.
14724         (dw2_expand_all_symtabs): Likewise.
14725         (dw2_expand_symtabs_with_fullname): Likewise.
14726         (dw2_expand_marked_cus): Replace index and objfile parameters
14727         with dwarf2_per_objfile.
14728         (dw_expand_symtabs_matching_file_matcher): Add
14729         dwarf2_per_objfile parameter and adjust calls.
14730         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14731         adjust calls.
14732         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14733         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14734         adjust calls.
14735         (create_cus_from_debug_names_list): Replace objfile parameter
14736         with dwarf2_per_objfile and adjust calls.
14737         (create_cus_from_debug_names): Likewise.
14738         (dwarf2_read_debug_names): Likewise.
14739         (mapped_debug_names::namei_to_name): Adjust call.
14740         (dw2_debug_names_iterator::next): Likewise.
14741         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14742         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14743         (dw2_debug_names_dump): Likewise.
14744         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14745         (dw2_debug_names_expand_symtabs_matching): Likewise.
14746         (dwarf2_initialize_objfile): Likewise.
14747         (dwarf2_build_psymtabs): Likewise.
14748         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14749         this_cu.
14750         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14751         (read_and_check_comp_unit_head): Likewise.
14752         (read_abbrev_offset): Likewise.
14753         (create_debug_type_hash_table): Likewise.
14754         (create_debug_types_hash_table): Likewise.
14755         (create_all_type_units): Replace objfile parameter with
14756         dwarf2_per_objfile.
14757         (add_type_unit): Add dwarf2_per_objfile parameter.
14758         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14759         with dwarf2_per_objfile.
14760         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14761         (lookup_dwp_signatured_type): Likewise.
14762         (lookup_signatured_type): Likewise.
14763         (read_cutu_die_from_dwo): Likewise.
14764         (init_tu_and_read_dwo_dies): Likewise.
14765         (init_cutu_and_read_dies): Likewise.
14766         (init_cutu_and_read_dies_no_follow): Likewise.
14767         (allocate_type_unit_groups_table): Add objfile parameter.
14768         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14769         (get_type_unit_group): Likewise.
14770         (process_psymtab_comp_unit): Update call.
14771         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14772         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14773         (print_tu_stats): Likewise.
14774         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14775         in void* parameter.
14776         (build_type_psymtabs): Change objfile parameter to
14777         dwarf2_per_objfile.
14778         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14779         passed in void* parameter.
14780         (process_skeletonless_type_units): Change objfile parameter to
14781         dwarf2_per_objfile.
14782         (set_partial_user): Likewise.
14783         (dwarf2_build_psymtabs_hard): Likewise.
14784         (read_comp_units_from_section): Likewise.
14785         (create_all_comp_units): Likewise.
14786         (scan_partial_symbols): Update calls.
14787         (add_partial_symbol): Likewise.
14788         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14789         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14790         (process_queue): Add dwarf2_per_objfile parameter.
14791         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14792         (compute_compunit_symtab_includes): Likewise.
14793         (process_cu_includes): Add dwarf2_per_objfile parameter.
14794         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14795         (process_full_type_unit): Likewise.
14796         (process_imported_unit_die): Update call.
14797         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14798         (read_file_scope): Likewise.
14799         (allocate_dwo_file_hash_table): Add objfile parameter.
14800         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14801         (create_cus_hash_table): Likewise.
14802         (create_dwp_hash_table): Likewise.
14803         (create_dwo_unit_in_dwp_v1): Likewise.
14804         (create_dwp_v2_section): Likewise.
14805         (create_dwo_unit_in_dwp_v2): Likewise.
14806         (lookup_dwo_unit_in_dwp): Likewise.
14807         (try_open_dwop_file): Likewise.
14808         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14809         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14810         cleanup to include a reference to dwarf2_per_objfile.
14811         (open_dwp_file): Add dwarf2_per_objfile parameter.
14812         (open_and_init_dwp_file): Likewise.
14813         (get_dwp_file): Likewise.
14814         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14815         (queue_and_load_all_dwo_tus): Update call.
14816         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14817         data.
14818         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14819         (dwarf2_ranges_process): Likewise.
14820         (dwarf2_get_pc_bounds): Likewise.
14821         (mark_common_block_symbol_computed): Likewise.
14822         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14823         (dwarf2_read_abbrevs): Update call.
14824         (read_partial_die): Use dwarf2_per_objfile from cu.
14825         (find_partial_die): Likewise.
14826         (fixup_partial_die): Likewise.
14827         (read_attribute_value): Likewise.
14828         (read_indirect_string_at_offset_from): Add objfile parameter.
14829         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14830         parameter.
14831         (read_indirect_string_from_dwz): Add objfile parameter.
14832         (read_indirect_string): Add objfile parameter.
14833         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14834         (read_addr_index): Use dwarf2_per_objfile from cu.
14835         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14836         call dw2_setup.
14837         (read_str_index): Use dwarf2_per_objfile from cu.
14838         (get_debug_line_section): Likewise.
14839         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14840         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14841         (new_symbol_full): Use dwarf2_per_objfile from cu.
14842         (build_error_marker_type): Likewise.
14843         (lookup_die_type): Likewise.
14844         (determine_prefix): Likewise.
14845         (follow_die_offset): Likewise.
14846         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14847         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14848         (dwarf2_fetch_die_type_sect_off): Likewise.
14849         (dwarf2_get_die_type): Likewise.
14850         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14851         (get_signatured_type): Likewise.
14852         (get_DW_AT_signature_type): Likewise.
14853         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14854         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14855         (cu_debug_loc_section): Likewise.
14856         (fill_in_loclist_baton): Likewise.
14857         (dwarf2_symbol_mark_computed): Likewise.
14858         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14859         dwarf2_per_objfile.
14860         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14861         parameter.
14862         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14863         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14864         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14865         (set_die_type): Use dwarf2_free_objfile from cu.
14866         (get_die_type_at_offset): Likewise.
14867         (dwarf2_per_objfile_free): Don't assign global variable.
14868         (debug_names) <constructor>: Add dwarf2_per_objfile
14869         parameter, update m_debugstrlookup construction.
14870         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14871         parameter.
14872         <m_dwarf2_per_objfile>: New field.
14873         <lookup>: Use m_dwarf2_per_objfile.
14874         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14875         (psyms_seen_size): Likewise.
14876         (write_gdbindex): Replace objfile parameter with
14877         dwarf2_per_objfile.
14878         (write_debug_names): Likewise.
14879         (write_psymtabs_to_index): Likewise.
14880         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14881         calls.
14882
14883 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14884
14885         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14886         <dwarf2_per_objfile>: New field.
14887         (struct dwarf2_per_cu_data) <objfile>: Remove.
14888         <dwarf2_per_objfile>: New field.
14889         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14890         of objfile.
14891         (create_signatured_type_table_from_index): Likewise.
14892         (create_debug_type_hash_table): Likewise.
14893         (fill_in_sig_entry_from_dwo_entry): Likewise.
14894         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14895         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14896         objfile.
14897         (create_partial_symtab): Access objfile through
14898         dwarf2_per_objfile.
14899         (process_psymtab_comp_unit_reader): Likewise.
14900         (read_comp_units_from_section): Likewise.
14901         (scan_partial_symbols): Likewise.
14902         (add_partial_symbol): Likewise.
14903         (add_partial_subprogram): Likewise.
14904         (peek_die_abbrev): Likewise.
14905         (fixup_go_packaging): Likewise.
14906         (process_full_comp_unit): Likewise.
14907         (process_full_type_unit): Likewise.
14908         (process_imported_unit_die): Likewise.
14909         (dwarf2_compute_name): Likewise.
14910         (dwarf2_physname): Likewise.
14911         (read_import_statement): Likewise.
14912         (create_cus_hash_table): Assign dwarf2_physname instead of
14913         objfile.
14914         (read_func_scope): Access objfile through dwarf2_per_objfile.
14915         (read_lexical_block_scope): Likewise.
14916         (read_call_site_scope): Likewise.
14917         (read_variable): Likewise.
14918         (dwarf2_rnglists_process): Likewise.
14919         (dwarf2_ranges_process): Likewise.
14920         (dwarf2_ranges_read): Likewise.
14921         (dwarf2_record_block_ranges): Likewise.
14922         (dwarf2_add_field): Likewise.
14923         (dwarf2_add_member_fn): Likewise.
14924         (read_structure_type): Likewise.
14925         (process_structure_scope): Likewise.
14926         (read_enumeration_type): Likewise.
14927         (read_array_type): Likewise.
14928         (read_common_block): Likewise.
14929         (read_namespace_type): Likewise.
14930         (read_namespace): Likewise.
14931         (read_module_type): Likewise.
14932         (read_tag_pointer_type): Likewise.
14933         (read_tag_ptr_to_member_type): Likewise.
14934         (read_tag_string_type): Likewise.
14935         (read_subroutine_type): Likewise.
14936         (read_typedef): Likewise.
14937         (read_base_type): Likewise.
14938         (attr_to_dynamic_prop): Likewise.
14939         (read_subrange_type): Likewise.
14940         (read_unspecified_type): Likewise.
14941         (load_partial_dies): Likewise.
14942         (read_partial_die): Likewise.
14943         (find_partial_die): Likewise.
14944         (guess_partial_die_structure_name): Likewise.
14945         (fixup_partial_die): Likewise.
14946         (read_attribute_value): Likewise.
14947         (read_addr_index_from_leb128): Likewise.
14948         (dwarf2_read_addr_index): Likewise.
14949         (dwarf2_string_attr): Likewise.
14950         (lnp_state_machine::check_line_address): Likewise.
14951         (dwarf_decode_lines_1): Likewise.
14952         (dwarf_decode_lines): Likewise.
14953         (dwarf2_start_symtab): Likewise.
14954         (var_decode_location): Likewise.
14955         (new_symbol_full): Likewise.
14956         (dwarf2_const_value_data): Likewise.
14957         (dwarf2_const_value_attr): Likewise.
14958         (dwarf2_const_value): Likewise.
14959         (die_type): Likewise.
14960         (die_containing_type): Likewise.
14961         (lookup_die_type): Likewise.
14962         (guess_full_die_structure_name): Likewise.
14963         (anonymous_struct_prefix): Likewise.
14964         (dwarf2_name): Likewise.
14965         (follow_die_ref_or_sig): Likewise.
14966         (follow_die_offset): Likewise.
14967         (follow_die_ref): Likewise.
14968         (dwarf2_fetch_die_loc_sect_off): Likewise.
14969         (dwarf2_fetch_constant_bytes): Likewise.
14970         (dwarf2_fetch_die_type_sect_off): Likewise.
14971         (dwarf2_get_die_type): Likewise.
14972         (follow_die_sig): Likewise.
14973         (decode_locdesc): Likewise.
14974         (dwarf2_per_cu_objfile): Likewise.
14975         (dwarf2_per_cu_text_offset): Likewise.
14976         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14977         objfile.
14978         (set_die_type): Access objfile through
14979         dwarf2_per_objfile.
14980
14981 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14982
14983         * valprint.c (converted_character_d): Remove typedef.
14984         (DEF_VEC_O (converted_character_d)): Remove.
14985         (count_next_character): Use std::vector.
14986         (print_converted_chars_to_obstack): Likewise.
14987         (generic_printstr): Likewise.
14988
14989 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14990
14991         * xml-support.h (struct gdb_xml_value): Add constructor.
14992         <value>: Change type to unique_xmalloc_ptr.
14993         (gdb_xml_value_s): Remove typedef.
14994         (DEF_VEC_O (gdb_xml_value_s)): Remove.
14995         (gdb_xml_element_start_handler): Change parameter type to
14996         std::vector.
14997         (xml_find_attribute): Likewise.
14998         * xml-support.c (xml_find_attribute): Change parameter type to
14999         std::vector and adjust.
15000         (gdb_xml_values_cleanup): Remove.
15001         (gdb_xml_parser::start_element): Adjust to std::vector.
15002         (xinclude_start_include): Change paraeter type to std::vector
15003         and adjust.
15004         * btrace.c (check_xml_btrace_version): Likewise.
15005         (parse_xml_btrace_block): Likewise.
15006         (parse_xml_btrace_pt_config_cpu): Likewise.
15007         (parse_xml_btrace_pt): Likewise.
15008         (parse_xml_btrace_conf_bts): Likewise.
15009         (parse_xml_btrace_conf_pt): Likewise.
15010         * memory-map.c (memory_map_start_memory): Likewise.
15011         (memory_map_start_property): Likewise.
15012         * osdata.c (osdata_start_osdata): Likewise.
15013         (osdata_start_item): Likewise.
15014         (osdata_start_column): Likewise.
15015         * remote.c (start_thread): Likewise.
15016         * solib-aix.c (library_list_start_library): Likewise.
15017         (library_list_start_list): Likewise.
15018         * solib-svr4.c (library_list_start_library): Likewise.
15019         (svr4_library_list_start_list): Likewise.
15020         * solib-target.c (library_list_start_segment): Likewise.
15021         (library_list_start_section): Likewise.
15022         (library_list_start_library): Likewise.
15023         (library_list_start_list): Likewise.
15024         * tracepoint.c (traceframe_info_start_memory): Likewise.
15025         (traceframe_info_start_tvar): Likewise.
15026         * xml-syscall.c (syscall_start_syscall): Likewise.
15027         * xml-tdesc.c (tdesc_start_target): Likewise.
15028         (tdesc_start_feature): Likewise.
15029         (tdesc_start_reg): Likewise.
15030         (tdesc_start_union): Likewise.
15031         (tdesc_start_struct): Likewise.
15032         (tdesc_start_flags): Likewise.
15033         (tdesc_start_enum): Likewise.
15034         (tdesc_start_field): Likewise.
15035         (tdesc_start_enum_value): Likewise.
15036         (tdesc_start_vector): Likewise.
15037
15038 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15039
15040         * extension.h (struct xmethod_worker) <clone>: Remove.
15041         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15042         Remove.
15043         (python_xmethod_worker::clone): Remove.
15044         * valops.c (find_overload_match): Use std::move instead of
15045         clone.
15046
15047 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15048
15049         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15050         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15051         <free_xmethod_worker_data>: Remove.
15052         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15053         <get_xmethod_arg_types>: Remove.
15054         <get_xmethod_result_type>: Remove.
15055         <invoke_xmethod>: Remove.
15056         * extension.c (new_xmethod_worker): Remove.
15057         (clone_xmethod_worker): Remove.
15058         (get_matching_xmethod_workers): Return void, pass std::vector by
15059         pointer.
15060         (get_xmethod_arg_types): Rename to...
15061         (xmethod_worker::get_arg_types): ... this, and adjust.
15062         (get_xmethod_result_type): Rename to...
15063         (xmethod_worker::get_result_type): ... this, and adjust.
15064         (invoke_xmethod): Remove.
15065         (free_xmethod_worker): Remove.
15066         (free_xmethod_worker_vec): Remove.
15067         * extension.h (enum ext_lang_rc): Move here from
15068         extension-priv.h.
15069         (struct xmethod_worker): Add constructor and destructor.
15070         <data>: Remove.
15071         <value>: Remove.
15072         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15073         virtual pure methods.
15074         <get_arg_types, get_result_type>: New methods.
15075         (xmethod_worker_ptr): Remove typedef.
15076         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15077         (xmethod_worker_vec): Remove typedef.
15078         (xmethod_worker_up): New typedef.
15079         (invoke_xmethod): Remove.
15080         (clone_xmethod_worker): Remove.
15081         (free_xmethod_worker): Remove.
15082         (free_xmethod_worker_vec): Remove.
15083         (get_xmethod_arg_types): Remove.
15084         (get_xmethod_result_type): Remove.
15085         * valops.c (find_method_list): Use std::vector, don't use
15086         intermediate vector.
15087         (value_find_oload_method_list): Use std::vector.
15088         (find_overload_match): Use std::vector.
15089         (find_oload_champ): Use std::vector.
15090         * value.c (value_free): Use operator delete.
15091         (value_of_xmethod): Rename to...
15092         (value_from_xmethod): ... this.  Don't assign
15093         xmethod_worker::value, take rvalue-reference.
15094         (result_type_of_xmethod): Adjust.
15095         (call_xmethod): Adjust.
15096         * value.h: Include extension.h.
15097         (struct xmethod_worker): Don't forward-declare.
15098         (value_of_xmethod): Rename to...
15099         (value_from_xmethod): ... this, take rvalue-reference.
15100         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15101         (struct python_xmethod_worker): ... this, add constructor and
15102         destructor.
15103         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15104         (gdbpy_free_xmethod_worker_data): Rename to...
15105         (python_xmethod_worker::~python_xmethod_worker): ... this and
15106         adjust.
15107         (gdbpy_clone_xmethod_worker_data): Rename to...
15108         (python_xmethod_worker::clone): ... this and adjust.
15109         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15110         temporary vector.
15111         (gdbpy_get_xmethod_arg_types): Rename to...
15112         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15113         (gdbpy_get_xmethod_result_type): Rename to...
15114         (python_xmethod_worker::do_get_result_type): ... this and
15115         adjust.
15116         (gdbpy_invoke_xmethod): Rename to...
15117         (python_xmethod_worker::invoke): ... this and adjust.
15118         (new_python_xmethod_worker): Rename to...
15119         (python_xmethod_worker::python_xmethod_worker): ... this and
15120         adjust.
15121         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15122         Remove.
15123         (gdbpy_free_xmethod_worker_data): Remove.
15124         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15125         (gdbpy_get_xmethod_arg_types): Remove.
15126         (gdbpy_get_xmethod_result_type): Remove.
15127         (gdbpy_invoke_xmethod): Remove.
15128         * python/python.c (python_extension_ops): Remove obsolete
15129         callbacks.
15130
15131 2018-01-05  Pedro Alves  <palves@redhat.com>
15132
15133         PR gdb/18653
15134         * common/signals-state-save-restore.c
15135         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15136         find a custom handler preinstalled, instead of internal erroring.
15137         But only warn if !quiet.
15138         * common/signals-state-save-restore.h
15139         (save_original_signals_state): New parameter 'quiet'.
15140         * main.c (captured_main_1): Move save_original_signals_state call
15141         after option handling, and pass QUIET.
15142
15143 2018-01-05  Pedro Alves  <palves@redhat.com>
15144
15145         * spu-tdep.c (spu_catch_start): Pass
15146         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15147
15148 2018-01-05  Pedro Alves  <palves@redhat.com>
15149
15150         PR gdb/22670
15151         * ada-lang.c (literal_symbol_name_matcher): New function.
15152         (ada_get_symbol_name_matcher): Use it for
15153         symbol_name_match_type::SEARCH_NAME.
15154         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15155         it down instead of assuming symbol_name_match_type::FULL.
15156         * block.h (block_lookup_symbol): New parameter 'match_type'.
15157         * c-valprint.c (print_unpacked_pointer): Use
15158         lookup_symbol_search_name instead of lookup_symbol.
15159         * compile/compile-object-load.c (get_out_value_type): Pass down
15160         symbol_name_match_type::SEARCH_NAME.
15161         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15162         symbol_name_match_type::FULL.
15163         * cp-support.c (cp_get_symbol_name_matcher): Handle
15164         symbol_name_match_type::SEARCH_NAME.
15165         * infrun.c (insert_exception_resume_breakpoint): Use
15166         lookup_symbol_search_name.
15167         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15168         * psymtab.c (maintenance_check_psymtabs): Use
15169         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15170         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15171         SYMBOL_SEARCH_NAME.
15172         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15173         if symbol_name_match_type::SEARCH_NAME.
15174         (lookup_symbol_in_language): Pass down
15175         symbol_name_match_type::FULL.
15176         (lookup_symbol_search_name): New.
15177         (lookup_language_this): Pass down
15178         symbol_name_match_type::SEARCH_NAME.
15179         (lookup_symbol_aux, lookup_local_symbol): New parameter
15180         'match_type'.  Pass it down.
15181         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15182         (lookup_symbol_search_name): New declaration.
15183         (lookup_symbol_in_block): New 'match_type' parameter.
15184
15185 2018-01-05  Pedro Alves  <palves@redhat.com>
15186
15187         PR gdb/22670
15188         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15189         ada_lookup_symbol.
15190         (ada_lookup_symbol): Reimplement in terms of
15191         ada_lookup_symbol_list, bits factored out from
15192         ada_lookup_encoded_symbol.
15193
15194 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15195
15196         * ada-exp.y (write_object_renaming): When subscripting an array
15197         using a symbol as the index, pass the block in call to
15198         ada_lookup_encoded_symbol when looking that symbol up.
15199
15200 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15201
15202         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15203         TYPE_INDEX_TYPE.
15204
15205 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15206
15207         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15208         the case where VALUE_LVAL (val0) is not lval_memory.
15209
15210 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15211
15212         * ada-valprint.c (print_optional_low_bound): Handle
15213         character-indexed array printing like boolean-indexed array
15214         printing.
15215
15216 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15217
15218         * NEWS: Create a new section for the next release branch.
15219         Rename the section of the current branch, now that it has
15220         been cut.
15221
15222 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15223
15224         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15225         * version.in: Bump version to 8.1.50.DATE-git.
15226
15227 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15228
15229         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15230         Add field.
15231         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15232         Add field.
15233         (default_exception_support_info) <catch_handlers_sym>: Add field.
15234         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15235         (ada_exception_name_addr_1): Add "catch handlers" handling.
15236         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15237         Update all callers.
15238         (create_excep_cond_exprs) <ex>: Add parameter.
15239         (re_set_exception): Update create_excep_cond_exprs call.
15240         (print_it_exception, print_one_exception, print_mention_exception)
15241         (print_recreate_exception): Add "catch handler" handling.
15242         (allocate_location_catch_handlers, re_set_catch_handlers)
15243         (check_status_catch_handlers, print_it_catch_handlers)
15244         (print_one_catch_handlers, print_mention_catch_handlers)
15245         (print_recreate_catch_handlers): New function.
15246         (catch_handlers_breakpoint_ops): New variable.
15247         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15248         Add parameter.  Add "catch handler" handling.
15249         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15250         Add "catch handler" handling.
15251         (ada_exception_catchpoint_cond_string): Add "catch handler"
15252         handling.
15253         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15254         call.
15255         (catch_ada_handlers_command): New function.
15256         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15257         operations structure.
15258         (_initialize_ada_language): Add "catch handlers" command entry.
15259         * NEWS: Document "catch handlers" feature.
15260
15261 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15262
15263         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15264         account when creating the array type of the slice.
15265         (ada_value_slice): Likewise.
15266
15267 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15268
15269         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15270         New enum value.
15271         (create_array_type_with_stride): Add byte_stride_prop parameter.
15272         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15273         New parameter.  Update all callers in this file.
15274         (array_type_has_dynamic_stride): New function.
15275         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15276         of arrays with dynamic byte strides.
15277         * dwarf2read.c (read_array_type): Add support for dynamic
15278         DW_AT_byte_stride attributes.
15279
15280 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15281
15282         * dwarf2read.c (read_unspecified_type): Treat
15283         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15284
15285 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15286
15287         Update copyright year range in all GDB files.
15288
15289 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15290
15291         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15292         and gdb/testsuite/gdb.base/step-line.c.
15293
15294 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15295
15296         * copyright.py (main): Dump the contents of
15297         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15298         even if BY_HAND is empty.
15299
15300 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15301
15302         * top.c (print_gdb_version): Update Copyright year in version
15303         message.
15304
15305 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15306
15307         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15308
15309 For older changes see ChangeLog-2017.
15310 \f
15311 Local Variables:
15312 mode: change-log
15313 left-margin: 8
15314 fill-column: 74
15315 version-control: never
15316 coding: utf-8
15317 End: