Move make_temp_filename to common/pathstuff.c
[external/binutils.git] / gdb / ChangeLog
1 2018-10-27  Tom Tromey  <tom@tromey.com>
2
3         * dwarf-index-write.c (write_psymtabs_to_index): Move
4         make_temp_filename to common/pathstuff.c.
5         * common/pathstuff.h (make_temp_filename): Declare.
6         * common/pathstuff.c (make_temp_filename): New function, moved
7         from dwarf-index-write.c.
8
9 2018-10-27  Tom Tromey  <tom@tromey.com>
10
11         * procfs.c (procfs_target::create_inferior): Use get_shell.
12         * cli/cli-cmds.c (shell_escape): Use get_shell.
13         * windows-nat.c (windows_nat_target::create_inferior): Use
14         get_shell.
15         * common/pathstuff.c (get_shell): New function.
16         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
17         (fork_inferior): Use get_shell.
18         * common/pathstuff.h (get_shell): Declare.
19
20 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
21
22         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
23
24 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
25
26         * stack.c (print_variable_and_value_data): Add preg and treg.
27         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
28         and update callers.
29         (print_frame_arg_vars): Likewise.
30         (prepare_reg): New function.
31         (info_locals_command): Extract info print args and use them.
32         (info_args_command): Likewise.
33         (_initialize_stack): Modify on-line help.
34         * symtab.c (treg_matches_sym_type_name): New function.
35         (search_symbols): New arg t_regexp.
36         (symtab_symbol_info): New args quiet, regexp, t_regexp.
37         (info_variables_command): Extract info print args and use them.
38         (info_functions_command): Likewise.
39         (info_types_command): Update call to symtab_symbol_info.
40         (_initialize_symtab): Modify on-line help.
41         * symtab.h (treg_matches_sym_type_name): New function.
42         (search_symbols): New t_regexp arg.
43
44 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
45
46         * cli-utils.c (extract_arg_maybe_quoted): New function.
47         (extract_info_print_args): New function.
48         (info_print_args_help): New function.
49         (report_unrecognized_option_error): New function.
50         * cli-utils.h (extract_arg_maybe_quoted): New function.
51         (extract_info_print_args): New function.
52         (info_print_args_help): New function.
53         (report_unrecognized_option_error): New function.
54
55 2018-10-26  Tom Tromey  <tom@tromey.com>
56
57         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
58         (compute_compunit_symtab_includes): Update.
59         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
60         (compunit_symtab_ptr): Likewise.
61
62 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
63
64         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
65         default_print_auxv_entry for specific tag values.
66
67 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
68
69         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
70
71 2018-10-26  Jim Wilson  <jimw@sifive.com>
72
73         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
74         (riscv_linux_sigframe_init): Declare.
75         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
76         (riscv_linux_sigframe): New.
77         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
78         (riscv_linux_sigframe_init): Define.
79         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
80
81         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
82         (riscv_isa_flen): Likewise.  Drop static.
83         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
84         (riscv_isa_flen): Likewise.  Declare.
85
86 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
87             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
88
89         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
90         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
91         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
92         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
93         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
94         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
95         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
96         Define.
97         (struct ppc_linux_features) <htm>: New field.
98         (ppc_linux_no_features): Add initializer for htm field.
99         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
100         new tdescs.
101         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
102         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
103         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
104         Define if not already defined.
105         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
106         and rs6000/powerpc-isa207-htm-vsx64l.
107         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
108         rs6000/powerpc-isa207-htm-vsx64l.xml.
109         * features/rs6000/power-htm-spr.xml: New file.
110         * features/rs6000/power-htm-core.xml: New file.
111         * features/rs6000/power64-htm-core.xml: New file.
112         * features/rs6000/power-htm-fpu.xml: New file.
113         * features/rs6000/power-htm-altivec.xml: New file.
114         * features/rs6000/power-htm-vsx.xml: New file.
115         * features/rs6000/power-htm-ppr.xml: New file.
116         * features/rs6000/power-htm-dscr.xml: New file.
117         * features/rs6000/power-htm-tar.xml: New file.
118         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
119         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
120         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
121         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
122         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
123         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
124         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
125         fetch_regset with HTM regsets.
126         (store_register, store_ppc_registers): Call store_regset with HTM
127         regsets.
128         (ppc_linux_nat_target::read_description): Set htm field in the
129         features struct if needed.
130         * ppc-linux-tdep.c: Include
131         features/rs6000/powerpc-isa207-htm-vsx32l.c and
132         features/rs6000/powerpc-isa207-htm-vsx64l.c.
133         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
134         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
135         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
136         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
137         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
138         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
139         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
140         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
141         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
142         (ppc32_linux_ctarregset): New globals.
143         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
144         (ppc_linux_collect_core_cpgrregset): New function.
145         (ppc_linux_iterate_over_regset_sections): Call back with the htm
146         regsets.
147         (ppc_linux_core_read_description): Check if the tm spr section is
148         present and set htm in the features struct.
149         (_initialize_ppc_linux_tdep): Call
150         initialize_tdesc_powerpc_isa207_htm_vsx32l and
151         initialize_tdesc_powerpc_isa207_htm_vsx64l.
152         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
153         Declare.
154         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
155         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
156         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
157         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
158         New fields.
159         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
160         Likewise.
161         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
162         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
163         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
164         New enum fields.
165         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
166         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
167         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
168         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
169         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
170         <PPC_CTAR_REGNUM>: Likewise.
171         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
172         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
173         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
174         (IS_CEFP_PSEUDOREG): Define.
175         (rs6000_register_name): Hide the upper halves of checkpointed VSX
176         registers.  Return names for the checkpointed DFP, VSX, and EFP
177         pseudo registers.
178         (rs6000_pseudo_register_type): Remove initial assert and raise an
179         internal error in the else clause instead.  Return types for the
180         checkpointed DFP, VSX, and EFP pseudo registers.
181         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
182         checkpointed DFP pseudo registers.
183         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
184         checkpointed VSX pseudo registers.
185         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
186         from efpr_pseudo_register_read and
187         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
188         registers.
189         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
190         Handle checkpointed DFP, VSX, and EFP registers.
191         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
192         (efp_ax_pseudo_register_collect): New functions.
193         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
194         register logic to new functions.  Handle checkpointed DFP, VSX,
195         and EFP pseudo registers.
196         (rs6000_gdbarch_init): Look for and validate the htm features.
197         Include checkpointed DFP, VSX and EFP pseudo-registers.
198         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
199         HTM registers.
200
201 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
202
203         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
204         without altivec or fpu.
205
206 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
207             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
208
209         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
210         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
211         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
212         Define if not already defined.
213         * features/rs6000/power-ebb.xml: New file.
214         * features/rs6000/power-linux-pmu.xml: New file.
215         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
216         features.
217         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
218         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
219         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
220         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
221         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
222         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
223         fetch_regset with ebb and pmu regsets.
224         (store_register, store_ppc_registers): Call store_regset with ebb
225         and pmu regsets.
226         (ppc_linux_nat_target::read_description): Set isa207 field in the
227         features struct if ebb and pmu are avaiable.
228         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
229         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
230         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
231         and pmu regsets.
232         (ppc_linux_core_read_description): Check if the pmu section is
233         present and set isa207 in the features struct.
234         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
235         (ppc32_linux_pmuregset): Declare.
236         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
237         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
238         <ppc_sier_regnum>: New field.
239         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
240         New enum values.
241         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
242         values.
243         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
244         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
245         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
246         ebb and pmu features.
247
248 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
249             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
250
251         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
252         (tdesc_powerpc_isa207_vsx64l): Declare.
253         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
254         (struct ppc_linux_features) <isa207>: New field.
255         (ppc_linux_no_features): Add initializer for isa207 field.
256         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
257         new tdescs.
258         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
259         (NT_PPC_TAR): Define if not already defined.
260         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
261         rs6000/powerpc-isa207-vsx64l.
262         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
263         rs6000/powerpc-isa207-vsx64l.xml.
264         * features/rs6000/power-tar.xml: New file.
265         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
266         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
267         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
268         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
269         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
270         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
271         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
272         fetch_regset with the TAR regset.
273         (store_register, store_ppc_registers): Call store_regset with the
274         TAR regset.
275         (ppc_linux_nat_target::read_description): Set isa207 field in the
276         features struct if needed.
277         * ppc-linux-tdep.c: Include
278         features/rs6000/powerpc-isa207-vsx32l.c and
279         features/rs6000/powerpc-isa207-vsx64l.c.
280         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
281         (ppc_linux_iterate_over_regset_sections): Call back with the tar
282         regset.
283         (ppc_linux_core_read_description): Check if the tar section is
284         present and set isa207 in the features struct.
285         (_initialize_ppc_linux_tdep): Call
286         initialize_tdesc_powerpc_isa207_vsx32l and
287         initialize_tdesc_powerpc_isa207_vsx64l.
288         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
289         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
290         (enum) <PPC_TAR_REGNUM>: New enum value.
291         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
292         feature.
293         (ppc_process_record_op31): Record changes to TAR.
294
295 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
296             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
297
298         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
299         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
300         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
301         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
302         (struct ppc_linux_features) <ppr_dscr>: New field.
303         (ppc_linux_no_features): Add initializer for ppr_dscr field.
304         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
305         new tdescs.
306         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
307         Define if not already defined.
308         * features/Makefile (WHICH): Add
309         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
310         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
311         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
312         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
313         * features/rs6000/power-dscr.xml: New file.
314         * features/rs6000/power-ppr.xml: New file.
315         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
316         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
317         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
318         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
319         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
320         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
321         * ppc-linux-nat.c: Include <sys/uio.h>.
322         (fetch_regset, store_regset, check_regset): New functions.
323         (fetch_register, fetch_ppc_registers): Call fetch_regset with
324         DSCR and PPR regsets.
325         (store_register, store_ppc_registers): Call store_regset with
326         DSCR and PPR regsets.
327         (ppc_linux_get_hwcap2): New function.
328         (ppc_linux_nat_target::read_description): Call
329         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
330         features struct if needed.
331         * ppc-linux-tdep.c: Include
332         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
333         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
334         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
335         (ppc32_linux_dscrregset): New globals.
336         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
337         and dscr regsets.
338         (ppc_linux_core_read_description): Check if the ppr and dscr
339         sections are present and set ppr_dscr in the features struct.
340         (_initialize_ppc_linux_tdep): Call
341         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
342         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
343         * ppc-linux-tdep.h (ppc32_linux_pprregset)
344         (ppc32_linux_dscrregset): Declare.
345         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
346         <ppc_dscr_regnum>: New field.
347         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
348         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
349         and dscr features.
350         (ppc_process_record_op31): Record changes to PPR and DSCR.
351
352 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
353
354         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
355         second initializer line for the have_* variables.  Initialize
356         have_fpu to 0 instead of 1.
357
358 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
359
360         * arch/ppc-linux-common.c (ppc_linux_match_description):
361         Parenthesize tdesc assignements and indent them properly.
362
363 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
364
365         * ppc-linux-nat.c (fetch_register): Change if statement to else
366         if.
367         (store_register): Likewise.
368
369 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
370
371         * rs6000-tdep.c: Remove reggroups.h include.
372         (rs6000_pseudo_register_reggroup_p): Remove.
373         (rs6000_gdbarch_init): Remove call to
374         set_tdesc_pseudo_register_reggroup_p.
375
376 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
377
378         * reggroups.c (default_register_reggroup_p): Return true for
379         decfloat registers and float_reggroup.
380
381 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
382
383         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
384         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
385         ppc_linux_collect_vrregset by regcache_collect_regset.
386
387 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
388
389         * linux-tdep.c (linux_collect_regset_section_cb): Use
390         std::vector<gdb_byte> instead of char * and malloc for buf.
391         Remove xfree.
392
393 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
394
395         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
396         symtab_start instead of always using language_unknown.
397
398 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
399
400         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
401         READ_P parameter, catch and ignore register access errors from
402         either the old or new MISA location.
403         (riscv_has_feature): Update call to riscv_read_misa_reg.
404
405 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
406
407         * python/py-function.c (convert_values_to_python): Return
408         gdbpy_ref<>.  Add header comment.
409         (fnpy_call): Adjust.
410
411 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
412
413         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
414         (cmdpy_completer_handle_brkchars): Adjust.
415         (cmdpy_completer): Adjust.
416
417 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
418
419         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
420         Pass correct regnum to raw_supply_zeroed.
421
422 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
423
424         * regcache.c (cooked_read_test): Add CSKY to the list of
425         architectures with a save_reggroup
426
427 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
428
429         PR gdb/23368
430         * infrun.c (follow_exec): In the follow_exec_mode_new case,
431         transfer terminal state from old new new inferior.
432         * terminal.h (swap_terminal_info): New function.
433         * inflow.c (swap_terminal_info): New function.
434
435 2018-10-23  Tom Tromey  <tom@tromey.com>
436
437         * record-btrace.c (get_thread_current_frame_id): Rename from
438         get_thread_current_frame.  Return a frame_id.
439         (record_btrace_start_replaying): Update.
440
441 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
442
443         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
444         for CSRs.
445
446 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
447
448         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
449         have_nonsteppable_watchpoint attribute to 1.
450
451 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
452
453         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
454         register names.
455         (struct register_alias): Rename to...
456         (struct riscv_register_alias): ...this, and update comment.
457         (riscv_register_aliases): Update type, and alias names.  Remove
458         CSR names from this list.
459         (riscv_register_name): Use riscv_gdb_reg_names for int and float
460         register names.  Add an extra assertion.
461         (riscv_is_regnum_a_named_csr): New function.
462         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
463
464 2018-10-22  Jim Wilson  <jimw@sifive.com>
465
466         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
467         FP reg smaller than FP reg size, and fill with -1 instead of 0.
468
469         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
470         (riscv_register_type): Use them.
471         (riscv_print_one_register_info): Handle union of floats same as float.
472         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
473         riscv_fpreg_q_type fields.
474
475 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
476
477         * gdbarch.sh (gdbarch_num_cooked_regs): New.
478         * gdbarch.h: Re-generate.
479         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
480         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
481         * eval.c (evaluate_subexp_standard): Likewise.
482         * findvar.c (value_of_register): Likewise.
483         (value_of_register_lazy): Likewise.
484         (address_from_register): Likewise.
485         * frame.c (get_frame_register_bytes): Likewise.
486         * gdbarch-selftests.c (register_to_value_test): Likewise.
487         * h8300-tdep.c (h8300_register_type): Likewise.
488         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
489         (i386_svr4_reg_to_regnum): Likewise.
490         * infcmd.c (default_print_registers_info): Likewise.
491         (registers_info): Likewise.
492         (print_vector_info): Likewise.
493         (default_print_float_info): Likewise.
494         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
495         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
496         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
497         (mi_cmd_data_list_changed_registers): Likewise.
498         (mi_cmd_data_list_register_values): Likewise.
499         (mi_cmd_data_write_register_values): Likewise.
500         (mi_cmd_trace_frame_collected): Likewise.
501         * mips-tdep.c (print_gp_register_row): Likewise.
502         (mips_print_registers_info): Likewise.
503         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
504         * regcache.c (init_regcache_descr): Likewise.
505         (register_size): Likewise.
506         (register_dump::dump): Likewise.
507         (cooked_read_test): Likewise.
508         (cooked_write_test): Likewise.
509         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
510         (rs6000_gdbarch_init): Likewise.
511         * stabsread.c (stab_reg_to_regnum): Likewise.
512         * stack.c (info_frame_command): Likewise.
513         * target-descriptions.c (tdesc_register_name): Likewise.
514         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
515         * tui/tui-regs.c (tui_show_register_group): Likewise.
516         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
517         (user_reg_map_regnum_to_name): Likewise.
518         (value_of_user_reg): Likewise.
519         (maintenance_print_user_registers): Likewise.
520         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
521         (xtensa_register_name): Likewise.
522         (xtensa_register_type): Likewise.
523         (xtensa_reg_to_regnum): Likewise.
524         (xtensa_pseudo_register_read): Likewise.
525         (xtensa_pseudo_register_write): Likewise.
526
527 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
528
529         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
530         correctly-sized buffer with raw_read.
531         (amd64_pseudo_register_write): Use correctly-sized buffer for
532         raw_read/raw_write.
533
534 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
535
536         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
537         in add_prefix_cmd of set print type.
538
539 2018-10-19  Tom Tromey  <tom@tromey.com>
540
541         PR tui/18388:
542         * NEWS: Mention tabset deprecation.
543         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
544         (update_tab_width): New function.
545         (tui_set_tab_width, tui_show_tab_width): New functions.
546         (tui_set_tab_width_command): Use update_tab_width.
547         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
548         Add new "set tui tab-width" command.
549         * tui/tui-source.c (tui_set_source_content): Update.
550         * tui/tui-disasm.c (tui_set_disassem_content): Update.
551         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
552         Don't declare.
553         (tui_tab_width): Declare.
554         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
555         (tui_set_default_tab_len): Remove.
556
557 2018-10-19  Tom Tromey  <tom@tromey.com>
558
559         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
560         (key_is_backspace, tui_getc): Don't declare.
561         * tui/tui-io.c (key_is_start_sequence): Now static.
562         (key_is_end_sequence, key_is_backspace): Remove.
563         (tui_getc): Now static.
564
565 2018-10-19  Tom Tromey  <tom@tromey.com>
566
567         * symfile.c (reread_symbols): Clear "static_links".
568
569 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
570
571         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
572         define.
573         (aarch64_linux_sigframe_init): Extra boundary checks.
574
575 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
576
577         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
578         the possibly non-existent tdesc type 'vec128', but the type of raw
579         register v16 instead.
580
581 2018-10-19  Gary Benson <gbenson@redhat.com>
582
583         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
584
585 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
586
587         PR cli/23785
588         * cli/cli-dump.c (restore_binary_file): Check if "file" is
589         NULL.
590
591 2018-10-17  Paul Koning  <paul_koning@dell.com>
592
593         * charset.c (convert_between_encodings): Fix unsigned overflow.
594
595 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
596
597         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
598         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
599         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
600         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
601         New functions.
602         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
603         and fbsd_info_proc_mappings_header.
604         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
605         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
606         New.
607
608 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
609
610         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
611         Solaris Maintainer.
612
613 2018-10-15  Tom Tromey  <tom@tromey.com>
614
615         * tui/tui.c (strcat_to_buf): Remove casts.
616         * tui/tui-winsource.c (tui_show_source_line)
617         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
618         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
619         * tui/tui-windata.c (tui_first_data_item_displayed)
620         (tui_delete_data_content_windows, tui_erase_data_content)
621         (tui_display_all_data, tui_display_data_from)
622         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
623         * tui/tui-win.c (tui_set_win_height)
624         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
625         casts.
626         * tui/tui-win.c (tui_resize_all): Remove casts.
627         (tui_scroll_backward_command, tui_set_focus)
628         (tui_set_tab_width_command): Likewise.
629         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
630         * tui/tui-regs.c (tui_show_register_group): Remove cast.
631         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
632         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
633         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
634         Remove casts.
635
636 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
637
638         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
639         AArch64/ARM maintainer.
640
641 2018-10-11  Gary Benson <gbenson@redhat.com>
642
643         * interps.h (interp::m_name): Make private and mutable.
644         * interps.c (interp::~interp): Free m_name.
645
646 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
647             Simon Marchi <simark@simark.ca>
648
649         * README (`configure' options): Add documentation for new
650         "--enable-unit-tests" option.
651         * acinclude.m4: Include "selftest.m4".
652         * configure: Regenerate.
653         * configure.ac: Use "GDB_AC_SELFTEST".
654         * maint.c (maintenance_selftest): Update message informing
655         that selftests have been disabled.
656         (maintenance_info_selftests): Likewise.
657         * selftest.m4: New file.
658
659 2018-10-10  Gary Benson <gbenson@redhat.com>
660
661         * remote.c (remote_target::remote_send_printf): Add
662         missing va_end found by Coverity.
663
664 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
665
666         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
667
668 2018-10-09  Tom Tromey  <tom@tromey.com>
669
670         * configure: Rebuild.
671         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
672         * NEWS: Update --enable-ubsan documentation.
673
674 2018-10-09  Gary Benson <gbenson@redhat.com>
675
676         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
677         found by Coverity.
678
679 2018-10-08  Tom Tromey  <tom@tromey.com>
680
681         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
682         variable.
683         (riscv_fbsd_init_abi): Likewise.
684
685 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
686         * valops.c (value_struct_elt_for_reference): Rename local variable
687         to work around the shadowing a previous local warning.
688
689 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
690
691         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
692         * NEWS: Mention new FreeBSD/riscv native configuration.
693         * configure.host: Add riscv*-*-freebsd*.
694         * configure.nat: Likewise.
695         * riscv-fbsd-nat.c: New file.
696
697 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
698
699         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
700         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
701         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
702         * NEWS: Mention new FreeBSD/riscv target.
703         * configure.tgt: Add riscv*-*-freebsd*.
704         * riscv-fbsd-tdep.c: New file.
705         * riscv-fbsd-tdep.h: New file.
706
707 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
708
709         * regcache.h (struct regcache_map_entry): Note that this type can
710         be used with traditional frame caches.
711         * trad-frame.c (trad_frame_set_reg_regmap): New.
712         * trad-frame.h (trad_frame_set_reg_regmap): New.
713
714 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
715
716         PR c++/16841
717         * valops.c (get_virtual_base_offset): New function.
718         (value_struct_elt_for_reference): Use it to get virtual base offset
719         and add it in calculating class member address.
720
721 2018-10-08   John Darrington <john@darrington.wattle.id.au>
722
723     * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
724       (check_producer): Check if the producer is codewarrior.
725       (producer_is_codewarrior): New function.
726       (lnp_state_machine::record_line): Ignore is_stmt flag for records
727        produced by codewarrior.
728       (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
729
730 2018-10-06  Tom Tromey  <tom@tromey.com>
731
732         PR python/19399:
733         * python/py-inferior.c: Add "architecture" entry.
734         (infpy_architecture): New function.
735
736 2018-10-06  Tom Tromey  <tom@tromey.com>
737
738         PR python/21765:
739         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
740         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
741         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
742         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
743
744 2018-10-06  Tom Tromey  <tom@tromey.com>
745
746         PR build/17077:
747         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
748         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
749         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
750         #include.
751
752 2018-10-06  Tom Tromey  <tom@tromey.com>
753
754         * python/py-breakpoint.c (bppy_get_location): Handle a
755         bp_breakpoint without a location.
756
757 2018-10-06  Tom Tromey  <tom@tromey.com>
758
759         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
760         (_RegEx): Reformat help text.
761         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
762         (AnyCallerIs, AnyCallerMatches): Reformat help text.
763         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
764         text.
765         * python/lib/gdb/command/xmethods.py (InfoXMethod)
766         (EnableXMethod, DisableXMethod): Remove help indentation.
767         Capitalize meta-syntactic variables.
768         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
769         (EnableUnwinder, DisableUnwinder): Remove help indentation.
770         Capitalize meta-syntactic variables.
771         * python/lib/gdb/command/explore.py (ExploreCommand)
772         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
773         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
774         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
775         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
776         Remove help indentation.
777         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
778         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
779         (DisableFrameFilter, SetFrameFilterPriority)
780         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
781
782 2018-10-06  Tom Tromey  <tom@tromey.com>
783
784         PR tui/28819:
785         * tui/tui-io.c (gdb_wgetch): New function.
786         (tui_mld_getc, tui_getc): Use it.
787
788 2018-10-05  Tom Tromey  <tom@tromey.com>
789
790         * sol-thread.c (sol_thread_target::wait): Rename inner
791         "save_ptid".
792
793 2018-10-04  Tom Tromey  <tom@tromey.com>
794
795         * configure: Rebuild.
796         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
797
798 2018-10-04  Tom Tromey  <tom@tromey.com>
799
800         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
801         declaration of "block".
802
803 2018-10-04  Tom Tromey  <tom@tromey.com>
804
805         * common/filestuff.c (fdwalk): Remove inner declaration of
806         "result".
807
808 2018-10-04  Tom Tromey  <tom@tromey.com>
809
810         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
811         "structs_addr" and hoist declaration.
812
813 2018-10-04  Tom Tromey  <tom@tromey.com>
814
815         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
816         variable "size".
817
818 2018-10-04  Tom Tromey  <tom@tromey.com>
819
820         * mdebugread.c (parse_partial_symbols): Use std::string.
821
822 2018-10-04  Tom Tromey  <tom@tromey.com>
823
824         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
825         * p-valprint.c (pascal_val_print): Split inner "i" variable.
826         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
827         header.
828         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
829         more inner scope.
830         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
831         * varobj.c (varobj_update): Rename inner "newobj",
832         "type_changed".
833         * valprint.c (generic_emit_char): Rename inner "buf".
834         * valops.c (find_overload_match): Rename inner "temp".
835         (value_struct_elt_for_reference): Declare "v" in more inner
836         scope.
837         * v850-tdep.c (v850_push_dummy_call): Rename "len".
838         * unittests/array-view-selftests.c (run_tests): Rename inner
839         "vec".
840         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
841         header.
842         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
843         "tsv" in more inner scope.
844         (print_one_static_tracepoint_marker): Rename inner
845         "tuple_emitter".
846         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
847         (tic6x_push_dummy_call): Don't redeclare "addr".
848         * target-float.c: Declare "dto" lower.
849         * symtab.c (lookup_local_symbol): Rename inner "sym".
850         (find_pc_sect_line): Rename inner "pc".
851         * stack.c (print_frame): Don't redeclare "gdbarch".
852         (return_command): Rename inner "gdbarch".
853         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
854         "sp".
855         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
856         header.
857         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
858         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
859         scope.
860         * remote.c (remote_target::update_thread_list): Don't redeclare
861         "tp".
862         (remote_target::process_initial_stop_replies): Rename inner
863         "thread".
864         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
865         (remote_target::wait_as): Don't redeclare "stop_reply".
866         (remote_target::get_thread_local_address): Rename inner
867         "result".
868         (remote_target::get_tib_address): Likewise.
869
870         * regcache.c (cooked_read_test): Rename "regnum".
871         * record-btrace.c (cmd_record_btrace_start): Rename inner
872         "exception".
873         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
874         loop header.
875         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
876         header.
877         (ppu2spu_sniffer): Rename inner "buf".
878         * parse.c (operator_check_standard): Rename inner "type",
879         "objfile".
880         * p-valprint.c (pascal_val_print): Introduce new scope for
881         "low_bound", "high_bound".
882         * p-exp.y (yylex): Declare "i" in loop header.
883         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
884         Lower declaration of "s".
885         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
886         header.
887         (nios2_push_dummy_call): Rename "len".
888         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
889         "buf".
890         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
891         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
892         (linux_xfer_osdata_modules): Likewise.
893         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
894         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
895         (mips_o64_push_dummy_call): Likewise.
896         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
897         "op".
898         * mi/mi-main.c (list_available_thread_groups): Rename inner
899         "tuple_emitter".
900         (mi_cmd_data_read_memory): Rename inner "opts".
901         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
902         "tuple_emitter".
903         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
904         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
905         more inner scope.
906         (parse_partial_symbols): Rename inner "pst", "p", "name"
907         * main.c (captured_main_1): Rename inner "i"s.
908         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
909         "oso2".
910         * linux-tdep.c (linux_info_proc): Rename inner "filename".
911         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
912         * infrun.c (handle_no_resumed): Don't redeclare "thread".
913         (handle_signal_stop): Rename inner "gdbarch".
914         (handle_command): Declare "signum" in loop header.
915         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
916         "status".
917         (examine_prologue): Rename inner "sol" and "sof".
918         (ia64_extract_return_value): Rename inner "val".  Declare another
919         "val" in a more inner scope.
920         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
921         inner scope.
922         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
923         "except".
924         * findvar.c (default_read_var_value): Don't redeclare "addr".
925         * f-exp.y (yylex): Declare "i" in loop header.
926         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
927         Rename inner "type", "expect_type".
928         (evaluate_subexp_for_sizeof): Rename inner "pc".
929         * elfread.c (elf_symfile_read): Rename inner "abfd".
930         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
931         "bytes_read".
932         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
933         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
934         (dwarf_decode_line_header): Rename inner "lh".
935         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
936         "offset".  Declare "i" in loop header.
937         (disassemble_dwarf_expression): Rename inner "addr_size".
938         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
939         inner "result".
940         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
941         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
942         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
943         "inner_list_emitter".
944         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
945         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
946         declaration in a block.
947         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
948         * cp-valprint.c (cp_print_value_fields): Don't redeclare
949         "obstack_final_size".
950         * cp-support.c (inspect_type): Declare "i" in loop header.
951         * compile/compile.c (compile_instance::insert_symbol_error):
952         Rename inner "e".
953         * common/agent.c (agent_run_command): Remove inner "ret"
954         declaration.
955         * coffread.c (coff_symfile_read): Rename inner "name".
956         (coff_symfile_read): Rename inner "abfd".
957         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
958         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
959         "high".
960         * c-exp.y (lex_one_token): Move "len" declaration lower.
961         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
962         "gdbarch".
963         (create_exception_master_breakpoint): Likewise.  Don't redeclare
964         "b".
965         (watch_command_1): Declare "mark" later.
966         (clear_command): Don't shadow "a" or "b".
967         (delete_command): Rename inner "b".
968         (delete_trace_command): Likewise.
969         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
970         "op".
971         (arm_gdbarch_init): Remove inner "e_flags".
972         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
973         "offset" in inner blocks.
974
975 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
976
977         * dwarf-index-write.c (file_write): Don't write if the vector is
978         empty.
979
980 2018-10-05  Tom de Vries  <tdevries@suse.de>
981
982         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
983         PyArg_ParseTuple call.
984
985 2018-10-05  Tom de Vries  <tdevries@suse.de>
986
987         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
988         PyArg_ParseTuple call.
989
990 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
991
992         * psymtab.c (recursively_search_psymtabs): Reformat parameters
993         to avoid exceeding 80 characters per line limit.
994
995 2018-10-04  Tom Tromey  <tom@tromey.com>
996
997         * symfile.c (syms_from_objfile_1, finish_new_objfile)
998         (reread_symbols): Update.
999         * complaints.h (clear_complaints): Remove argument.
1000         * complaints.c (enum complaint_series): Remove.
1001         (series): Remove global.
1002         (complaint_internal): Update.
1003         (clear_complaints): Remove argument.
1004
1005 2018-10-04  Tom Tromey  <tom@tromey.com>
1006
1007         * symfile.c (symbol_file_add_with_addrs): Do not print "no
1008         debugging symbols" message if there is a separate debug objfile.
1009
1010 2018-10-04  Tom Tromey  <tom@tromey.com>
1011
1012         PR cli/19551:
1013         * symfile.c (symbol_file_add_with_addrs): Update output.
1014         * psymtab.c (require_partial_symbols): Update output.
1015
1016 2018-10-04  Tom Tromey  <tom@tromey.com>
1017
1018         PR cli/22234:
1019         * complaints.c: Emit \n.
1020
1021 2018-10-04  Tom Tromey  <tom@tromey.com>
1022
1023         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
1024         (separate_debug_file_exists, find_separate_debug_file)
1025         (add_symbol_file_command, reread_symbols, allocate_symtab)
1026         (allocate_compunit_symtab): Use filtered printing, not
1027         unfiltered.
1028         * psymtab.c (require_partial_symbols, dump_psymtab)
1029         (allocate_psymtab): Use filtered printing, not unfiltered.
1030
1031 2018-10-04  Tom Tromey  <tom@tromey.com>
1032
1033         * complaints.c (complaint_internal): Correctly check complaint
1034         count.
1035
1036 2018-10-04  Tom Tromey  <tom@tromey.com>
1037
1038         * complaints.h (struct complaints): Remove declaration.
1039         * complaints.c (clear_complaints): Remove an unused variable.
1040
1041 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1042
1043         * MAINTAINERS (Write After Approval): Add self.
1044
1045 2018-10-03  Tom Tromey  <tom@tromey.com>
1046
1047         * guile/scm-value.c (gdbscm_value_to_string): Initialize
1048         "buffer_contents".
1049         * coffread.c (coff_symtab_read): Initialize "newobj".
1050
1051 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
1052
1053         * dwarf2read.c (read_func_scope): Remove struct keyword in
1054         range-based for.
1055
1056 2018-10-03  Tom Tromey  <tom@tromey.com>
1057
1058         * README: Mention --enable-ubsan.
1059         * NEWS: Mention --enable-ubsan.
1060         * acinclude.m4: Include sanitize.m4.
1061         * configure: Rebuild.
1062         * configure.ac: Call AM_GDB_UBSAN.
1063         * sanitize.m4: New file.
1064
1065 2018-10-03  Tom Tromey  <tom@tromey.com>
1066
1067         * expression.h (enum exp_opcode): Use uint8_t as base type.
1068         * expprint.c (op_name): Handle invalid opcodes.
1069
1070 2018-10-03  Tom Tromey  <tom@tromey.com>
1071
1072         * parse.c (prefixify_expression): Add assert.
1073         (parse_exp_in_context_1): Throw exception if the expression is
1074         empty.
1075
1076 2018-10-03  Tom Tromey  <tom@tromey.com>
1077
1078         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
1079
1080 2018-10-03  Tom Tromey  <tom@tromey.com>
1081
1082         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
1083
1084 2018-10-03  Tom Tromey  <tom@tromey.com>
1085
1086         * dwarf2read.c (read_subrange_type): Make "negative_mask"
1087         unsigned.
1088
1089 2018-10-03  Tom Tromey  <tom@tromey.com>
1090
1091         * findvar.c (extract_integer): Do work in an unsigned type.
1092
1093 2018-10-03  Tom Tromey  <tom@tromey.com>
1094
1095         * common/enum-flags.h (enum_flags::operator~): Add static assert.
1096         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
1097         base type.
1098         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
1099         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
1100         type.
1101         * c-lang.h (enum c_string_type_values): Use unsigned as base
1102         type.
1103         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
1104
1105 2018-10-03  Tom Tromey  <tom@tromey.com>
1106
1107         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
1108         <~dwarf2_frame_state_reg_info>: Update.
1109         <dwarf2_frame_state_reg_info>: Update.
1110         <alloc_regs>: Add assertion.  Update.
1111         <reg>: Now a std::vector.
1112         <num_regs>: Remove.
1113         <swap>: Update.
1114         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
1115         (execute_cfa_program_test, dwarf2_frame_cache): Update.
1116
1117 2018-10-03  Tom Tromey  <tom@tromey.com>
1118
1119         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
1120
1121 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1122
1123         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
1124
1125 2018-10-02  Tom Tromey  <tom@tromey.com>
1126
1127         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
1128
1129 2018-10-02  John Darrington <john@darrington.wattle.id.au>
1130
1131         * NEWS: Mention changed commands.
1132         * ser-uds.c: New file.
1133         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
1134         * configure: Regenerate.
1135         * Makefile.in: Add new file.
1136         * serial.c (serial_open): Check if filename is a socket
1137           and lookup the appropriate interface accordingly.
1138
1139 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1140
1141         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
1142         define.
1143         (AARCH64_EXTRA_MAGIC): Likewise.
1144         (AARCH64_FPSIMD_MAGIC): Likewise.
1145         (AARCH64_SVE_MAGIC): Likewise.
1146         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
1147         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
1148         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
1149         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
1150         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
1151         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
1152         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
1153         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
1154         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
1155         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
1156         (read_aarch64_ctx): Add function.
1157         (aarch64_linux_sigframe_init): Detect FP registers.
1158
1159 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
1160
1161         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
1162         (AARCH64_D0_REGNUM): Likewise.
1163         (AARCH64_S0_REGNUM): Likewise.
1164         (AARCH64_H0_REGNUM): Likewise.
1165         (AARCH64_B0_REGNUM): Likewise.
1166         (AARCH64_SVE_V0_REGNUM): Likewise.
1167         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
1168         (AARCH64_D0_REGNUM): Likewise.
1169         (AARCH64_S0_REGNUM): Likewise.
1170         (AARCH64_H0_REGNUM): Likewise.
1171         (AARCH64_B0_REGNUM): Likewise.
1172         (AARCH64_SVE_V0_REGNUM): Likewise.
1173
1174 2018-10-01  Gary Benson <gbenson@redhat.com>
1175
1176         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
1177         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
1178         prfpregset_t instead of gdb_prfpregset_t.
1179         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
1180         * configure, config.in: Rebuild.
1181
1182 2018-10-01  Gary Benson <gbenson@redhat.com>
1183
1184         * common/gdb_proc_service.h: New file, factored out from...
1185         * gdb_proc_service.h: Moved common code to the above file.
1186         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
1187
1188 2018-10-01  Gary Benson <gbenson@redhat.com>
1189
1190         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
1191         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
1192
1193 2018-10-01  Gary Benson <gbenson@redhat.com>
1194
1195         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
1196         (AC_CHECK_HEADERS): Check for linux/elf.h.
1197         * configure, config.in: Rebuild.
1198         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
1199         doesn't define elf_fpregset_t.
1200
1201 2018-10-01  Gary Benson <gbenson@redhat.com>
1202
1203         * gdb_proc_service.h: Whitespace change.
1204
1205 2018-10-01  Tom Tromey  <tom@tromey.com>
1206
1207         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
1208         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
1209         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
1210
1211 2018-10-01  Tom Tromey  <tom@tromey.com>
1212
1213         * README: Minor change.
1214
1215 2018-09-30  Pedro Alves  <palves@redhat.com>
1216
1217         * darwin-nat-info.c (darwin_debug_regions_recurse)
1218         (info_mach_exceptions_command): Remove unused local variables.
1219         * darwin-nat.c (darwin_decode_notify_message)
1220         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
1221         (darwin_stop_inferior, darwin_setup_exceptions)
1222         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
1223         (darwin_nat_target::attach, darwin_nat_target::detach)
1224         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
1225         local variables.
1226         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
1227         variables.
1228
1229 2018-09-29  Tom Tromey  <tom@tromey.com>
1230
1231         * README: Remove some leftover text.
1232
1233 2018-09-29  Tom Tromey  <tom@tromey.com>
1234
1235         * PROBLEMS: Rewrite.
1236         * README: Update.
1237
1238 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
1239
1240         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
1241         case with explicit breakpoint kind.
1242         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
1243         'additional_info' and related logic.
1244         (riscv_debug_breakpoints): New variable.
1245         (riscv_breakpoint_kind_from_pc): Use the length of the existing
1246         instruction to determine the breakpoint kind.
1247         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
1248         flag.  Update description of 'set/show riscv
1249         use-compressed-breakpoints' flag.
1250
1251 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1252
1253         (NEWS): Mention changes to frame related commands.
1254         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
1255         (add_prefix_cmd_suppress_notification): New function.
1256         (add_com_suppress_notification): Call
1257         add_cmd_suppress_notification.
1258         * command.h (add_cmd_suppress_notification): Declare.
1259         (add_prefix_cmd_suppress_notification): Declare.
1260         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
1261         (parse_frame_specification): Moved from stack.c, with
1262         simplification to handle a single argument.
1263         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
1264         switch to the selected frame.  Add a header comment.
1265         * stack.c: Remove 'safe-ctype.h' include.
1266         (find_frame_for_function): Add declaration.
1267         (find_frame_for_address): New function.
1268         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
1269         (frame_selection_by_function_completer): New function.
1270         (info_frame_command): Rename to...
1271         (info_frame_command_core): ...this, and update parameter types.
1272         (select_frame_command): Rename to...
1273         (select_frame_command_core): ...this, and update parameter types.
1274         (frame_command): Rename to...
1275         (frame_command_core): ...this, and update parameter types.
1276         (class frame_command_helper): New class to wrap implementations of
1277         frame related sub-commands.
1278         (frame_apply_cmd_list): New static global.
1279         (frame_cmd_list): Make static.
1280         (select_frame_cmd_list): New global for sub-commands.
1281         (info_frame_cmd_list): New global for sub-commands.
1282         (_initialize_stack): Register sub-commands for 'frame',
1283         'select-frame', and 'info frame'.  Update 'frame apply' commands
1284         to use frame_apply_cmd_list.  Move function local static
1285         frame_apply_list to file static frame_apply_cmd_list for
1286         consistency.
1287         * stack.h (select_frame_command): Delete declarationn.
1288         (select_frame_for_mi): Declare new function.
1289
1290 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1291
1292         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
1293         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
1294         and NOP.
1295
1296 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
1297
1298         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
1299
1300 2018-09-26  Tom Tromey  <tom@tromey.com>
1301
1302         * valops.c (auto_abandon): Remove dead code.
1303
1304 2018-09-26  Tom Tromey  <tom@tromey.com>
1305
1306         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
1307
1308 2018-09-24  Tom Tromey  <tom@tromey.com>
1309
1310         * common/pathstuff.c (get_standard_cache_dir): Make
1311         "xdg_cache_home" and "home" const.
1312         * top.c (init_history): Make "tmpenv" const.
1313         * main.c (get_init_files): Make "homedir" const.
1314
1315 2018-09-23  Tom Tromey  <tom@tromey.com>
1316
1317         PR python/18852:
1318         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
1319
1320 2018-09-23  Tom Tromey  <tom@tromey.com>
1321
1322         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
1323         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
1324         * python/python-internal.h (gdbpy_handle_exception): Declare.
1325         * python/py-utils.c (gdbpy_handle_exception): New function.
1326
1327 2018-09-23  Tom Tromey  <tom@tromey.com>
1328
1329         PR python/17284:
1330         * python/py-type.c (typy_template_argument): Check for negative
1331         argument number.
1332
1333 2018-09-23  Tom Tromey  <tom@tromey.com>
1334
1335         PR python/14062:
1336         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
1337
1338 2018-09-23  Tom Tromey  <tom@tromey.com>
1339
1340         PR python/18170:
1341         * python/py-value.c (valpy_int): Allow conversion from pointer
1342         type.
1343
1344 2018-09-23  Tom Tromey  <tom@tromey.com>
1345
1346         PR python/20126:
1347         * python/py-value.c (valpy_int): Respect type sign.
1348
1349 2018-09-23  Tom Tromey  <tom@tromey.com>
1350
1351         PR python/18352;
1352         * python/py-value.c (valpy_float): Allow conversions from int or
1353         char.
1354         (valpy_int, valpy_long): Allow conversions from float.
1355
1356 2018-09-23  Tom Tromey  <tom@tromey.com>
1357
1358         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
1359         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
1360
1361 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1362
1363         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
1364         __sighndlr.
1365         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
1366
1367 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
1368
1369         * windows-nat.c (windows_nat_target::wait): Remove a spurious
1370         target_terminal::ours().
1371
1372 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
1373
1374         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
1375         of vl to ULONGEST.
1376
1377 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
1378
1379         * breakpoint.c (update_inserted_breakpoint_locations): Remove
1380         redundant condition.
1381
1382 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1383
1384         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
1385
1386         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
1387         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
1388         * sol-thread.c (ps_pdmodel): Don't guard definition.
1389
1390         * procfs.c: Fix formatting.
1391
1392         * procfs.c (sysset_t_alloc): Remove.
1393         (create_procinfo): Use XNEW instead of sysset_t_alloc.
1394         (procfs_debug_inferior): Likewise.
1395         (procfs_set_exec_trap): Likewise.
1396         (proc_set_traced_sysentry): Don't allocate argp dynamically.
1397         (proc_set_traced_sysexit): Likewise.
1398
1399         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
1400         (dead_procinfo): Likewise.
1401         (proc_warn): Likewise.
1402         (proc_error): Likewise.
1403         (proc_get_LDT_entry): Likewise.
1404         (do_attach): Likewise.
1405         (procfs_target::pid_to_str): Likewise.
1406         (iterate_over_mappings): Likewise.
1407
1408         * procfs.c (create_procinfo): Fix ARI warning.
1409         (proc_get_status): Likewise.
1410         (proc_stop_process): Likewise.
1411         (proc_run_process): Likewise.
1412         (proc_kill): Likewise.
1413         (proc_get_LDT_entry): Likewise.
1414         (procfs_find_LDT_entry): Likewise.
1415         (proc_update_threads): Likewise.
1416         (proc_iterate_over_threads): Likewise.
1417         (do_attach): Likewise.
1418         (procfs_xfer_memory): Likewise.
1419         (invalidate_cache): Likewise.
1420         (procfs_target::resume): Likewise.
1421         (procfs_init_inferior): Likewise.
1422         (procfs_set_exec_trap): Likewise.
1423         (procfs_target::thread_alive): Likewise.
1424         (procfs_target::pid_to_exec_file): Likewise.
1425         (iterate_over_mappings): Likewise.
1426         (procfs_target::make_corefile_notes): Likewise.
1427         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
1428
1429         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
1430         (procfs_find_LDT_entry): Likewise.
1431         * sol-thread.c (ps_lgetLDT): Likewise.
1432
1433 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1434
1435         PR tdep/17903
1436         * procfs.c (procfs_target): Declare pid_to_exec_file.
1437         (procfs_target::pid_to_exec_file): New.
1438
1439 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1440
1441         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
1442         renaming.
1443         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
1444         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
1445
1446 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1447
1448         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
1449         (supply_fpregset, fill_fpregset): Move ...
1450         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
1451         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
1452         Remove references to ioctl-based procfs.
1453         Include <sys/reg.h>.
1454         Remove PR_MODEL_NATIVE guards.
1455         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
1456         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
1457
1458 2018-09-19  Xavier Roirand  <roirand@adacore.com>
1459
1460         PR gdb/20981:
1461         * solib-darwin.c (darwin_get_dyld_bfd): New function.
1462         (darwin_solib_get_all_image_info_addr_at_init): Update call.
1463         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
1464
1465 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
1466
1467         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
1468         (fbsd_print_sockaddr_in6): Likewise.
1469
1470 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
1471             Chris January  <chris.january@arm.com>
1472
1473         * eval.c (skip_undetermined_arglist): Skip argument list helper.
1474         (evaluate_subexp_standard): Return a dummy type when
1475         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
1476         OP_F77_UNDETERMINED_ARGLIST case.
1477         * expression.h (enum noside): Update comment.
1478
1479 2018-09-19  George Vasick <george.vasick@oracle.com>
1480
1481         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
1482
1483 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
1484             April Chin <april.chin@oracle.com>
1485             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1486
1487         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
1488         uint_t lwpid_t.
1489         (create_procinfo): Print pids in /proc without leading zeros.
1490
1491 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
1492
1493         * nios2-tdep.c (nios2_gcc_target_options): New.
1494         (nios2_gdb_arch_init): Install new hook.
1495
1496 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
1497
1498         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
1499         New file.
1500         * update-gnulib.sh: Apply patch.
1501         * configure: Re-generate.
1502
1503 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1504
1505         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
1506         description.  Make "info proc" command descriptions more
1507         consistent.
1508
1509 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1510
1511         * NEWS: Mention 'info proc files' command.
1512
1513 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1514
1515         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
1516         descriptors for IP_FILES and IP_ALL.
1517
1518 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1519
1520         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
1521         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
1522         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
1523         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
1524         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
1525         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
1526         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
1527         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
1528         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
1529         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
1530         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
1531         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
1532         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
1533         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
1534         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
1535         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
1536         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
1537         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
1538         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
1539         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
1540         (struct fbsd_sockaddr_un): New types.
1541         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
1542         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
1543         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
1544         (fbsd_core_info_proc_files): New functions.
1545         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
1546         IP_ALL.
1547         * fbsd-tdep.h (fbsd_info_proc_files_header)
1548         (fbsd_info_proc_files_entry): New.
1549
1550 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1551
1552         * defs.h (enum info_proc_what) [IP_FILES]: New value.
1553         * infcmd.c (info_proc_cmd_files): New function.
1554         (_initialize_infcmd): Register 'info proc files' command.
1555
1556 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1557
1558         * gnulib/aclocal-m4-deps.mk: Re-generate.
1559         * gnulib/aclocal.m4: Re-generate.
1560         * gnulib/config.in: Re-generate.
1561         * gnulib/configure: Re-generate.
1562         * gnulib/import/Makefile.am: Re-generate.
1563         * gnulib/import/Makefile.in: Re-generate.
1564         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1565         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1566         * gnulib/import/arpa_inet.in.h: New file.
1567         * gnulib/import/inet_ntop.c: New file.
1568         * gnulib/import/m4/arpa_inet_h.m4: New file.
1569         * gnulib/import/m4/inet_ntop.m4: New file.
1570         * gnulib/import/m4/netinet_in_h.m4: New file.
1571         * gnulib/import/m4/socklen.m4: New file.
1572         * gnulib/import/m4/sockpfaf.m4: New file.
1573         * gnulib/import/m4/stdalign.m4: New file.
1574         * gnulib/import/m4/sys_uio_h.m4: New file.
1575         * gnulib/import/netinet_in.in.h: New file.
1576         * gnulib/import/stdalign.in.h: New file.
1577         * gnulib/import/sys_socket.c: New file.
1578         * gnulib/import/sys_socket.in.h: New file.
1579         * gnulib/import/sys_uio.in.h: New file.
1580         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
1581         module.
1582
1583 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1584
1585         * gnulib/aclocal-m4-deps.mk: New file.
1586         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
1587         deterministically.
1588
1589 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
1590
1591         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
1592         KVE_PATH.
1593
1594 2018-09-18  Tom Tromey  <tom@tromey.com>
1595
1596         * compile/compile-object-load.c (struct
1597         link_hash_table_cleanup_data): Add constructor and destructor.
1598         Use DISABLE_COPY_AND_ASSIGN.
1599         (~link_hash_table_cleanup_data): Rename from
1600         link_hash_table_free.  Now a destructor.
1601         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
1602
1603 2018-09-18  Tom Tromey  <tom@tromey.com>
1604
1605         * compile/compile-object-run.c (do_module_cleanup): Use delete.
1606         * compile/compile-object-load.c (struct munmap_list): Move to
1607         header file.
1608         (munmap_list::add): Rename from munmap_list_add; rewrite.
1609         (munmap_list::~munmap_list): Rename from munmap_list_free.
1610         (munmap_listp_free_cleanup): Remove.
1611         (compile_object_load): Update.
1612         * compile/compile-object-load.h (struct munmap_list): Move from
1613         compile-object-load.c.  Rewrite.
1614
1615 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
1616
1617         * aarch64-tdep.c (pass_in_v): Use register size.
1618         (aarch64_extract_return_value): Likewise.
1619         (aarch64_store_return_value): Likewise.
1620
1621 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1622
1623         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
1624         rlim_t.
1625
1626 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1627
1628         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
1629         Fix short help line.
1630
1631 2018-09-17  Tom Tromey  <tom@tromey.com>
1632
1633         PR python/20445:
1634         * configure: Rebuild.
1635         * configure.ac: Conditionally use -DNDEBUG for Python.
1636
1637 2018-09-17  Tom Tromey  <tom@tromey.com>
1638
1639         * configure: Rebuild.
1640         * configure.ac: Use gmp as a library dependency when checking for
1641         mpfr.
1642
1643 2018-09-17  Pedro Alves  <palves@redhat.com>
1644
1645         * python/py-inferior.c (find_inferior_object): Delete.
1646
1647 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
1648
1649         * compile/compile-cplus-types.c
1650         (compile_cplus_instance::enter_scope): Don't use new_scope after
1651         std::move.
1652
1653 2018-09-17  Tom Tromey  <tom@tromey.com>
1654
1655         * common/pathstuff.c (get_standard_cache_dir): Use
1656         ~/Library/Caches on macOS.
1657         * common/pathstuff.h (get_standard_cache_dir): Update comment.
1658
1659 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
1660
1661         PR python/23669
1662         * breakpoint.c (commands_cmd_element): New.
1663         (_initialize_breakpoint): Assign commands_cmd_element.
1664         * breakpoint.h (commands_cmd_element): New.
1665         * cli/cli-script.c (while_cmd_element, if_command,
1666         define_cmd_element): New.
1667         (command_name_equals): Remove.
1668         (process_next_line): Compare commands by pointer, not by name.
1669         (_initialize_cli_script): Assign the various cmd_list_element
1670         variables.
1671         * compile/compile.c (compile_cmd_element): New.
1672         (_initialize_compile): Assign compile_cmd_element.
1673         * compile/compile.h (compile_cmd_element): New.
1674         * guile/guile.c (guile_cmd_element): New.
1675         (install_gdb_commands): Assign guile_cmd_element.
1676         * guile/guile.h (guile_cmd_element): New.
1677         * python/python.c (python_cmd_element): New.
1678         (_initialize_python): Assign python_cmd_element.
1679         * python/python.h (python_cmd_element): New.
1680         * tracepoint.c (while_stepping_cmd_element): New.
1681         (_initialize_tracepoint): Assign while_stepping_cmd_element.
1682         * tracepoint.h (while_stepping_cmd_element): New.
1683
1684 2018-09-17  Tom Tromey  <tom@tromey.com>
1685
1686         * infrun.c (save_infcall_suspend_state): Return
1687         infcall_suspend_state_up.
1688         (save_infcall_control_state): Return infcall_control_state_up.
1689         * inferior.h (save_infcall_suspend_state)
1690         (save_infcall_control_state): Declare later.  Return unique
1691         pointers.
1692
1693 2018-09-17  Tom Tromey  <tom@tromey.com>
1694
1695         * infrun.c (struct stop_context): Declare constructor,
1696         destructor, "changed" method.
1697         (stop_context::stop_context): Rename from save_stop_context.
1698         (stop_context::~stop_context): Rename from
1699         release_stop_context_cleanup.
1700         (normal_stop): Update.
1701         (stop_context::changed): Rename from stop_context_changed.  Return
1702         bool.
1703
1704 2018-09-17  Tom Tromey  <tom@tromey.com>
1705
1706         * inferior.h (struct infcall_suspend_state_deleter): New.
1707         (infcall_suspend_state_up): New typedef.
1708         (struct infcall_control_state_deleter): New.
1709         (infcall_control_state_up): New typedef.
1710         (make_cleanup_restore_infcall_suspend_state)
1711         (make_cleanup_restore_infcall_control_state): Don't declare.
1712         * infcall.c (call_function_by_hand_dummy): Update.
1713         * infrun.c (do_restore_infcall_suspend_state_cleanup)
1714         (make_cleanup_restore_infcall_suspend_state): Remove.
1715         (do_restore_infcall_control_state_cleanup)
1716         (make_cleanup_restore_infcall_control_state): Remove.
1717
1718 2018-09-17  Tom Tromey  <tom@tromey.com>
1719
1720         * gdbthread.h (struct thread_control_state): Add initializer.
1721         (class thread_info) <control>: Remove initializer.
1722         * inferior.h (struct inferior_control_state): Add initializer.
1723         (class inferior) <control>: Remove initializer.
1724         (exit_inferior_1): Update.
1725         * infrun.c (struct infcall_control_state): Add constructors.
1726         (save_infcall_control_state): Use new.
1727         (restore_infcall_control_state, discard_infcall_control_state):
1728         Use delete.
1729
1730 2018-09-17  Tom Tromey  <tom@tromey.com>
1731
1732         * infrun.c (struct infcall_suspend_state) <registers>: Now a
1733         unique_ptr.
1734         <siginfo_data>: Now a unique_xmalloc_ptr.
1735         (save_infcall_suspend_state, restore_infcall_suspend_state)
1736         (discard_infcall_suspend_state)
1737         (get_infcall_suspend_state_regcache): Update.
1738
1739 2018-09-17  Tom Tromey  <tom@tromey.com>
1740
1741         * gdbthread.h (struct thread_suspend_state): Add initializers.
1742         (class thread_info) <suspend>: Remove initializer.
1743         * infrun.c (struct infcall_suspend_state): Add initializers.
1744         (save_infcall_suspend_state): Use new.
1745         (discard_infcall_suspend_state): Use delete.
1746
1747 2018-09-16  Tom Tromey  <tom@tromey.com>
1748
1749         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
1750         Remove.
1751         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
1752         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
1753         (py_varobj_iter_new): Likewise.
1754         (py_varobj_get_iterator): Use gdbpy_ref.
1755
1756 2018-09-16  Tom Tromey  <tom@tromey.com>
1757
1758         * python/py-threadevent.c (py_get_event_thread): Simplify.
1759         * python/py-inferior.c (infpy_thread_from_thread_handle):
1760         Return immediately after calling thread_to_thread_object.  Use
1761         Py_RETURN_NONE.
1762         (thread_to_thread_object): Set the exception on a NULL return.
1763
1764 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
1765
1766         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
1767
1768 2018-09-16  Tom Tromey  <tom@tromey.com>
1769
1770         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
1771         Remove.
1772
1773 2018-09-16  Tom Tromey  <tom@tromey.com>
1774
1775         * python/python-internal.h (thread_to_thread_object): Change
1776         return type.
1777         * python/py-inferior.c (thread_to_thread_object): Return a new
1778         reference.
1779         (infpy_thread_from_thread_handle): Update.
1780         * python/py-infthread.c (gdbpy_selected_thread): Update.
1781         * python/py-stopevent.c (create_stop_event_object): Update.
1782         * python/py-threadevent.c (py_get_event_thread): Return a new
1783         reference.
1784         (py_get_event_thread): Update.
1785         * python/py-event.h (py_get_event_thread): Change return type.
1786         * python/py-continueevent.c (create_continue_event_object):
1787         Update.
1788
1789 2018-09-16  Tom Tromey  <tom@tromey.com>
1790
1791         * python/py-progspace.c (pspy_get_objfiles): Update.
1792         * python/python-internal.h (objfile_to_objfile_object): Change
1793         return type.
1794         * python/py-newobjfileevent.c (create_new_objfile_event_object):
1795         Update.
1796         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1797         Update.
1798         * python/python.c (gdbpy_get_current_objfile): Update.
1799         (gdbpy_objfiles): Update.
1800         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
1801         Update.
1802         (objfile_to_objfile_object): Return a new reference.
1803         * python/py-symtab.c (stpy_get_objfile): Update.
1804         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
1805         Update.
1806
1807 2018-09-16  Tom Tromey  <tom@tromey.com>
1808
1809         * python/py-inferior.c (infpy_get_progspace): Update.
1810         * python/python-internal.h (pspace_to_pspace_object): Change
1811         return type.
1812         * python/py-newobjfileevent.c
1813         (create_clear_objfiles_event_object): Update.
1814         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
1815         Update.
1816         * python/python.c (gdbpy_get_current_progspace): Update.
1817         (gdbpy_progspaces): Update.
1818         * python/py-progspace.c (pspace_to_pspace_object): Return a new
1819         reference.
1820         * python/py-objfile.c (objfpy_get_progspace): Update.
1821         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
1822         Update.
1823
1824 2018-09-16  Tom Tromey  <tom@tromey.com>
1825
1826         * python/lib/gdb/__init__.py (current_progspace, objfiles)
1827         (solib_name, block_for_pc, find_pc_line): New functions.
1828         (execute_unwinders): Update.
1829         * python/py-block.c (gdbpy_block_for_pc): Remove.
1830         * python/py-inferior.c (infpy_get_progspace): New function.
1831         (inferior_object_getset) <progspace>: Add.
1832         * python/py-progspace.c (pspy_objfiles): Rewrite.
1833         (pspy_solib_name, pspy_block_for_pc)
1834         (pspy_find_pc_line, pspy_is_valid): New functions.
1835         (progspace_object_methods): Add entries for solib_name,
1836         block_for_pc, find_pc_line, is_valid.
1837         * python/python-internal.h (gdbpy_block_for_pc)
1838         (build_objfiles_list): Don't declare.
1839         * python/python.c: Don't include solib.h.
1840         (gdbpy_solib_name, gdbpy_find_pc_line)
1841         (gdbpy_get_current_progspace, build_objfiles_list)
1842         (gdbpy_objfiles): Remove.
1843         (GdbMethods) <current_progspace, objfiles, block_for_pc,
1844         solib_name, find_pc_line>: Remove entries.
1845
1846 2018-09-16  Tom Tromey  <tom@tromey.com>
1847
1848         * top.c (new_ui_command): Use GNU style for metasyntactic
1849         variables.
1850         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
1851         variables.
1852         * maint.c (maintenance_translate_address): Remove "<>" around
1853         text.
1854         * interps.c (interpreter_exec_cmd): Use GNU style for
1855         metasyntactic variables.
1856         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
1857         metasyntactic variables.
1858         * tracepoint.c (tfind_range_command): Use GNU style for
1859         metasyntactic variables.
1860         (tfind_outside_command): Likewise.
1861         (_initialize_tracepoint): Likewise.
1862         * remote.c (extended_remote_target::create_inferior): Use GNU
1863         style for metasyntactic variables.
1864         * sparc64-tdep.c (adi_examine_command): Use GNU style for
1865         metasyntactic variables.
1866         (adi_assign_command): Likewise.
1867
1868 2018-09-16  Tom Tromey  <tom@tromey.com>
1869
1870         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
1871         metasyntactic variables.  Print message if no disassembler options
1872         are available.
1873
1874 2018-09-15  Tom Tromey  <tom@tromey.com>
1875
1876         * infcmd.c (get_inferior_args): Return const char *.
1877         * inferior.h (get_inferior_args): Return type now const.
1878         * linux-tdep.c (linux_fill_prpsinfo): Update.
1879         * procfs.c (procfs_target::make_corefile_notes): Update.
1880
1881 2018-09-07  Tom Tromey  <tom@tromey.com>
1882
1883         * python/python.c (execute_gdb_command): Call bpstat_do_actions
1884         inside the TRY.
1885
1886 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
1887
1888         * nios2-tdep.c (nios2_type_align): New.
1889         (nios2_gdb_arch_init): Install type_align hook.
1890
1891 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
1892
1893         * eval.c (fake_method::fake_method): Call xzalloc directly for a
1894         type that is neither object file owned, nor gdbarch owned.
1895         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
1896         gdbarch is non-NULL.
1897         (alloc_type_instance): Allocate non-objfile owned types on the
1898         gdbarch obstack.
1899         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
1900         using TYPE_ALLOC to ensure memory is allocated on the correct
1901         obstack.
1902         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
1903         obstack, or the gdbarch obstack.
1904         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
1905
1906 2018-09-14  Tom Tromey  <tom@tromey.com>
1907
1908         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
1909         block.
1910
1911 2018-09-14  Tom Tromey  <tom@tromey.com>
1912
1913         * nat/fork-inferior.c (get_startup_shell): Remove "static".
1914
1915 2018-09-13  Tom Tromey  <tom@tromey.com>
1916
1917         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
1918         static.
1919
1920 2018-09-13  Tom Tromey  <tom@tromey.com>
1921
1922         * exec.c (try_open_exec_file): Use std::string.
1923
1924 2018-09-13  Tom Tromey  <tom@tromey.com>
1925
1926         * utils.h (gdb_bfd_errmsg): Return std::string.
1927         * exec.c (exec_file_attach): Update.
1928         * compile/compile-object-load.c (compile_object_load): Update.
1929         * utils.c (gdb_bfd_errmsg): Return std::string.
1930
1931 2018-09-13  Tom Tromey  <tom@tromey.com>
1932
1933         * procfs.c (struct procinfo_deleter): New.
1934         (procinfo_up): New typedef.
1935         (do_destroy_procinfo_cleanup): Remove.
1936         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
1937
1938 2018-09-13  Tom Tromey  <tom@tromey.com>
1939
1940         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
1941
1942 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1943 2018-09-13  Tom Tromey  <tom@tromey.com>
1944
1945         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
1946         (pspy_get_objfiles): New function.
1947         (progspace_object_methods): New.
1948         (pspace_object_type): Add tp_methods callback.
1949         * python/python-internal.h (build_objfiles_list): New
1950         declaration.
1951         * python/python.c (build_objfiles_list): New function.
1952         (gdbpy_objfiles): Implement using build_objfiles_list.
1953         * NEWS: Mention the Progspace.objfiles method.
1954
1955 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1956
1957         * python/py-inferior.c (infpy_get_progspace): New function.
1958         (inferior_object_getset): Add progspace property.
1959         * NEWS: Mention the new property.
1960
1961 2018-09-13  Tom Tromey  <tom@tromey.com>
1962
1963         PR rust/23650:
1964         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
1965
1966 2018-09-13  Tom Tromey  <tom@tromey.com>
1967
1968         PR rust/23626:
1969         * rust-lang.c (rust_enum_variant): Now static.
1970         (rust_empty_enum_p): New function.
1971         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
1972         Handle empty enum.
1973
1974 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
1975
1976         * python/py-inferior.c (infpy_repr): New.
1977         (inferior_object_type): Register infpy_repr.
1978         * python/py-objfile.c (objfpy_repr): New.
1979         (objfile_object_type): Register objfpy_repr.
1980
1981 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1982
1983         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
1984
1985 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
1986
1987         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
1988         typo.
1989
1990 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
1991
1992         * common/common-utils.c: Don't include '<sys/stat.h>'.
1993         (is_regular_file): Move to...
1994         * common/filestuff.c (is_regular_file): ... here.
1995         * common/common-utils.h (is_regular_file): Move to...
1996         * common/filestuff.h (is_regular_file): ... here.
1997
1998 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
1999
2000         * skip.c (debug_skip): New variable.
2001         (skiplist_entry::do_skip_file_p): Add debug output.
2002         (skiplist_entry::do_skip_gfile_p): Likewise.
2003         (skiplist_entry::skip_function_p): Likewise.
2004         (_initialize_step_skip): Create debug command.
2005         * NEWS: Mention set/show debug skip.
2006
2007 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2008
2009         * darwin-nat.c (should_disable_startup_with_shell):
2010         New function.
2011         (darwin_nat_target::create_inferior): Add call.
2012
2013 2018-09-11  Xavier Roirand  <roirand@adacore.com>
2014
2015         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
2016         inf_port, msg_state>: Initialize.
2017         (struct darwin_thread_info) <signaled, single_step>: Change
2018         type and initialize.
2019         (struct darwin_thread_info) <event>: Initialize.
2020
2021 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2022
2023         PR gdb/23555
2024         PR gdb/23558
2025         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
2026         guesses.
2027
2028 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2029
2030         Revert:
2031         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2032
2033         PR gdb/23555
2034         PR gdb/23558
2035         * gnulib/aclocal.m4: Regenerate.
2036         * gnulib/config.in: Regenerate.
2037         * gnulib/configure: Regenerate.
2038         * gnulib/import/Makefile.am: Update.
2039         * gnulib/import/Makefile.in: Update.
2040         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2041         * gnulib/import/_Noreturn.h: ... this.
2042         * gnulib/import/alloca.in.h: Update.
2043         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2044         * gnulib/import/arg-nonnull.h: ... this.
2045         * gnulib/import/assure.h: Update.
2046         * gnulib/import/at-func.c: Update.
2047         * gnulib/import/basename-lgpl.c: Update.
2048         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2049         * gnulib/import/c++defs.h: ... this.
2050         * gnulib/import/canonicalize-lgpl.c: Update.
2051         * gnulib/import/cdefs.h: Update.
2052         * gnulib/import/chdir-long.c: Update.
2053         * gnulib/import/chdir-long.h: Update.
2054         * gnulib/import/cloexec.c: Update.
2055         * gnulib/import/cloexec.h: Update.
2056         * gnulib/import/close.c: Update.
2057         * gnulib/import/closedir.c: Update.
2058         * gnulib/import/config.charset: Update.
2059         * gnulib/import/dirent-private.h: Update.
2060         * gnulib/import/dirent.in.h: Update.
2061         * gnulib/import/dirfd.c: Update.
2062         * gnulib/import/dirname-lgpl.c: Update.
2063         * gnulib/import/dirname.h: Update.
2064         * gnulib/import/dosname.h: Update.
2065         * gnulib/import/dup-safer-flag.c: Update.
2066         * gnulib/import/dup-safer.c: Update.
2067         * gnulib/import/dup.c: Update.
2068         * gnulib/import/dup2.c: Update.
2069         * gnulib/import/errno.in.h: Update.
2070         * gnulib/import/error.c: Update.
2071         * gnulib/import/error.h: Update.
2072         * gnulib/import/exitfail.c: Update.
2073         * gnulib/import/exitfail.h: Update.
2074         * gnulib/import/extra/update-copyright: Update.
2075         * gnulib/import/fchdir.c: Update.
2076         * gnulib/import/fcntl.c: Update.
2077         * gnulib/import/fcntl.in.h: Update.
2078         * gnulib/import/fd-hook.c: Update.
2079         * gnulib/import/fd-hook.h: Update.
2080         * gnulib/import/fd-safer-flag.c: Update.
2081         * gnulib/import/fd-safer.c: Update.
2082         * gnulib/import/fdopendir.c: Update.
2083         * gnulib/import/filename.h: Update.
2084         * gnulib/import/filenamecat-lgpl.c: Update.
2085         * gnulib/import/filenamecat.h: Update.
2086         * gnulib/import/flexmember.h: Update.
2087         * gnulib/import/float+.h: Update.
2088         * gnulib/import/float.c: Update.
2089         * gnulib/import/float.in.h: Update.
2090         * gnulib/import/fnmatch.c: Update.
2091         * gnulib/import/fnmatch.in.h: Update.
2092         * gnulib/import/fnmatch_loop.c: Update.
2093         * gnulib/import/fpucw.h: Update.
2094         * gnulib/import/frexp.c: Update.
2095         * gnulib/import/frexpl.c: Update.
2096         * gnulib/import/fstat.c: Update.
2097         * gnulib/import/fstatat.c: Update.
2098         * gnulib/import/getcwd-lgpl.c: Update.
2099         * gnulib/import/getcwd.c: Update.
2100         * gnulib/import/getdtablesize.c: Update.
2101         * gnulib/import/getlogin_r.c: Update.
2102         * gnulib/import/getprogname.c: Update.
2103         * gnulib/import/getprogname.h: Update.
2104         * gnulib/import/gettext.h: Update.
2105         * gnulib/import/gettimeofday.c: Update.
2106         * gnulib/import/glob-libc.h: Update.
2107         * gnulib/import/glob.c: Update.
2108         * gnulib/import/glob.in.h: Update.
2109         * gnulib/import/glob_internal.h: Update.
2110         * gnulib/import/glob_pattern_p.c: Update.
2111         * gnulib/import/globfree.c: Update.
2112         * gnulib/import/hard-locale.c: Update.
2113         * gnulib/import/hard-locale.h: Update.
2114         * gnulib/import/intprops.h: Update.
2115         * gnulib/import/inttypes.in.h: Update.
2116         * gnulib/import/isnan.c: Update.
2117         * gnulib/import/isnand-nolibm.h: Update.
2118         * gnulib/import/isnand.c: Update.
2119         * gnulib/import/isnanl-nolibm.h: Update.
2120         * gnulib/import/isnanl.c: Update.
2121         * gnulib/import/itold.c: Update.
2122         * gnulib/import/libc-config.h: Update.
2123         * gnulib/import/limits.in.h: Update.
2124         * gnulib/import/localcharset.c: Update.
2125         * gnulib/import/localcharset.h: Update.
2126         * gnulib/import/localtime-buffer.c: Update.
2127         * gnulib/import/localtime-buffer.h: Update.
2128         * gnulib/import/lstat.c: Update.
2129         * gnulib/import/m4/00gnulib.m4: Update.
2130         * gnulib/import/m4/__inline.m4: Update.
2131         * gnulib/import/m4/absolute-header.m4: Update.
2132         * gnulib/import/m4/alloca.m4: Update.
2133         * gnulib/import/m4/builtin-expect.m4: Update.
2134         * gnulib/import/m4/canonicalize.m4: Update.
2135         * gnulib/import/m4/chdir-long.m4: Update.
2136         * gnulib/import/m4/close.m4: Update.
2137         * gnulib/import/m4/closedir.m4: Update.
2138         * gnulib/import/m4/configmake.m4: Update.
2139         * gnulib/import/m4/d-ino.m4: Update.
2140         * gnulib/import/m4/d-type.m4: Update.
2141         * gnulib/import/m4/dirent_h.m4: Update.
2142         * gnulib/import/m4/dirfd.m4: Update.
2143         * gnulib/import/m4/dirname.m4: Update.
2144         * gnulib/import/m4/double-slash-root.m4: Update.
2145         * gnulib/import/m4/dup.m4: Update.
2146         * gnulib/import/m4/dup2.m4: Update.
2147         * gnulib/import/m4/eealloc.m4: Update.
2148         * gnulib/import/m4/environ.m4: Update.
2149         * gnulib/import/m4/errno_h.m4: Update.
2150         * gnulib/import/m4/error.m4: Update.
2151         * gnulib/import/m4/exponentd.m4: Update.
2152         * gnulib/import/m4/exponentl.m4: Update.
2153         * gnulib/import/m4/extensions.m4: Update.
2154         * gnulib/import/m4/extern-inline.m4: Update.
2155         * gnulib/import/m4/fchdir.m4: Update.
2156         * gnulib/import/m4/fcntl-o.m4: Update.
2157         * gnulib/import/m4/fcntl.m4: Update.
2158         * gnulib/import/m4/fcntl_h.m4: Update.
2159         * gnulib/import/m4/fdopendir.m4: Update.
2160         * gnulib/import/m4/filenamecat.m4: Update.
2161         * gnulib/import/m4/flexmember.m4: Update.
2162         * gnulib/import/m4/float_h.m4: Update.
2163         * gnulib/import/m4/fnmatch.m4: Update.
2164         * gnulib/import/m4/fnmatch_h.m4: Update.
2165         * gnulib/import/m4/fpieee.m4: Update.
2166         * gnulib/import/m4/frexp.m4: Update.
2167         * gnulib/import/m4/frexpl.m4: Update.
2168         * gnulib/import/m4/fstat.m4: Update.
2169         * gnulib/import/m4/fstatat.m4: Update.
2170         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2171         * gnulib/import/m4/getcwd-path-max.m4: Update.
2172         * gnulib/import/m4/getcwd.m4: Update.
2173         * gnulib/import/m4/getdtablesize.m4: Update.
2174         * gnulib/import/m4/getlogin.m4: Update.
2175         * gnulib/import/m4/getlogin_r.m4: Update.
2176         * gnulib/import/m4/getpagesize.m4: Update.
2177         * gnulib/import/m4/getprogname.m4: Update.
2178         * gnulib/import/m4/gettimeofday.m4: Update.
2179         * gnulib/import/m4/glibc21.m4: Update.
2180         * gnulib/import/m4/glob.m4: Update.
2181         * gnulib/import/m4/glob_h.m4: Update.
2182         * gnulib/import/m4/gnulib-cache.m4: Update.
2183         * gnulib/import/m4/gnulib-common.m4: Update.
2184         * gnulib/import/m4/gnulib-comp.m4: Update.
2185         * gnulib/import/m4/gnulib-tool.m4: Update.
2186         * gnulib/import/m4/hard-locale.m4: Update.
2187         * gnulib/import/m4/include_next.m4: Update.
2188         * gnulib/import/m4/inttypes-pri.m4: Update.
2189         * gnulib/import/m4/inttypes.m4: Update.
2190         * gnulib/import/m4/isnand.m4: Update.
2191         * gnulib/import/m4/isnanl.m4: Update.
2192         * gnulib/import/m4/largefile.m4: Update.
2193         * gnulib/import/m4/limits-h.m4: Update.
2194         * gnulib/import/m4/localcharset.m4: Update.
2195         * gnulib/import/m4/locale-fr.m4: Update.
2196         * gnulib/import/m4/locale-ja.m4: Update.
2197         * gnulib/import/m4/locale-zh.m4: Update.
2198         * gnulib/import/m4/localtime-buffer.m4: Update.
2199         * gnulib/import/m4/longlong.m4: Update.
2200         * gnulib/import/m4/lstat.m4: Update.
2201         * gnulib/import/m4/malloc.m4: Update.
2202         * gnulib/import/m4/malloca.m4: Update.
2203         * gnulib/import/m4/math_h.m4: Update.
2204         * gnulib/import/m4/mbrtowc.m4: Update.
2205         * gnulib/import/m4/mbsinit.m4: Update.
2206         * gnulib/import/m4/mbsrtowcs.m4: Update.
2207         * gnulib/import/m4/mbstate_t.m4: Update.
2208         * gnulib/import/m4/memchr.m4: Update.
2209         * gnulib/import/m4/memmem.m4: Update.
2210         * gnulib/import/m4/mempcpy.m4: Update.
2211         * gnulib/import/m4/memrchr.m4: Update.
2212         * gnulib/import/m4/mkdir.m4: Update.
2213         * gnulib/import/m4/mkstemp.m4: Update.
2214         * gnulib/import/m4/mmap-anon.m4: Update.
2215         * gnulib/import/m4/mode_t.m4: Update.
2216         * gnulib/import/m4/msvc-inval.m4: Update.
2217         * gnulib/import/m4/msvc-nothrow.m4: Update.
2218         * gnulib/import/m4/multiarch.m4: Update.
2219         * gnulib/import/m4/nocrash.m4: Update.
2220         * gnulib/import/m4/off_t.m4: Update.
2221         * gnulib/import/m4/onceonly.m4: Update.
2222         * gnulib/import/m4/open-cloexec.m4: Update.
2223         * gnulib/import/m4/open.m4: Update.
2224         * gnulib/import/m4/openat.m4: Update.
2225         * gnulib/import/m4/opendir.m4: Update.
2226         * gnulib/import/m4/pathmax.m4: Update.
2227         * gnulib/import/m4/rawmemchr.m4: Update.
2228         * gnulib/import/m4/readdir.m4: Update.
2229         * gnulib/import/m4/readlink.m4: Update.
2230         * gnulib/import/m4/realloc.m4: Update.
2231         * gnulib/import/m4/rename.m4: Update.
2232         * gnulib/import/m4/rewinddir.m4: Update.
2233         * gnulib/import/m4/rmdir.m4: Update.
2234         * gnulib/import/m4/save-cwd.m4: Update.
2235         * gnulib/import/m4/secure_getenv.m4: Update.
2236         * gnulib/import/m4/setenv.m4: Update.
2237         * gnulib/import/m4/signal_h.m4: Update.
2238         * gnulib/import/m4/ssize_t.m4: Update.
2239         * gnulib/import/m4/stat-time.m4: Update.
2240         * gnulib/import/m4/stat.m4: Update.
2241         * gnulib/import/m4/std-gnu11.m4: Update.
2242         * gnulib/import/m4/stdbool.m4: Update.
2243         * gnulib/import/m4/stddef_h.m4: Update.
2244         * gnulib/import/m4/stdint.m4: Update.
2245         * gnulib/import/m4/stdio_h.m4: Update.
2246         * gnulib/import/m4/stdlib_h.m4: Update.
2247         * gnulib/import/m4/strchrnul.m4: Update.
2248         * gnulib/import/m4/strdup.m4: Update.
2249         * gnulib/import/m4/strerror.m4: Update.
2250         * gnulib/import/m4/string_h.m4: Update.
2251         * gnulib/import/m4/strstr.m4: Update.
2252         * gnulib/import/m4/strtok_r.m4: Update.
2253         * gnulib/import/m4/sys_socket_h.m4: Update.
2254         * gnulib/import/m4/sys_stat_h.m4: Update.
2255         * gnulib/import/m4/sys_time_h.m4: Update.
2256         * gnulib/import/m4/sys_types_h.m4: Update.
2257         * gnulib/import/m4/tempname.m4: Update.
2258         * gnulib/import/m4/time_h.m4: Update.
2259         * gnulib/import/m4/unistd-safer.m4: Update.
2260         * gnulib/import/m4/unistd_h.m4: Update.
2261         * gnulib/import/m4/warn-on-use.m4: Update.
2262         * gnulib/import/m4/wchar_h.m4: Update.
2263         * gnulib/import/m4/wchar_t.m4: Update.
2264         * gnulib/import/m4/wctype_h.m4: Update.
2265         * gnulib/import/m4/wint_t.m4: Update.
2266         * gnulib/import/malloc.c: Update.
2267         * gnulib/import/malloc/scratch_buffer.h: Update.
2268         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
2269         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
2270         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
2271         * gnulib/import/malloca.c: Update.
2272         * gnulib/import/malloca.h: Update.
2273         * gnulib/import/malloca.valgrind: Update.
2274         * gnulib/import/math.in.h: Update.
2275         * gnulib/import/mbrtowc.c: Update.
2276         * gnulib/import/mbsinit.c: Update.
2277         * gnulib/import/mbsrtowcs-impl.h: Update.
2278         * gnulib/import/mbsrtowcs-state.c: Update.
2279         * gnulib/import/mbsrtowcs.c: Update.
2280         * gnulib/import/memchr.c: Update.
2281         * gnulib/import/memmem.c: Update.
2282         * gnulib/import/mempcpy.c: Update.
2283         * gnulib/import/memrchr.c: Update.
2284         * gnulib/import/mkdir.c: Update.
2285         * gnulib/import/mkstemp.c: Update.
2286         * gnulib/import/msvc-inval.c: Update.
2287         * gnulib/import/msvc-inval.h: Update.
2288         * gnulib/import/msvc-nothrow.c: Update.
2289         * gnulib/import/msvc-nothrow.h: Update.
2290         * gnulib/import/open.c: Update.
2291         * gnulib/import/openat-die.c: Update.
2292         * gnulib/import/openat-priv.h: Update.
2293         * gnulib/import/openat-proc.c: Update.
2294         * gnulib/import/openat.c: Update.
2295         * gnulib/import/openat.h: Update.
2296         * gnulib/import/opendir.c: Update.
2297         * gnulib/import/pathmax.h: Update.
2298         * gnulib/import/pipe-safer.c: Update.
2299         * gnulib/import/rawmemchr.c: Update.
2300         * gnulib/import/readdir.c: Update.
2301         * gnulib/import/readlink.c: Update.
2302         * gnulib/import/realloc.c: Update.
2303         * gnulib/import/ref-add.sin: Update.
2304         * gnulib/import/ref-del.sin: Update.
2305         * gnulib/import/rename.c: Update.
2306         * gnulib/import/rewinddir.c: Update.
2307         * gnulib/import/rmdir.c: Update.
2308         * gnulib/import/same-inode.h: Update.
2309         * gnulib/import/save-cwd.c: Update.
2310         * gnulib/import/save-cwd.h: Update.
2311         * gnulib/import/scratch_buffer.h: Update.
2312         * gnulib/import/secure_getenv.c: Update.
2313         * gnulib/import/setenv.c: Update.
2314         * gnulib/import/signal.in.h: Update.
2315         * gnulib/import/stat-time.c: Update.
2316         * gnulib/import/stat-time.h: Update.
2317         * gnulib/import/stat-w32.c: Update.
2318         * gnulib/import/stat-w32.h: Update.
2319         * gnulib/import/stat.c: Update.
2320         * gnulib/import/stdbool.in.h: Update.
2321         * gnulib/import/stddef.in.h: Update.
2322         * gnulib/import/stdint.in.h: Update.
2323         * gnulib/import/stdio.in.h: Update.
2324         * gnulib/import/stdlib.in.h: Update.
2325         * gnulib/import/str-two-way.h: Update.
2326         * gnulib/import/strchrnul.c: Update.
2327         * gnulib/import/strdup.c: Update.
2328         * gnulib/import/streq.h: Update.
2329         * gnulib/import/strerror-override.c: Update.
2330         * gnulib/import/strerror-override.h: Update.
2331         * gnulib/import/strerror.c: Update.
2332         * gnulib/import/string.in.h: Update.
2333         * gnulib/import/stripslash.c: Update.
2334         * gnulib/import/strnlen1.c: Update.
2335         * gnulib/import/strnlen1.h: Update.
2336         * gnulib/import/strstr.c: Update.
2337         * gnulib/import/strtok_r.c: Update.
2338         * gnulib/import/sys_stat.in.h: Update.
2339         * gnulib/import/sys_time.in.h: Update.
2340         * gnulib/import/sys_types.in.h: Update.
2341         * gnulib/import/tempname.c: Update.
2342         * gnulib/import/tempname.h: Update.
2343         * gnulib/import/time.in.h: Update.
2344         * gnulib/import/unistd--.h: Update.
2345         * gnulib/import/unistd-safer.h: Update.
2346         * gnulib/import/unistd.in.h: Update.
2347         * gnulib/import/unsetenv.c: Update.
2348         * gnulib/import/verify.h: Update.
2349         * gnulib/import/extra/snippet/warn-on-use.h: Update.
2350         * gnulib/import/wchar.in.h: Update.
2351         * gnulib/import/wctype.in.h: Update.
2352         * gnulib/import/xalloc-oversized.h: Update.
2353         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
2354         "53e2c179f26a890fa6685af4b6c1397ee370433b".
2355
2356 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
2357
2358         * record-btrace.c (get_thread_current_frame): Remove
2359         old_inferior_ptid.
2360
2361 2018-09-10  Jerome Guitton  <guitton@adacore.com>
2362
2363         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
2364         with check_tag to 1 if and only if the type is tagged and the
2365         component being searched cannot been found in the current
2366         view. Otherwise, always call ada_to_fixed_type with
2367         check_tag to 0.
2368
2369 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2370
2371         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
2372         declaration.
2373         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
2374         * ada-varobj.c (ada_varobj_get_number_of_children,
2375         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
2376
2377 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2378
2379         * ada-valprint.c (ada_value_print): Use type instead of
2380         enclosing type.
2381
2382 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2383
2384         * ada-lang.c (ada_value_subscript): Handle case when parameter is
2385         an array of access to unconstrained array.
2386
2387 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2388
2389         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
2390         (ada_check_typedef): Use it.
2391
2392 2018-09-10  Xavier Roirand  <roirand@adacore.com>
2393
2394         * ada-varobj.c (ada_varobj_describe_struct_child)
2395         (ada_varobj_describe_child): Handle union case like struct one.
2396
2397 2018-09-10  Tom Tromey  <tom@tromey.com>
2398
2399         PR python/18380:
2400         * python/python.c (_initialize_python): Make example in "python"
2401         help work in Python 3.
2402
2403 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
2404
2405         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
2406         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
2407         $(EXEEXT) to the script, as it is not a program.
2408
2409 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
2410
2411         * python/py-prettyprint.c (pretty_print_one_value): Return
2412         gdbpy_ref<>.
2413         (print_string_repr): Adjust.
2414         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
2415         * python/python-internal.h (apply_varobj_pretty_printer): Return
2416         gdbpy_ref<>.
2417         * varobj.c (varobj_value_get_print_value): Adjust.
2418
2419 2018-09-08  Tom Tromey  <tom@tromey.com>
2420
2421         PR python/16047:
2422         * python/py-prettyprint.c (pretty_print_one_value): Check for
2423         to_string method.
2424
2425 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2426
2427         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
2428         replace_operator_with_call.
2429
2430 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2431
2432         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
2433
2434 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2435
2436         * ada-typeprint.c (print_range): Print the bounds using TYPE
2437         rather than its TYPE_TARGET_TYPE.
2438
2439 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2440
2441         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
2442         call to ada_to_fixed_value_create.
2443
2444 2018-09-08  Jerome Guitton  <guitton@adacore.com>
2445
2446         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
2447
2448 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2449
2450         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
2451         by calls to error.
2452
2453 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2454
2455         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
2456         Move update of loop variable "fi".
2457
2458 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
2459
2460         * ada-lang.c (value_assign_to_component): In the case of
2461         big-endian targets, extract the bits of the given VAL
2462         using an src_offset of zero if container is not a scalar.
2463
2464 2018-09-06  Simon Ser  <contact@emersion.fr>
2465
2466         PR gdb/23105
2467         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
2468         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2469         * fbsd-tdep.c (fbsd_make_note_desc): New.
2470         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
2471         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
2472         * target.h (enum target_object) Add FreeBSD-specific
2473         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
2474
2475 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2476
2477         * compile/compile-c.h (generate_c_for_variable_locations):
2478         Change reference to pointer.
2479         * compile/compile-c-support.c (compile_program) <compute>:
2480         Likewise.
2481         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
2482         (generate_c_for_for_one_variable): Likewise
2483         (generate_c_for_variable_locations): Likewise
2484         * compile/compile-c-types.c (compile_c_instance::convert_type):
2485         Likewise
2486         * compile/compile-cplus-symbols.c (convert_one_symbol):
2487         std::move the scope passed to enter_scope.
2488         * compile/compile-cplus-types.c
2489         (compile_cplus_instance::enter_scope): Make parameter
2490         rvalue-reference.
2491         (compile_cplus_instance::new_scope): Change reference to
2492         pointer.
2493         (compile_cplus_instance::convert_type): Likewise
2494         (compile_cplus_convert_typedef): std::move the scope passed to
2495         enter_scope.
2496         (compile_cplus_convert_struct_or_union): Likewise.
2497         (compile_cplus_convert_enum): Likewise.
2498         (compile_cplus_convert_namespace): Likewise.
2499         * compile/compile-cplus.h (compile_cplus_instance)
2500         <enter_scope>: Make parameter rvalue-reference.
2501         * compile/compile-internal.h (compile_instance)
2502         <get_cached_type>: Likewise
2503         * compile/compile-loc2c.c (push): Likewise
2504         (pushf): Likewise
2505         (unary): Likewise
2506         (binary): Likewise
2507         (print_label): Likewise
2508         (pushf_register_address): Likewise
2509         (pushf_register): Likewise
2510         (do_compile_dwarf_expr_to_c): Likewise
2511         (compile_dwarf_expr_to_c): Likewise
2512         (compile_dwarf_bounds_to_c): Likewise
2513         * compile/compile.c (compile_instance::get_cached_type):
2514         Likewise
2515         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
2516         (compile_dwarf_bounds_to_c): Likewise
2517         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
2518         (dwarf2_compile_property_to_c): Likewise
2519         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
2520         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
2521         Likewise
2522
2523 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2524
2525         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
2526         * tui/tui-data.c (init_content_element): Don't initialize it.
2527
2528 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
2529
2530         * tui/tui-data.h (struct tui_win_info)
2531         <detail::opaque>: Remove.
2532         * tui/tui-data.c (init_win_info): Remove assignment.
2533
2534 2018-09-05  Tom Tromey  <tom@tromey.com>
2535
2536         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
2537         -Wformat-nonliteral.
2538         * target-float.c (host_float_ops<T>::to_string)
2539         (host_float_ops<T>::from_string): Use
2540         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2541         * configure: Rebuild.
2542
2543 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
2544
2545         * printcmd.c (printf_c_string): Use
2546         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
2547         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
2548
2549 2018-09-05  Tom Tromey  <tom@tromey.com>
2550
2551         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
2552
2553 2018-09-05  Tom de Vries  <tdevries@suse.de>
2554
2555         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
2556         with resolve_abstract_p == true.
2557         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
2558         defaulting to false. Propagate resolve_abstract_p to
2559         dwarf2_fetch_die_loc_sect_off.
2560         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
2561         parameter, defaulting to false.
2562         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
2563         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
2564         parameter.
2565         * dwarf2read.h (struct die_info): Forward-declare.
2566         (die_info_ptr): New typedef.
2567         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
2568
2569 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
2570
2571         GDB 8.2 released.
2572
2573 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
2574             Pedro Alves  <palves@redhat.com>
2575
2576         * gnulib/Makefile.in (aclocal_m4_deps): Move to
2577         "aclocal-m4-deps.mk".  Include file here.
2578         $(srcdir)/aclocal.m4: Add "configure.ac".
2579         * gnulib/aclocal-m4-deps.mk: New file.
2580         * gnulib/update-gnulib.sh: Automatically update
2581         "aclocal-m4-deps.mk".
2582
2583 2018-09-04  Tom Tromey  <tom@tromey.com>
2584
2585         * configure: Rebuild.
2586         * configure.ac: Remove multi-ice code.
2587
2588 2018-09-04  Tom Tromey  <tom@tromey.com>
2589
2590         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
2591         (ada-exp.o): Update.
2592
2593 2018-09-04  Tom Tromey  <tom@tromey.com>
2594
2595         * Makefile.in (printcmd.o, target-float.o): Remove.
2596         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
2597
2598 2018-09-04  Tom Tromey  <tom@tromey.com>
2599
2600         * gnulib/Makefile.in: Remove obsolete comment.
2601         * Makefile.in: Remove obsolete comment.
2602
2603 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
2604
2605         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
2606         line with '+'.
2607
2608 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2609
2610         * riscv-tdep.c: Add 'prologue-value.h' include.
2611         (struct riscv_unwind_cache): New struct.
2612         (riscv_debug_unwinder): New global.
2613         (riscv_scan_prologue): Update arguments, capture register details
2614         from prologue scan.
2615         (riscv_skip_prologue): Reformat arguments line, move end of
2616         prologue calculation into riscv_scan_prologue.
2617         (riscv_frame_cache): Update return type, create
2618         riscv_unwind_cache, scan the prologue, and fill in remaining cache
2619         details.
2620         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
2621         (riscv_frame_prev_register): Use the trad_frame within the
2622         riscv_unwind_cache.
2623         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
2624         flag.
2625
2626 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
2627
2628         * trad-frame.h (trad_frame_set_realreg): Declare.
2629         (trad_frame_set_addr): Declare.
2630         * trad-frame.c (trad_frame_set_realreg): Define new function.
2631         (trad_frame_set_addr): Define new function.
2632         (trad_frame_set_reg_realreg): Use new function.
2633         (trad_frame_set_reg_addr): Use new function.
2634
2635 2018-09-01  Keith Seitz  <keiths@redhat.com>
2636
2637         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
2638         pulongest instead of "%lld".
2639         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
2640         ATTRIBUTE_UNUSED.
2641
2642 2018-08-31  Tom Tromey  <tom@tromey.com>
2643
2644         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
2645         variant part type.
2646
2647 2018-08-31  Pedro Alves  <palves@redhat.com>
2648
2649         * gdbarch.h: Regenerate.
2650
2651 2018-08-31  Pedro Alves  <palves@redhat.com>
2652
2653         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
2654         * target.h (Hardware watchpoint interfaces): Describe
2655         continuable/steppable/non-steppable watchpoints.
2656         * gdbarch.h, gdbarch.c: Regenerate.
2657
2658 2018-08-31  Pedro Alves  <palves@redhat.com>
2659
2660         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
2661         Delete.
2662         * s390-linux-nat.c
2663         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
2664         * target.h (target_ops::have_continuable_watchpoint): Delete.
2665         (target_have_continuable_watchpoint): Delete.
2666         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
2667         * target-delegates.c: Regenerate.
2668
2669 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
2670
2671         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
2672         the files present in "gnulib/import/m4/".
2673
2674 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2675
2676         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
2677         c.sw, c.swsp, and c.sdsp.
2678
2679 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2680
2681         * riscv-tdep.c (struct riscv_inferior_data): Delete.
2682         (riscv_read_misa_reg): Don't cache value read into inferior data.
2683         (riscv_new_inferior_data): Delete.
2684         (riscv_inferior_data_cleanup): Delete.
2685         (riscv_inferior_data): Delete.
2686         (riscv_invalidate_inferior_data): Delete.
2687         (_initialize_riscv_tdep): Remove initialisation of inferior data.
2688
2689 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
2690
2691         * compile/compile-cplus-types.c
2692         (compile_cplus_instance::leave_scope): Take the address of scope
2693         object.
2694         (compile_cplus_instance::convert_qualified_base): Compare quals
2695         to 0.
2696
2697 2018-08-30  Keith Seitz  <keiths@redhat.com>
2698
2699         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
2700         Use "%s" and host_address_to_string instead of "%p" in printf.
2701
2702 2018-08-29  Keith Seitz  <keiths@redhat.com>
2703
2704         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
2705         and compile-cplus-types.c.
2706         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
2707         * c-lang.c (cplus_language_defn): Set C++ compile functions.
2708         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
2709         Declare.
2710         * compile/compile-c-support.c: Include compile-cplus.h.
2711         (load_libcompile): Templatize.
2712         (get_compile_context): "New" function.
2713         (c_get_compile_context): Use get_compile_context.
2714         (cplus_get_compile_context): New function.
2715         (cplus_push_user_expression, cplus_pop_user_expression)
2716         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
2717         (cplus_compute_program): Define new structs/functions.
2718         * compile/compile-cplus-symmbols.c: New file.
2719         * compile/compile-cplus-types.c: New file.
2720         * compile/compile-cplus.h: New file.
2721         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
2722         Declare.
2723         * compile/compile-object-load.c (get_out_value_type): Use
2724         strncmp_iw when comparing symbol names.
2725         (compile_object_load): Add mst_bss and mst_data.
2726         * compile/compile.c (_initialize_compile): Remove
2727         -Wno-implicit-function-declaration from `compile_args'.
2728         * compile/gcc-cp-plugin.h: New file.
2729         * NEWS: Mention C++ compile support and new debug options.
2730
2731 2018-08-29  Keith Seitz  <keiths@redhat.com>
2732
2733         * linespec.c (collect_info::add_symbol): Make virtual.
2734         (struct symbol_searcher_collect_info): New struct.
2735         (symbol_searcher::find_all_symbols): New method.
2736         * symtab.h (class symbol_searcher): New class.
2737
2738 2018-08-29  Keith Seitz  <keiths@redhat.com>
2739
2740         * linespec.c (struct linespec) <function_symbols, label_symbols>:
2741         Change to vector of block_symbol.  Update all users.
2742         (struct collect_info) <symbols>: Likewise.
2743         (collect_info::add_symbol): Take block_symbol as argument.
2744         Update all callers.
2745         (decode_compound_collector) <m_symbols>: Change type to vector
2746         of block_symbol.  Update all users.
2747         (decode_compound_collector::operator ()): Change parameter type
2748         to block_symbol.
2749         (find_method, find_function_symbols, find_linespec_symbols)
2750         (find_label_symbols_in_block, find_label_symbols): Change symbol
2751         vectors to block_symbol vectors.
2752         * symtab.h (symbol_found_callback_ftype): Change parameter type to
2753         block_symbol.
2754
2755 2018-08-29  Keith Seitz  <keiths@redhat.com>
2756
2757         * linespec.c (symbolp): Remove typedef and VEC definitions.
2758         (bound_minimal_symbol_d): Likewise.
2759
2760 2018-08-29  Keith Seitz  <keiths@redhat.com>
2761
2762         * linespec.c (decode_compound_collector::decode_compound_collector):
2763         Remove initialization for `m_symtabs'.
2764         (decode_compound_collector::release_symbols): Change return type
2765         to std::vector.  Update all callers.
2766         (class decode_compound_collector) <m_symbols>: Change type to
2767         std::vector.
2768         (lookup_prefix_sym): Change return type to std::vector.  Update all
2769         callers.
2770         (compare_symbols): Remove.
2771         (std_compare_symbols): Rename to `compare_symbols'.
2772         (find_method): Change `sym_classes' parameter to std::vector.
2773         Update all callers.  Use std::sort to sort sym_classes.
2774         (find_linespec_symbols): Remove cleanup.
2775
2776 2018-08-29  Keith Seitz  <keiths@redhat.com>
2777
2778         * linespec.c (struct linespec) <minimal_symbols>: Change type to
2779         std::vector.  Update all users.
2780         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
2781         (struct collect_info) <minimal_symbols>: Likewise.
2782         (compare_msymbols): Return bool.  Change parameters to const
2783         bound_minimal_symbol references.
2784         (find_method, find_function_symbols, find_linespec_symbols): Change
2785         `minsyms' parameter to std::vector.  Update all callers.
2786
2787 2018-08-29  Keith Seitz  <keiths@redhat.com>
2788
2789         * linespec.c (struct linespec) <label_symbols>: Change type to
2790         std::vector.  Update all users.
2791         (find_label_symbols_in_block): Change `result' parameter to
2792         std::vector.  Update all callers.
2793         (find_label_symbols): Return std::vector.  Update all callers.
2794
2795 2018-08-29  Keith Seitz  <keiths@redhat.com>
2796
2797         * linespec.c (struct linespec) <function_symbols>: Change type to
2798         std::vector.  Update all users.
2799         (struct collect_info) <function_symbols>: Likewise.
2800         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
2801         (std_compare_symbols): New function.
2802         (find_method, find_function_symbols, find_linespec_symbols)
2803         (find_label_symbols_in_block): Change `symbols' parameter to
2804         std::vector.  Update all callers.
2805         (find_label_symbols): Likewise for `function_symbols' and
2806         `label_funcs_ret'.
2807
2808 2018-08-29  Keith Seitz  <keiths@redhat.com>
2809
2810         * linespec.c (symtab_vector_up): Define.
2811         (struct linespec) <file_symtabs>: Change type to std::vector *.
2812         Update all uses.
2813         (struct collect_info) <file_symtabs>: Likewise.
2814         (collect_symtabs_from_filename): Return symtab_vector_up.
2815         Update all callers.
2816         (decode_objc): Remove cleanup.
2817         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
2818         (symtab_collector::release_symtabs): Return symtab_vector_up.
2819         Update all callers.
2820         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
2821         Update all users.
2822         (collect_symtabs_from_filename, symtabs_from_filename): Return
2823         symtab_vector_up.  Update all callers.
2824
2825 2018-08-29  Tom Tromey  <tom@tromey.com>
2826
2827         * csky-tdep.c (csky_analyze_prologue): Use
2828         core_addr_to_string_nz.
2829
2830 2018-08-29  Tom Tromey  <tom@tromey.com>
2831
2832         * windows-nat.c (struct xlate_exception) <them>: Change type to
2833         DWORD.
2834         (xlate): Fix formatting.  Remove last entry.
2835         (struct xlate_exception, xlate): Comment out.
2836         (windows_nat_target::resume): Use ranged for.
2837
2838 2018-08-29  Jim Wilson  <jimw@sifive.com>
2839
2840         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
2841         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
2842         of NT_PRFPREG.
2843         (riscv_linux_nat_target::store_registers): Likewise.
2844
2845 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
2846
2847         PR gdb/23555
2848         PR gdb/23558
2849         * gnulib/aclocal.m4: Regenerate.
2850         * gnulib/config.in: Regenerate.
2851         * gnulib/configure: Regenerate.
2852         * gnulib/import/Makefile.am: Update.
2853         * gnulib/import/Makefile.in: Update.
2854         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
2855         * gnulib/import/_Noreturn.h: ... this.
2856         * gnulib/import/alloca.in.h: Update.
2857         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
2858         * gnulib/import/arg-nonnull.h: ... this.
2859         * gnulib/import/assure.h: Update.
2860         * gnulib/import/at-func.c: Update.
2861         * gnulib/import/basename-lgpl.c: Update.
2862         * gnulib/import/extra/snippet/c++defs.h: Rename to...
2863         * gnulib/import/c++defs.h: ... this.
2864         * gnulib/import/canonicalize-lgpl.c: Update.
2865         * gnulib/import/cdefs.h: Update.
2866         * gnulib/import/chdir-long.c: Update.
2867         * gnulib/import/chdir-long.h: Update.
2868         * gnulib/import/cloexec.c: Update.
2869         * gnulib/import/cloexec.h: Update.
2870         * gnulib/import/close.c: Update.
2871         * gnulib/import/closedir.c: Update.
2872         * gnulib/import/config.charset: Update.
2873         * gnulib/import/dirent-private.h: Update.
2874         * gnulib/import/dirent.in.h: Update.
2875         * gnulib/import/dirfd.c: Update.
2876         * gnulib/import/dirname-lgpl.c: Update.
2877         * gnulib/import/dirname.h: Update.
2878         * gnulib/import/dosname.h: Update.
2879         * gnulib/import/dup-safer-flag.c: Update.
2880         * gnulib/import/dup-safer.c: Update.
2881         * gnulib/import/dup.c: Update.
2882         * gnulib/import/dup2.c: Update.
2883         * gnulib/import/errno.in.h: Update.
2884         * gnulib/import/error.c: Update.
2885         * gnulib/import/error.h: Update.
2886         * gnulib/import/exitfail.c: Update.
2887         * gnulib/import/exitfail.h: Update.
2888         * gnulib/import/extra/update-copyright: Update.
2889         * gnulib/import/fchdir.c: Update.
2890         * gnulib/import/fcntl.c: Update.
2891         * gnulib/import/fcntl.in.h: Update.
2892         * gnulib/import/fd-hook.c: Update.
2893         * gnulib/import/fd-hook.h: Update.
2894         * gnulib/import/fd-safer-flag.c: Update.
2895         * gnulib/import/fd-safer.c: Update.
2896         * gnulib/import/fdopendir.c: Update.
2897         * gnulib/import/filename.h: Update.
2898         * gnulib/import/filenamecat-lgpl.c: Update.
2899         * gnulib/import/filenamecat.h: Update.
2900         * gnulib/import/flexmember.h: Update.
2901         * gnulib/import/float+.h: Update.
2902         * gnulib/import/float.c: Update.
2903         * gnulib/import/float.in.h: Update.
2904         * gnulib/import/fnmatch.c: Update.
2905         * gnulib/import/fnmatch.in.h: Update.
2906         * gnulib/import/fnmatch_loop.c: Update.
2907         * gnulib/import/fpucw.h: Update.
2908         * gnulib/import/frexp.c: Update.
2909         * gnulib/import/frexpl.c: Update.
2910         * gnulib/import/fstat.c: Update.
2911         * gnulib/import/fstatat.c: Update.
2912         * gnulib/import/getcwd-lgpl.c: Update.
2913         * gnulib/import/getcwd.c: Update.
2914         * gnulib/import/getdtablesize.c: Update.
2915         * gnulib/import/getlogin_r.c: Update.
2916         * gnulib/import/getprogname.c: Update.
2917         * gnulib/import/getprogname.h: Update.
2918         * gnulib/import/gettext.h: Update.
2919         * gnulib/import/gettimeofday.c: Update.
2920         * gnulib/import/glob-libc.h: Update.
2921         * gnulib/import/glob.c: Update.
2922         * gnulib/import/glob.in.h: Update.
2923         * gnulib/import/glob_internal.h: Update.
2924         * gnulib/import/glob_pattern_p.c: Update.
2925         * gnulib/import/globfree.c: Update.
2926         * gnulib/import/hard-locale.c: Update.
2927         * gnulib/import/hard-locale.h: Update.
2928         * gnulib/import/intprops.h: Update.
2929         * gnulib/import/inttypes.in.h: Update.
2930         * gnulib/import/isnan.c: Update.
2931         * gnulib/import/isnand-nolibm.h: Update.
2932         * gnulib/import/isnand.c: Update.
2933         * gnulib/import/isnanl-nolibm.h: Update.
2934         * gnulib/import/isnanl.c: Update.
2935         * gnulib/import/itold.c: Update.
2936         * gnulib/import/libc-config.h: Update.
2937         * gnulib/import/limits.in.h: Update.
2938         * gnulib/import/localcharset.c: Update.
2939         * gnulib/import/localcharset.h: Update.
2940         * gnulib/import/localtime-buffer.c: Update.
2941         * gnulib/import/localtime-buffer.h: Update.
2942         * gnulib/import/lstat.c: Update.
2943         * gnulib/import/m4/00gnulib.m4: Update.
2944         * gnulib/import/m4/__inline.m4: Update.
2945         * gnulib/import/m4/absolute-header.m4: Update.
2946         * gnulib/import/m4/alloca.m4: Update.
2947         * gnulib/import/m4/builtin-expect.m4: Update.
2948         * gnulib/import/m4/canonicalize.m4: Update.
2949         * gnulib/import/m4/chdir-long.m4: Update.
2950         * gnulib/import/m4/close.m4: Update.
2951         * gnulib/import/m4/closedir.m4: Update.
2952         * gnulib/import/m4/configmake.m4: Update.
2953         * gnulib/import/m4/d-ino.m4: Update.
2954         * gnulib/import/m4/d-type.m4: Update.
2955         * gnulib/import/m4/dirent_h.m4: Update.
2956         * gnulib/import/m4/dirfd.m4: Update.
2957         * gnulib/import/m4/dirname.m4: Update.
2958         * gnulib/import/m4/double-slash-root.m4: Update.
2959         * gnulib/import/m4/dup.m4: Update.
2960         * gnulib/import/m4/dup2.m4: Update.
2961         * gnulib/import/m4/eealloc.m4: Update.
2962         * gnulib/import/m4/environ.m4: Update.
2963         * gnulib/import/m4/errno_h.m4: Update.
2964         * gnulib/import/m4/error.m4: Update.
2965         * gnulib/import/m4/exponentd.m4: Update.
2966         * gnulib/import/m4/exponentl.m4: Update.
2967         * gnulib/import/m4/extensions.m4: Update.
2968         * gnulib/import/m4/extern-inline.m4: Update.
2969         * gnulib/import/m4/fchdir.m4: Update.
2970         * gnulib/import/m4/fcntl-o.m4: Update.
2971         * gnulib/import/m4/fcntl.m4: Update.
2972         * gnulib/import/m4/fcntl_h.m4: Update.
2973         * gnulib/import/m4/fdopendir.m4: Update.
2974         * gnulib/import/m4/filenamecat.m4: Update.
2975         * gnulib/import/m4/flexmember.m4: Update.
2976         * gnulib/import/m4/float_h.m4: Update.
2977         * gnulib/import/m4/fnmatch.m4: Update.
2978         * gnulib/import/m4/fnmatch_h.m4: Update.
2979         * gnulib/import/m4/fpieee.m4: Update.
2980         * gnulib/import/m4/frexp.m4: Update.
2981         * gnulib/import/m4/frexpl.m4: Update.
2982         * gnulib/import/m4/fstat.m4: Update.
2983         * gnulib/import/m4/fstatat.m4: Update.
2984         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
2985         * gnulib/import/m4/getcwd-path-max.m4: Update.
2986         * gnulib/import/m4/getcwd.m4: Update.
2987         * gnulib/import/m4/getdtablesize.m4: Update.
2988         * gnulib/import/m4/getlogin.m4: Update.
2989         * gnulib/import/m4/getlogin_r.m4: Update.
2990         * gnulib/import/m4/getpagesize.m4: Update.
2991         * gnulib/import/m4/getprogname.m4: Update.
2992         * gnulib/import/m4/gettimeofday.m4: Update.
2993         * gnulib/import/m4/glibc21.m4: Update.
2994         * gnulib/import/m4/glob.m4: Update.
2995         * gnulib/import/m4/glob_h.m4: Update.
2996         * gnulib/import/m4/gnulib-cache.m4: Update.
2997         * gnulib/import/m4/gnulib-common.m4: Update.
2998         * gnulib/import/m4/gnulib-comp.m4: Update.
2999         * gnulib/import/m4/gnulib-tool.m4: Update.
3000         * gnulib/import/m4/hard-locale.m4: Update.
3001         * gnulib/import/m4/include_next.m4: Update.
3002         * gnulib/import/m4/inttypes-pri.m4: Update.
3003         * gnulib/import/m4/inttypes.m4: Update.
3004         * gnulib/import/m4/isnand.m4: Update.
3005         * gnulib/import/m4/isnanl.m4: Update.
3006         * gnulib/import/m4/largefile.m4: Update.
3007         * gnulib/import/m4/limits-h.m4: Update.
3008         * gnulib/import/m4/localcharset.m4: Update.
3009         * gnulib/import/m4/locale-fr.m4: Update.
3010         * gnulib/import/m4/locale-ja.m4: Update.
3011         * gnulib/import/m4/locale-zh.m4: Update.
3012         * gnulib/import/m4/localtime-buffer.m4: Update.
3013         * gnulib/import/m4/longlong.m4: Update.
3014         * gnulib/import/m4/lstat.m4: Update.
3015         * gnulib/import/m4/malloc.m4: Update.
3016         * gnulib/import/m4/malloca.m4: Update.
3017         * gnulib/import/m4/math_h.m4: Update.
3018         * gnulib/import/m4/mbrtowc.m4: Update.
3019         * gnulib/import/m4/mbsinit.m4: Update.
3020         * gnulib/import/m4/mbsrtowcs.m4: Update.
3021         * gnulib/import/m4/mbstate_t.m4: Update.
3022         * gnulib/import/m4/memchr.m4: Update.
3023         * gnulib/import/m4/memmem.m4: Update.
3024         * gnulib/import/m4/mempcpy.m4: Update.
3025         * gnulib/import/m4/memrchr.m4: Update.
3026         * gnulib/import/m4/mkdir.m4: Update.
3027         * gnulib/import/m4/mkstemp.m4: Update.
3028         * gnulib/import/m4/mmap-anon.m4: Update.
3029         * gnulib/import/m4/mode_t.m4: Update.
3030         * gnulib/import/m4/msvc-inval.m4: Update.
3031         * gnulib/import/m4/msvc-nothrow.m4: Update.
3032         * gnulib/import/m4/multiarch.m4: Update.
3033         * gnulib/import/m4/nocrash.m4: Update.
3034         * gnulib/import/m4/off_t.m4: Update.
3035         * gnulib/import/m4/onceonly.m4: Update.
3036         * gnulib/import/m4/open-cloexec.m4: Update.
3037         * gnulib/import/m4/open.m4: Update.
3038         * gnulib/import/m4/openat.m4: Update.
3039         * gnulib/import/m4/opendir.m4: Update.
3040         * gnulib/import/m4/pathmax.m4: Update.
3041         * gnulib/import/m4/rawmemchr.m4: Update.
3042         * gnulib/import/m4/readdir.m4: Update.
3043         * gnulib/import/m4/readlink.m4: Update.
3044         * gnulib/import/m4/realloc.m4: Update.
3045         * gnulib/import/m4/rename.m4: Update.
3046         * gnulib/import/m4/rewinddir.m4: Update.
3047         * gnulib/import/m4/rmdir.m4: Update.
3048         * gnulib/import/m4/save-cwd.m4: Update.
3049         * gnulib/import/m4/secure_getenv.m4: Update.
3050         * gnulib/import/m4/setenv.m4: Update.
3051         * gnulib/import/m4/signal_h.m4: Update.
3052         * gnulib/import/m4/ssize_t.m4: Update.
3053         * gnulib/import/m4/stat-time.m4: Update.
3054         * gnulib/import/m4/stat.m4: Update.
3055         * gnulib/import/m4/std-gnu11.m4: Update.
3056         * gnulib/import/m4/stdbool.m4: Update.
3057         * gnulib/import/m4/stddef_h.m4: Update.
3058         * gnulib/import/m4/stdint.m4: Update.
3059         * gnulib/import/m4/stdio_h.m4: Update.
3060         * gnulib/import/m4/stdlib_h.m4: Update.
3061         * gnulib/import/m4/strchrnul.m4: Update.
3062         * gnulib/import/m4/strdup.m4: Update.
3063         * gnulib/import/m4/strerror.m4: Update.
3064         * gnulib/import/m4/string_h.m4: Update.
3065         * gnulib/import/m4/strstr.m4: Update.
3066         * gnulib/import/m4/strtok_r.m4: Update.
3067         * gnulib/import/m4/sys_socket_h.m4: Update.
3068         * gnulib/import/m4/sys_stat_h.m4: Update.
3069         * gnulib/import/m4/sys_time_h.m4: Update.
3070         * gnulib/import/m4/sys_types_h.m4: Update.
3071         * gnulib/import/m4/tempname.m4: Update.
3072         * gnulib/import/m4/time_h.m4: Update.
3073         * gnulib/import/m4/unistd-safer.m4: Update.
3074         * gnulib/import/m4/unistd_h.m4: Update.
3075         * gnulib/import/m4/warn-on-use.m4: Update.
3076         * gnulib/import/m4/wchar_h.m4: Update.
3077         * gnulib/import/m4/wchar_t.m4: Update.
3078         * gnulib/import/m4/wctype_h.m4: Update.
3079         * gnulib/import/m4/wint_t.m4: Update.
3080         * gnulib/import/malloc.c: Update.
3081         * gnulib/import/malloc/scratch_buffer.h: Update.
3082         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3083         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3084         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3085         * gnulib/import/malloca.c: Update.
3086         * gnulib/import/malloca.h: Update.
3087         * gnulib/import/malloca.valgrind: Update.
3088         * gnulib/import/math.in.h: Update.
3089         * gnulib/import/mbrtowc.c: Update.
3090         * gnulib/import/mbsinit.c: Update.
3091         * gnulib/import/mbsrtowcs-impl.h: Update.
3092         * gnulib/import/mbsrtowcs-state.c: Update.
3093         * gnulib/import/mbsrtowcs.c: Update.
3094         * gnulib/import/memchr.c: Update.
3095         * gnulib/import/memmem.c: Update.
3096         * gnulib/import/mempcpy.c: Update.
3097         * gnulib/import/memrchr.c: Update.
3098         * gnulib/import/mkdir.c: Update.
3099         * gnulib/import/mkstemp.c: Update.
3100         * gnulib/import/msvc-inval.c: Update.
3101         * gnulib/import/msvc-inval.h: Update.
3102         * gnulib/import/msvc-nothrow.c: Update.
3103         * gnulib/import/msvc-nothrow.h: Update.
3104         * gnulib/import/open.c: Update.
3105         * gnulib/import/openat-die.c: Update.
3106         * gnulib/import/openat-priv.h: Update.
3107         * gnulib/import/openat-proc.c: Update.
3108         * gnulib/import/openat.c: Update.
3109         * gnulib/import/openat.h: Update.
3110         * gnulib/import/opendir.c: Update.
3111         * gnulib/import/pathmax.h: Update.
3112         * gnulib/import/pipe-safer.c: Update.
3113         * gnulib/import/rawmemchr.c: Update.
3114         * gnulib/import/readdir.c: Update.
3115         * gnulib/import/readlink.c: Update.
3116         * gnulib/import/realloc.c: Update.
3117         * gnulib/import/ref-add.sin: Update.
3118         * gnulib/import/ref-del.sin: Update.
3119         * gnulib/import/rename.c: Update.
3120         * gnulib/import/rewinddir.c: Update.
3121         * gnulib/import/rmdir.c: Update.
3122         * gnulib/import/same-inode.h: Update.
3123         * gnulib/import/save-cwd.c: Update.
3124         * gnulib/import/save-cwd.h: Update.
3125         * gnulib/import/scratch_buffer.h: Update.
3126         * gnulib/import/secure_getenv.c: Update.
3127         * gnulib/import/setenv.c: Update.
3128         * gnulib/import/signal.in.h: Update.
3129         * gnulib/import/stat-time.c: Update.
3130         * gnulib/import/stat-time.h: Update.
3131         * gnulib/import/stat-w32.c: Update.
3132         * gnulib/import/stat-w32.h: Update.
3133         * gnulib/import/stat.c: Update.
3134         * gnulib/import/stdbool.in.h: Update.
3135         * gnulib/import/stddef.in.h: Update.
3136         * gnulib/import/stdint.in.h: Update.
3137         * gnulib/import/stdio.in.h: Update.
3138         * gnulib/import/stdlib.in.h: Update.
3139         * gnulib/import/str-two-way.h: Update.
3140         * gnulib/import/strchrnul.c: Update.
3141         * gnulib/import/strdup.c: Update.
3142         * gnulib/import/streq.h: Update.
3143         * gnulib/import/strerror-override.c: Update.
3144         * gnulib/import/strerror-override.h: Update.
3145         * gnulib/import/strerror.c: Update.
3146         * gnulib/import/string.in.h: Update.
3147         * gnulib/import/stripslash.c: Update.
3148         * gnulib/import/strnlen1.c: Update.
3149         * gnulib/import/strnlen1.h: Update.
3150         * gnulib/import/strstr.c: Update.
3151         * gnulib/import/strtok_r.c: Update.
3152         * gnulib/import/sys_stat.in.h: Update.
3153         * gnulib/import/sys_time.in.h: Update.
3154         * gnulib/import/sys_types.in.h: Update.
3155         * gnulib/import/tempname.c: Update.
3156         * gnulib/import/tempname.h: Update.
3157         * gnulib/import/time.in.h: Update.
3158         * gnulib/import/unistd--.h: Update.
3159         * gnulib/import/unistd-safer.h: Update.
3160         * gnulib/import/unistd.in.h: Update.
3161         * gnulib/import/unsetenv.c: Update.
3162         * gnulib/import/verify.h: Update.
3163         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3164         * gnulib/import/wchar.in.h: Update.
3165         * gnulib/import/wctype.in.h: Update.
3166         * gnulib/import/xalloc-oversized.h: Update.
3167         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3168         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3169
3170 2018-08-16  Gary Benson <gbenson@redhat.com>
3171
3172         PR gdb/13000:
3173         * gdb/main.c (captured_main_1): Exit with nonzero status
3174         in batch mode if the last command to be executed failed.
3175         * NEWS: Mention the above.
3176
3177 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
3178
3179         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
3180         end of warning message.
3181
3182 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3183
3184         PR gdb/22943:
3185         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
3186         (aarch64_extract_return_value): Use
3187         aapcs_is_vfp_call_or_return_candidate.
3188         (aarch64_return_in_memory): Likewise.
3189         (aarch64_store_return_value): Likewise.
3190
3191 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3192
3193         * aarch64-tdep.c
3194         (aapcs_is_vfp_call_or_return_candidate): Make static
3195         (pass_in_v_or_stack): Remove function.
3196         (pass_in_v_vfp_candidate): New function.
3197         (aarch64_push_dummy_call): Check for float register candidates.
3198
3199 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
3200
3201         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
3202         (aapcs_is_vfp_call_or_return_candidate_1): New function.
3203         (aapcs_is_vfp_call_or_return_candidate): Likewise.
3204
3205 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
3206
3207         PR build/23399
3208         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
3209         (struct ipa_sym_addresses): Rename to...
3210         (struct ipa_sym_addresses_common): ... this.
3211         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
3212
3213 2018-08-28  Tom Tromey  <tom@tromey.com>
3214
3215         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3216         (token_fifo): Now a std::vector.
3217         (yylex, c_parse): Update.
3218         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3219         (token_fifo): Now a std::vector.
3220         (yylex, d_parse): Update.
3221         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
3222         (token_fifo): Now a std::vector.
3223         (yylex, go_parse): Update.
3224
3225 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
3226
3227         * parser-defs.h (struct type_stack) <elements>: Change type to
3228         std::vector<union type_stack_elt>.
3229         <depth, size>: Remove.
3230         * parse.c (parse_exp_in_context_1): Adjust.
3231         (type_stack_reserve): Remove.
3232         (check_type_stack_depth): Remove.
3233         (insert_into_type_stack): Adjust to std::vector.
3234         (insert_type): Likewise.
3235         (push_type): Likewise.
3236         (push_type_int): Likewise.
3237         (insert_type_address_space): Likewise.
3238         (pop_type): Likewise.
3239         (pop_type_int): Likewise.
3240         (pop_typelist): Likewise.
3241         (pop_type_stack): Likewise.
3242         (append_type_stack): Likewise.
3243         (push_type_stack): Likewise.
3244         (get_type_stack): Likewise.
3245         (type_stack_cleanup): Likewise.
3246         (push_typelist): Likewise.
3247         (follow_types): Likewise.
3248         (_initialize_parse): Likewise.
3249
3250 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
3251
3252         * NEWS: Mention csky target.
3253
3254 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
3255             Hafiz Abid Qadeer  <abidh@codesourcery.com>
3256             Don Breazeal  <donb@codesourcery.com>
3257
3258         * csky-linux-tdep.c: New file.
3259         * csky-tdep.c: Likewise.
3260         * csky-tdep.h: Likewise.
3261         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
3262         csky-tdep.o.
3263         (HFILES_NO_SRCDIR): Add csky-tdep.h.
3264         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
3265         * configure.tgt: Add csky support.
3266
3267 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
3268
3269         * python/py-framefilter.c (py_print_frame): Print frame architecture
3270         when printing on an MI output.
3271
3272 2018-08-27  Tom Tromey  <tom@tromey.com>
3273
3274         PR build/23087:
3275         * configure: Rebuild.
3276         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
3277
3278 2018-08-27  Tom Tromey  <tom@tromey.com>
3279
3280         * aarch64-linux-tdep.c
3281         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
3282         casts to int.
3283
3284 2018-08-27  Tom Tromey  <tom@tromey.com>
3285
3286         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
3287         unsigned.
3288         (ppc64_standard_linkage1, ppc64_standard_linkage2)
3289         (ppc64_standard_linkage3, ppc64_standard_linkage4)
3290         (ppc64_standard_linkage5, ppc64_standard_linkage6)
3291         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
3292         unsigned.
3293
3294 2018-08-27  Tom Tromey  <tom@tromey.com>
3295
3296         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
3297         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
3298
3299 2018-08-27  Tom Tromey  <tom@tromey.com>
3300
3301         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
3302         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
3303         ULONGEST_MAX.
3304         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
3305         ULONGEST_MAX.
3306         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
3307         ULONGEST_MAX.
3308         * sparc-linux-tdep.c (sparc32_linux_sigframe)
3309         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
3310         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
3311         ULONGEST_MAX.
3312         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
3313         (ppc64_linux_sigaction_tramp_frame)
3314         (ppc32_linux_sighandler_tramp_frame)
3315         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3316         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
3317         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
3318         * mn10300-linux-tdep.c (am33_linux_sigframe)
3319         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
3320         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
3321         * mips-linux-tdep.c (mips_linux_o32_sigframe)
3322         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
3323         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
3324         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
3325         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
3326         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
3327         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
3328         * microblaze-linux-tdep.c
3329         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
3330         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
3331         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
3332         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
3333         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
3334         * common/common-types.h (ULONGEST_MAX): New define.
3335         (CORE_ADDR_MAX): Fix formatting.
3336         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
3337         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
3338         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
3339         (arm_linux_rt_sigreturn_tramp_frame)
3340         (arm_eabi_linux_sigreturn_tramp_frame)
3341         (arm_eabi_linux_rt_sigreturn_tramp_frame)
3342         (thumb2_eabi_linux_sigreturn_tramp_frame)
3343         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
3344         (arm_linux_restart_syscall_tramp_frame)
3345         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
3346         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
3347         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
3348         ULONGEST_MAX.
3349         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
3350
3351 2018-08-27  Tom Tromey  <tom@tromey.com>
3352
3353         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
3354         CORE_ADDR_MAX.
3355         * mips-tdep.c (mips_deal_with_atomic_sequence)
3356         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
3357         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
3358         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
3359         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
3360         CORE_ADDR_MAX.
3361         * aarch64-tdep.c (aarch64_software_single_step): Use
3362         CORE_ADDR_MAX.
3363
3364 2018-08-27  Tom Tromey  <tom@tromey.com>
3365
3366         * linespec.c (complete_linespec_component): Add cast to "char".
3367         * completer.c (completion_tracker::build_completion_result): Add
3368         cast to "char".
3369
3370 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3371
3372         * solist.h (struct solist, struct target_so_ops): Fix
3373         indentation.
3374
3375 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3376
3377         * ada-tasks.c (ada_task_info_s): Remove typedef.
3378         (DEF_VEC_O(ada_task_info_s)): Remove.
3379         (struct ada_tasks_inferior_data): Initialize fields.
3380         <task_list>: Make an std::vector.
3381         (get_ada_tasks_inferior_data): Allocate with new.
3382         (ada_get_task_number): Adjust.
3383         (get_task_number_from_id): Likewise.
3384         (valid_task_id): Likewise.
3385         (ada_get_task_info_from_ptid): Likewise.
3386         (iterate_over_live_ada_tasks): Likewise.
3387         (add_ada_task): Likewise.
3388         (read_known_tasks): Likewise.
3389         (ada_build_task_list): Likewise.
3390         (print_ada_task_info): Likewise.
3391         (info_task): Likewise.
3392         (task_command_1): Likewise.
3393
3394 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
3395
3396         * ada-lang.c (add_angle_brackets): Return std::string.
3397
3398 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
3399
3400         * python/py-threadevent.c (py_get_event_thread): Initialize
3401         pythread.
3402
3403 2018-08-24  Pedro Alves  <palves@redhat.com>
3404
3405         * python/py-bpevent.c (create_breakpoint_event_object): Use
3406         copy-initialization.
3407         * python/py-continueevent.c (emit_continue_event): Use
3408         copy-initialization.
3409         * python/py-exitedevent.c (create_exited_event_object): Return a
3410         gdbpy_ref<>.
3411         (emit_exited_event): Use copy-initialization.
3412         * python/py-inferior.c (python_new_inferior)
3413         (python_inferior_deleted, add_thread_object): Use
3414         copy-initialization.
3415         * python/py-infevents.c (create_inferior_call_event_object)
3416         (create_register_changed_event_object)
3417         (create_memory_changed_event_object): Return a gdbpy_ref<>.
3418         (emit_inferior_call_event, emit_memory_changed_event)
3419         (emit_register_changed_event): Use copy-initialization.
3420         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3421         Return a gdbpy_ref<>.
3422         (emit_new_objfile_event): Use copy-initialization.
3423         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
3424         (emit_clear_objfiles_event): Use copy-initialization.
3425         * python/py-signalevent.c (create_signal_event_object): Use
3426         copy-initialization.
3427         * python/py-threadevent.c (create_thread_event_object): Use
3428         copy-initialization.
3429
3430 2018-08-24  Pedro Alves  <palves@redhat.com>
3431             Simon Marchi  <simon.marchi@ericsson.com>
3432
3433         PR gdb/23379
3434         * python/py-continueevent.c: Include "gdbthread.h".
3435         (create_continue_event_object): Add intro comment.  Add 'ptid'
3436         parameter.  Use it to find thread to pass to
3437         create_thread_event_object.
3438         (emit_continue_event): Pass PTID down to
3439         create_continue_event_object.
3440         * python/py-event.h (py_get_event_thread): Declare.
3441         (create_thread_event_object): Remove default from 'thread'
3442         parameter.
3443         * python/py-stopevent.c (create_stop_event_object): Use
3444         py_get_event_thread.
3445         * python/py-threadevent.c (get_event_thread): Rename to ...
3446         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
3447         and use it to find the thread.
3448         (create_thread_event_object): Assert that THREAD isn't null.
3449         Don't find the event thread here.
3450
3451 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
3452
3453         * block.h (blockrange, blockranges): New struct declarations.
3454         (struct block): Add new field named `ranges'.
3455         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
3456         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
3457         macros for accessing ranges in struct block.
3458         (make_blockranges): New declaration.
3459         block.c (make_blockranges): New function.
3460         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
3461         for block.
3462         * symtab.h (find_pc_partial_function): Add new parameter `block'.
3463         * blockframe.c (cache_pc_function_block): New static global.
3464         (clear_pc_function_cache): Clear cache_pc_function_block.
3465         (find_pc_partial_function): Move comment to symtab.h.  Add
3466         support for non-contiguous blocks.
3467         * cli/cli-cmds.c (block.h): Include.
3468         (print_disassembly): Handle printing of non-contiguous blocks.
3469         (disassemble_current_function): Likewise.
3470         (disassemble_command): Likewise.
3471
3472         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
3473         BLOCK_START.
3474         * blockframe.c (get_pc_function_start): Likewise.
3475         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
3476         (gcc_symbol_address): Likewise.
3477         * compile/compile-object-run.c (compile_object_run): Likewise.
3478         * compile/compile.c (get_expr_block_and_pc): Likewise.
3479         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
3480         (func_addr_to_tail_call_list): Likewise.
3481         * findvar.c (default_read_var_value): Likewise.
3482         * inline-frame.c (inline_frame_this_id): Likewise.
3483         (skip-inline_frames): Likewise.
3484         * infcmd.c (until_next_command): Likewise.
3485         * linespec.c (convert_linespec_to_sals): Likewise.
3486         * parse.c (parse_exp_in_context_1): Likewise.
3487         * printcmd.c (build_address_symbolic): likewise.
3488         (info_address_command): Likewise.
3489         symtab.c (find_function_start_sal): Likewise.
3490         (skip_prologue_sal): Likewise.
3491         (find_function_alias_target): Likewise.
3492         (find_gnu_ifunc): Likewise.
3493         * stack.c (find_frame_funname): Likewise.
3494         * symtab.c (fixup_symbol_section): Likewise.
3495         (find_function_start_sal): Likewise.
3496         (skip_prologue_sal): Likewsie.
3497         (find_function_alias_target): Likewise.
3498         (find_gnu_ifunc): Likewise.
3499         * tracepoint.c (info_scope_command): Likewise.
3500         * value.c (value_fn_field): Likewise.
3501
3502         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
3503         in place of find_pc_partial_function.
3504         * blockframe.c (find_function_entry_range_from_pc): New function.
3505         * symtab.h (find_function_entry_range_from_pc): Declare and document.
3506         * objfiles.c (objfile_relocate1): Relocate start and end addresses
3507         for each range in a block.
3508
3509
3510 2018-08-23  Xavier Roirand  <roirand@adacore.com>
3511
3512         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
3513         incrementation.
3514
3515 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3516
3517         * solib-svr4.c (read_program_headers_from_bfd): Return
3518         gdb::optional<gdb::byte_vector>.
3519         (svr4_exec_displacement): Adjust.
3520
3521 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3522
3523         * solib-svr4.c (read_program_header): Return
3524         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
3525         (find_program_interpreter): Return
3526         gdb::optional<gdb::byte_vector>.
3527         (scan_dyntag_auxv): Adjust.
3528         (enable_break): Adjust.
3529         (svr4_exec_displacement): Adjust.
3530
3531 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3532
3533         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
3534         * inf-child.c (inf_child_target::terminal_save_inferior): New.
3535
3536 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
3537
3538         * guile/scm-string.c (gdbscm_scm_from_printf): Use
3539         string_vprintf.
3540         * guile/scm-utils.c (gdbscm_printf): Likewise.
3541         * serial.c (serial_printf): Likewise.
3542         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
3543
3544 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
3545
3546         * stack.c (print_frame): Print frame architecture when printing on
3547         an MI output.
3548         * NEWS: Mention new "arch" attribute in frame output.
3549
3550 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3551
3552         * arch/aarch64.h (aarch64_regnum): Update comment.
3553
3554 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
3555
3556         * NEWS: Add SVE to 8.2 section.
3557
3558 2018-08-21  Pedro Alves  <palves@redhat.com>
3559
3560         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
3561         out from gdbscm_parse_function_args.
3562         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
3563         gdbscm_parse_function_args_1.
3564
3565 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
3566
3567         PR gdb/17816
3568         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
3569         operator.
3570
3571 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
3572
3573         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
3574
3575 2018-08-19  Michael Spang  <spang@google.com>
3576
3577         PR gdb/11786
3578         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
3579         for PT_TLS segments.
3580
3581 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
3582
3583         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
3584         dwarf_variable_value.
3585         * dwarf2-frame.c (class dwarf_expr_executor):
3586         Add override for dwarf_variable_value.
3587         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
3588         (class symbol_needs_eval_context): Likewise.
3589         (indirect_synthetic_pointer): Add forward declaration.
3590         (sect_variable_value): New function.
3591         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
3592         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
3593         for DW_OP_GNU_variable_value.
3594
3595 2018-08-16  Tom Tromey  <tom@tromey.com>
3596
3597         * top.c (read_command_file): Update.
3598         (command_line_input): Remove "repeat" argument.
3599         * ada-lang.c (get_selections): Update.
3600         * linespec.c (decode_line_2): Update.
3601         * defs.h (command_line_input): Remove argument.
3602         * cli/cli-script.c (read_next_line): Update.
3603         * python/py-gdb-readline.c: Update.
3604
3605 2018-08-17  Tom Tromey  <tom@tromey.com>
3606
3607         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
3608         command_line_input.
3609
3610 2018-08-15  Tom Tromey  <tom@tromey.com>
3611
3612         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
3613
3614 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
3615
3616         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
3617         If used, use find_pc_partial_function to find address range
3618         to disassemble.
3619         * mi/mi-main.c (mi_cmd_list_features): Report
3620         "data-disassemble-a-option" feature.
3621         * NEWS: Mention new -data-disassemble option -a.
3622
3623 2018-08-13  Tom Tromey  <tom@tromey.com>
3624
3625         * common/common-defs.h (_FORTIFY_SOURCE): Define.
3626
3627 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3628
3629         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
3630         (aarch64_linux_collect_sve_regset): Likewise.
3631         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
3632         * regcache.h (regcache_map_entry_size): New function.
3633
3634 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3635
3636         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
3637         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
3638         (SVE_HEADER_VL_LENGTH): Likewise.
3639         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
3640         (SVE_HEADER_FLAGS_LENGTH): Likewise.
3641         (SVE_HEADER_RESERVED_LENGTH): Likewise.
3642         (SVE_HEADER_SIZE_OFFSET): Likewise.
3643         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
3644         (SVE_HEADER_VL_OFFSET): Likewise.
3645         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
3646         (SVE_HEADER_FLAGS_OFFSET): Likewise.
3647         (SVE_HEADER_RESERVED_OFFSET): Likewise.
3648         (SVE_HEADER_SIZE): Likewise.
3649         (aarch64_linux_core_read_vq): Add function.
3650         (aarch64_linux_core_read_description): Check for SVE section.
3651
3652 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
3653
3654         * aarch64-fbsd-tdep.c
3655         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
3656         collect_size.
3657         * aarch64-linux-tdep.c
3658         (aarch64_linux_iterate_over_regset_sections): Likewise.
3659         * alpha-linux-tdep.c
3660         (alpha_linux_iterate_over_regset_sections):
3661         * alpha-nbsd-tdep.c
3662         (alphanbsd_iterate_over_regset_sections): Likewise.
3663         * amd64-fbsd-tdep.c
3664         (amd64fbsd_iterate_over_regset_sections): Likewise.
3665         * amd64-linux-tdep.c
3666         (amd64_linux_iterate_over_regset_sections): Likewise.
3667         * arm-bsd-tdep.c
3668         (armbsd_iterate_over_regset_sections): Likewise.
3669         * arm-fbsd-tdep.c
3670         (arm_fbsd_iterate_over_regset_sections): Likewise.
3671         * arm-linux-tdep.c
3672         (arm_linux_iterate_over_regset_sections): Likewise.
3673         * corelow.c (get_core_registers_cb): Likewise.
3674         (core_target::fetch_registers): Likewise.
3675         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
3676         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
3677         * gdbarch.h (void): Regenerate.
3678         * gdbarch.sh: Add supply_size and collect_size.
3679         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
3680         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
3681         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
3682         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
3683         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
3684         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
3685         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
3686         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
3687         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
3688         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
3689         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
3690         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
3691         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
3692         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
3693         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections): Likewise.
3694         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
3695         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
3696         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
3697         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
3698         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
3699         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
3700         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections): Likewise.
3701         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
3702         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
3703         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
3704         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
3705         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
3706         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
3707         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
3708         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
3709
3710 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
3711
3712         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
3713         with string_printf.
3714
3715 2018-08-10  Keith Seitz  <keiths@redhat.com>
3716
3717         * compile/compile-c-support.c (add_code_header, add_code_footer):
3718         Move into policy class.
3719         (c_push_user_expression, pop_user_expression_nop)
3720         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
3721         (compile_program): New host class.
3722         (c_compile_program): New typedef.
3723         (c_compute_porgram): Use c_compile_program.
3724
3725 2018-08-10  Keith Seitz  <keiths@redhat.com>
3726
3727         * compile/compile-internal.h (compile_instance::~compile_instance):
3728         Remove calls to htab_delete.
3729         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
3730         * compile.c (compile_instance::compile_instance): Initialize
3731         htab unique pointers.
3732         (compile_instance::get_cached_type, compile_instance::insert_type)
3733         (compile_instance::error_symbol_once): Update for unique_ptr.
3734
3735 2018-08-10  Keith Seitz  <keiths@redhat.com>
3736
3737         * compile/compile-c-symbols.c (struct symbol_error)
3738         (hash_symbol_error, eq_symbol_error, del_symbol_error)
3739         (compile_instance::insert_symbol_error)
3740         (compile_instance::error_symbol_once): Move to ...
3741         * compile/compile.c: ... here.
3742
3743 2018-08-10  Keith Seitz  <keiths@redhat.com>
3744
3745         * compile/compile-c-support.c (c_get_compile_context): Use `new'
3746         instead of `new_compile_instance'.
3747         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
3748         Update description.
3749         If the symbol error map is not initialized, create it.
3750         (generate_c_for_for_one_symbol): Do not check/initialize
3751         the symbol error map.
3752         * compile/compile-c-types.c (compile_c_instance): Make a class.
3753         Update all callers.
3754         (compile_instance::compile_instance): Initialize the type cache.
3755         (get_cached_type): New function.
3756         (insert_type): Update description.
3757         (compile_c_instance::m_default_cflags): Define.
3758         (convert_type): Update description.  Use get_cached_type.
3759         (delete_instance): Moved to destructor.
3760         (new_compile_instance): Moved to constructor.
3761         * compile/compile-c.h (compile_c_instance): Make class inheriting
3762         from compile_instance.
3763         <base>: Remove field.
3764         <type_map, symbol_err_map>: Move to base class.
3765         <c_plugin>: Rename to `m_plugin' and remove pointer type.
3766         * compile/compile-internal.h (compile_instance): Make class.
3767         <type_map_t, symbol_err_map_t>: Define.
3768         <fe>: Rename to `m_gcc_fe'.
3769         <scope, block, gcc_target_options>: Add `m_' prefix.
3770         <m_type_map, m_symbol_err_map>: New fields, moved from
3771         compile_c_instance.
3772         <destroy>: Remove.
3773         (convert_type, new_compile_instance): Remove.
3774         * compile/compile.c (cleanup_compile_instance): Remove.
3775         (compile_to_object): Use unique_ptr to eliminate cleanups.
3776         (compile_instance::set_print_callback, compile_instance::version)
3777         (compile_instance::set_verbose)
3778         (compile_instance::set_driver_filename)
3779         (compile_instance::set_triplet_regexp)
3780         (compile_instance::set_arguments)
3781         (compile_instance::set_source_file)
3782         (compile_instance::compile): Define.
3783
3784 2018-08-10  Keith Seitz  <keiths@redhat.com>
3785
3786         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
3787         * compile/compile-c-types.c: Define GCC_METHODN macros and include
3788         gcc-c-fe.def to define C plugin.
3789         (delete_instance): Delete `c_plugin'.
3790         (new_compile_instance): Initialize `c_plugin'.
3791         * compile/compile-c.h: Include gcc_c_plugin.h.
3792         (struct compile_c_instance) <c_plugin>: New member.
3793         * gcc-c-plugin.h: New file.
3794         Update all callers with API change.
3795
3796 2018-08-10  Keith Seitz  <keiths@redhat.com>
3797
3798         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
3799         (HFILES_NO_SRCDIR): ... to here.
3800         Add compile-internal.h and compile-c.h.
3801         * compile/compile-c-support.c: Include compile-c.h.
3802         * compile/compile-c-symbols.c: Include compile-c.h.
3803         (generate_c_for_variable_locations): Update comment.
3804         * compile/compile-c-types.c: Include compile-c.h.
3805         * compile/compile-c.h: New file -- moved C language declarations
3806         from other files here.
3807         * compile/compile-internal.h: Do not include hashtab.h or
3808         common/enum-flags.h.
3809         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
3810         (gcc_convert_symbol, gcc_symbol_address)
3811         (generate_c_for_variable_locations, c_get_mode_for_size)
3812         (c_get_range_decl_name): Definitions moved to compile-c.h.
3813         * compile/compile-loc2c.c: Include compile-c.h.
3814
3815 2018-08-10  Keith Seitz  <keiths@redhat.com>
3816
3817         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
3818         (c_symbol_substitution_name): ... this.
3819         Update all callers.
3820
3821 2018-08-10  Keith Seitz  <keiths@redhat.com>
3822
3823         * compile/compile-c-support.c (c_compute_program): Use
3824         unique_xmalloc_ptr to eliminate cleanup.
3825         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
3826         Return a unique_xmalloc_ptr and eliminate cleanup.
3827         * compile/compile-internal.h (generate_c_for_variable_locations):
3828         Return unique_xmalloc_ptr and update description.
3829
3830 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
3831
3832         * corelow.c (core_target::get_core_register_section): Rename
3833         min_size to section_min_size.
3834
3835 2018-08-09  Jim Wilson  <jimw@sifive.com>
3836
3837         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
3838         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
3839         * NEWS: Mention new GNU/Linux RISC-V target.
3840         * configure.host: Add riscv*-*-linux*.
3841         * configure.nat: Add riscv*.
3842         * configure.tgt: Add riscv*-*-linux*.
3843         * riscv-linux-nat.c: New file.
3844         * riscv-linux-tdep.c: New file.
3845
3846 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3847
3848         * infrun.c (resume): Make static, add forward declaration.
3849         (proceed): Update header comment.
3850         * infrun.h (resume): Delete declaration.
3851
3852 2018-08-09  Tom Tromey  <tom@tromey.com>
3853
3854         * riscv-tdep.h: Minor formatting fixes.
3855
3856 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
3857
3858         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
3859         * dwarf-index-cache.c (create_dir_and_check): Likewise.
3860         (test_mkdir_recursive): Likewise.
3861         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
3862
3863 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
3864
3865         * valarith.c (value_subscripted_rvalue): If an array is not in
3866         memory, and we don't know the upper bound, then we can't know that
3867         the requested element exists or not.
3868
3869 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
3870
3871         * target.c (str_comma_list_concat_elem): Fix typo in comment.
3872         (target_options_to_string): Add comment.
3873
3874 2018-08-08  Tom Tromey  <tom@tromey.com>
3875
3876         * unittests/scoped_mmap-selftests.c: Check result of "write".
3877
3878 2018-08-08  Jim Wilson  <jimw@sifive.com>
3879
3880         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
3881         (decode_register_index_short): New.
3882         (decode_j_type_insn, decode_cj_type_insn): New.
3883         (decode_b_type_insn, decode_cb_type_insn): New.
3884         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
3885         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
3886         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
3887         is_c_sw_insn instead of is_sw_insn.
3888         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
3889         (riscv_software_single_step): New.
3890         * riscv-tdep.h (riscv_software_single_step): Declare.
3891
3892         * riscv-tdep.c (riscv_isa_xlen): Drop static.
3893         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
3894
3895 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
3896
3897         PR gdb/18050:
3898         * target.c (dispose_inferior): Don't dispose of inferiors that are
3899         already killed.
3900
3901 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
3902
3903         * remote.c (remote_target::download_tracepoint): Change char* to
3904         const char*.
3905
3906 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
3907
3908         * target.h (target_options_to_string): Return an std::string.
3909         * target.c (str_comma_list_concat_elem): Return void, use
3910         std::string.
3911         (do_option): Likewise.
3912         (target_options_to_string): Return an std::string.
3913         * linux-nat.c (linux_nat_target::wait): Adjust.
3914         * target-debug.h (target_debug_print_options): Adjust.
3915
3916 2018-08-07  Tom Tromey  <tom@tromey.com>
3917
3918         * Makefile.in (CPPFLAGS): New variable.
3919         (INTERNAL_CPPFLAGS): Use it.
3920
3921 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3922
3923         * NEWS: Mention the index cache.
3924
3925 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3926
3927         * common/pathstuff.h (get_standard_cache_dir): New.
3928         * common/pathstuff.c (get_standard_cache_dir): New.
3929         * build-id.h (build_id_to_string): New.
3930         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
3931         DEBUG_STR_SUFFIX): Move to here.
3932         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
3933         DEBUG_STR_SUFFIX): Move from there.
3934         (write_psymtabs_to_index): Make non-static, add basename
3935         parameter.  Write to temporary files, rename when done.
3936         (save_gdb_index_command): Adjust call to
3937         write_psymtabs_to_index.
3938         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
3939         field.
3940         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
3941         (get_gdb_index_contents_from_cache): New.
3942         (get_gdb_index_contents_from_cache_dwz): New.
3943         (dwarf2_initialize_objfile): Read index from cache.
3944         (dwarf2_build_psymtabs): Save to index.
3945         * dwarf-index-cache.h: New file.
3946         * dwarf-index-cache.c: New file.
3947         * dwarf-index-write.h: New file.
3948
3949 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3950
3951         * gnulib/aclocal.m4: Re-generate.
3952         * gnulib/config.in: Re-generate.
3953         * gnulib/configure: Re-generate.
3954         * gnulib/import/Makefile.am: Re-generate.
3955         * gnulib/import/Makefile.in: Re-generate.
3956         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3957         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3958         * gnulib/import/m4/mkdir.m4: New file.
3959         * gnulib/import/mkdir.c: New file.
3960         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
3961         module.
3962
3963 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3964
3965         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
3966         * common/scoped_mmap.c: New file.
3967         * common/scoped_mmap.h (destroy): New method.
3968         (~scoped_mmap, reset): Use destroy.
3969         (scoped_mmap): New move constructor.
3970         (mmap_file): New declaration.
3971         * unittests/scoped_mmap-selftests.c (test_normal,
3972         test_invalid_filename, run_tests): New functions.
3973         (_initialize_scoped_mmap_selftests): Register selftest.
3974
3975 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3976
3977         * dwarf2read.c (read_gdb_index_from_section): Rename to...
3978         (read_gdb_index_from_buffer): ... this.  Remove section
3979         parameter, add buffer parameter.
3980         (get_gdb_index_contents_ftype,
3981         get_gdb_index_contents_dwz_ftype): New typedefs.
3982         (dwarf2_read_gdb_index): Add callback parameters to get the
3983         index contents.
3984         (get_gdb_index_contents_from_section): New.
3985         (dwarf2_initialize_objfile): Update call to
3986         dwarf2_read_gdb_index.
3987
3988 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
3989
3990         * common/filestuff.h (gdb_fopen_cloexec): New overload.
3991         (gdb_open_cloexec): Likewise.
3992         * nat/linux-osdata.c (command_from_pid): Use string_printf.
3993         (commandline_from_pid): Likewise.
3994         (linux_xfer_osdata_threads): Likewise.
3995         (linux_xfer_osdata_fds): Likewise.
3996         * ada-lang.c (is_package_name): Likewise.
3997         * auxv.c (procfs_xfer_auxv): Likewise.
3998         * breakpoint.c (print_one_breakpoint_location): Use
3999         uiout::field_fmt.
4000         (print_one_catch_solib): Use string_printf.
4001         * coff-pe-read.c (add_pe_exported_sym): Likewise.
4002         (add_pe_forwarded_sym): Likewise.
4003         * dwarf2read.c (create_type_unit_group): Likewise.
4004         (build_error_marker_type): Likewise.
4005         * infcall.c (get_function_name): Likewise.
4006         * valprint.c (print_converted_chars_to_obstack): Likewise.
4007         * xtensa-tdep.c (xtensa_register_type): Likewise.
4008
4009 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
4010
4011         * remote.c (remote_target::download_tracepoint): Fix format
4012         string errors.
4013
4014 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4015
4016         * tracefile.c: Include common/byte-vector.h.
4017         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
4018         with trace_regblock_size if needed.  Update uses of buf.
4019
4020 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4021
4022         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
4023         std::vector<unsigned char>.
4024         * tracepoint.c (collection_list::collection_list): Remove
4025         m_regs_mask initializer from initializer list.  Resize
4026         m_regs_mask using the largest remote register number.
4027         (collection_list::add_remote_register): Remove size check on
4028         m_regs_mask.  Use at to access element.
4029         (collection_list::stringify): Change type of temp_buf to
4030         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
4031         stringify the register mask.  Use pack_hex_byte for the register
4032         mask.
4033
4034 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4035
4036         * tracepoint.h (class collection_list) <add_register>: Remove.
4037         <add_remote_register, add_ax_registers, add_local_register>:
4038         Declare.
4039         <add_memrange>: Add scope parameter.
4040         * tracepoint.c (encode_actions_1): Likewise.
4041         (collection_list::add_register): Rename to ...
4042         (collection_list::add_remote_register): ... this.  Update
4043         comment.
4044         (collection_list::add_ax_registers, add_local_register): New
4045         methods.
4046         (collection_list::add_memrange): Add scope parameter.  Call
4047         add_local_register instead of add_register.
4048         (finalize_tracepoint_aexpr): New function.
4049         (collection_list::collect_symbol): Update calls to add_memrange.
4050         Call add_local_register instead of add_register.  Call
4051         add_ax_registers.  Call finalize_tracepoint_aexpr.
4052         (encode_actions_1): Get remote regnos for $reg action.  Call
4053         add_remote_register, add_ax_registers, and add_local_register.
4054         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
4055         (validate_actionline): Call finalize_tracepoint_aexpr.
4056
4057 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4058
4059         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
4060         Replace array buf with gdb::char_vector buf, of size
4061         get_remote_packet_size ().  Replace references to buf and
4062         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
4063         and xsnprintf with snprintf.  Raise errors if the buffer is too
4064         small.
4065
4066 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4067
4068         * remote.c (remote_target::download_tracepoint): Fix the has_more
4069         predicate in the QTDP action list iteration.
4070
4071 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
4072
4073         * remote.c (remote_target::download_tracepoint): Fix indentation
4074         in for block.
4075
4076 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
4077
4078         * proc-api.c (_initialize_proc_api): Remove c, unused.
4079         * procfs.c (procfs_init_inferior): Remove signals, unused.
4080         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
4081         unused.
4082
4083 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
4084             Andrew Burgess  <andrew.burgess@embecosm.com>
4085
4086         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
4087         'W_STOPCODE (0)' as this could be ambiguous.
4088
4089 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
4090
4091         * ser-tcp.c (net_open): Fix thinko when deciding whether to
4092         disable TCP's Nagle algorithm (use "ai_protocol" instead of
4093         "ai_socktype").
4094
4095 2018-08-02  Tom Tromey  <tom@tromey.com>
4096
4097         PR symtab/16842.
4098         * dwarf2read.c (read_func_scope): Set symtab on template parameter
4099         symbols.
4100         (process_structure_scope): Likewise.
4101
4102 2018-08-02  Xavier Roirand  <roirand@adacore.com>
4103
4104         PR gdb/22629:
4105         * darwin-nat.c (darwin_kill_inferior): Fix handling of
4106         kill inferior.
4107
4108 2018-08-02  Tom Tromey  <tom@tromey.com>
4109
4110         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
4111         (darwin_suspend_inferior, darwin_resume_inferior)
4112         (darwin_decode_notify_message, darwin_resume_inferior_threads)
4113         (darwin_check_new_threads): Check result of get_darwin_inferior.
4114
4115 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
4116
4117         GDB 8.1.1 released.
4118
4119 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
4120
4121         * varobj.c (varobj_get_path_expr_parent): Report an error if
4122         parent is a dynamic varobj.
4123
4124 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4125
4126         * gnulib/aclocal.m4: Re-generate.
4127         * gnulib/config.in: Re-generate.
4128         * gnulib/configure: Re-generate.
4129         * gnulib/import/Makefile.in: Re-generate.
4130         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
4131         * gnulib/import/m4/onceonly.m4: Re-generate.
4132
4133 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
4134
4135         * target-descriptions.c (struct xml_test_tdesc): New.
4136         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
4137         (record_xml_tdesc): Update.
4138         (maintenance_check_xml_descriptions): Update.
4139         * target-descriptions.h (record_xml_tdesc): Update comment.
4140
4141 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4142
4143         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
4144         checking array bounds are defined.
4145
4146 2018-07-30  Tom Tromey  <tom@tromey.com>
4147
4148         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
4149         irreflexivity violation.
4150
4151 2018-07-30  Tom Tromey  <tom@tromey.com>
4152
4153         * cli/cli-decode.c (lookup_cmd): Remove lint code.
4154         * value.c (unpack_long): Remove lint code.
4155         * valops.c (value_ind): Remove lint code.
4156         * valarith.c (value_x_binop, value_x_unop, value_equal)
4157         (value_pos): Remove lint code.
4158
4159 2018-07-28  Tom de Vries  <tdevries@suse.de>
4160
4161         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
4162         with undefined upper bound as <optimized out>.
4163
4164 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
4165
4166         * gcore.in: Rename variable "name" to "prefix".  Expand
4167         "usage" text.
4168
4169 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
4170
4171         * windows-nat.c (windows_nat_target::create_inferior): Update to
4172         call close() in global namespace.
4173
4174 2018-07-26  Tom Tromey  <tom@tromey.com>
4175
4176         * dwarf-index-write.c (add_address_entry): Don't add objfile
4177         offsets.
4178         * dbxread.c (find_stab_function): Rename from
4179         find_stab_function_addr.  Return a bound_minimal_symbol.
4180         (read_dbx_symtab): Use raw_text_low, raw_text_high.
4181         Don't add objfile offsets.
4182         (end_psymtab): Use raw_text_low, raw_text_high,
4183         MSYMBOL_VALUE_RAW_ADDRESS.
4184         (read_ofile_symtab): Update.
4185         (process_one_symbol): Update.
4186         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
4187         offsets.
4188         (dw2_relocate): Remove.
4189         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
4190         searching addrmap.
4191         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
4192         Update.
4193         (process_psymtab_comp_unit_reader, add_partial_symbol)
4194         (add_partial_subprogram, dwarf2_ranges_read): Update.
4195         (load_partial_dies): Update.
4196         (add_address_entry): Don't add objfile offsets.
4197         (dwarf2_build_include_psymtabs): Update.
4198         (create_addrmap_from_aranges): Don't add objfile offsets.
4199         (dw2_find_pc_sect_compunit_symtab): Update.
4200         * mdebugread.c (parse_symbol): Don't add objfile offsets.
4201         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
4202         Update.
4203         (parse_partial_symbols): Don't add objfile offsets.  Use
4204         raw_text_low, raw_text_high.  Update.
4205         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
4206         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
4207         or call 'relocate' quick function.  Clear psymbol_map.
4208         * psympriv.h (struct partial_symbol) <address>: Add section
4209         offset.
4210         <set_unrelocated_address>: Rename from set_address.
4211         <raw_text_low, raw_text_high>: New methods.
4212         <text_low, text_high>: Add objfile parameter.
4213         (add_psymbol_to_bcache): Add 'section' parameter.  Call
4214         set_unrelocated_address.
4215         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4216         (find_pc_psymbol): Update.
4217         (fixup_psymbol_section, relocate_psymtabs): Remove.
4218         (dump_psymtab, psym_functions): Update.
4219         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
4220         parameter.
4221         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
4222         (start_psymtab_common): Update.
4223         * symfile-debug.c (debug_qf_relocate): Remove.
4224         (debug_sym_quick_functions): Update.
4225         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
4226         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
4227         Update.
4228
4229 2018-07-26  Tom Tromey  <tromey@redhat.com>
4230
4231         * dbxread.c (end_psymtab): Use text_high_valid and
4232         text_low_valid.
4233         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
4234         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
4235         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4236         Update comment.
4237         <text_low_valid, text_high_valid>: New fields.
4238         <set_text_low, set_text_high>: Update.
4239         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
4240
4241 2018-07-26  Tom Tromey  <tom@tromey.com>
4242
4243         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
4244         Update.
4245         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
4246         textlow and texthigh fields.
4247         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
4248         Update.
4249         * mdebugread.c (parse_lines, parse_partial_symbols)
4250         (psymtab_to_symtab_1): Update.
4251         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
4252         Rename fields.  Update comment.  Now private.
4253         <text_low, text_high, set_text_low, set_text_high>: New methods.
4254         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4255         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
4256         (start_psymtab_common, maintenance_info_psymtabs)
4257         (maintenance_check_psymtabs): Update.
4258         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
4259         texthigh fields.
4260         (scan_xcoff_symtab): Update.
4261
4262 2018-07-26  Tom Tromey  <tromey@redhat.com>
4263
4264         * psympriv.h (struct partial_symbol) <unrelocated_address,
4265         address, set_address>: New methods.
4266         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
4267         (fixup_psymbol_section, relocate_psymtabs): Update.
4268         (print_partial_symbols): Add 'objfile' parameter.  Update.
4269         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
4270         Update.
4271
4272 2018-07-26  Tom Tromey  <tom@tromey.com>
4273
4274         * dwarf-index-write.c (write_psymbols, debug_names::insert)
4275         (debug_names::write_psymbols): Update.
4276         * psympriv.h (struct partial_symbol): Derive from
4277         general_symbol_info.
4278         <obj_section>: New method.
4279         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
4280         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
4281         (find_pc_sect_psymbol, fixup_psymbol_section)
4282         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
4283         (print_partial_symbols, recursively_search_psymtabs)
4284         (compare_psymbols, psymbol_hash, psymbol_compare)
4285         (add_psymbol_to_bcache, maintenance_check_psymtabs)
4286         (psymbol_name_matches, psym_fill_psymbol_map): Update.
4287
4288 2018-07-26  Tom Tromey  <tromey@redhat.com>
4289
4290         * dbxread.c (end_psymtab): Remove dead code.
4291
4292 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
4293
4294         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
4295         DWARF unwinders are disabled.
4296         * dwarf2-frame.c: Add dwarf2read.h include.
4297         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
4298         disabled.
4299         (dwarf2_frame_unwinders_enabled_p): Define.
4300         (show_dwarf_unwinders_enabled_p): New function.
4301         (_initialize_dwarf2_frame): Register switch to control DWARF
4302         unwinder use.
4303         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
4304         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
4305         (show_dwarf_cmdlist): Remove static keyword.
4306         * dwarf2read.h (set_dwarf_cmdlist): Declare.
4307         (show_dwarf_cmdlist): Declare.
4308         * NEWS: Document new feature.
4309
4310 2018-07-26  Tom de Vries  <tdevries@suse.de>
4311
4312         PR breakpoints/23366
4313         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
4314
4315 2018-07-26  Tom de Vries  <tdevries@suse.de>
4316
4317         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
4318         DW_AT_count can't be translated to a dynamic prop.
4319
4320 2018-07-25  Tom de Vries  <tdevries@suse.de>
4321
4322         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
4323         try/catch.
4324
4325 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
4326
4327         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
4328
4329 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
4330
4331         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
4332
4333 2018-07-24  Keith Seitz  <keiths@redhat.comt
4334
4335         PR symtab/23010
4336         * dwarf2read.c (dw2_add_symbol_to_list): New function.
4337         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
4338         instead of add_symbol_to_list.
4339         (read_file_scope): Call prepare_one_comp_unit before reading
4340         any other DIEs.
4341
4342 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
4343
4344         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
4345
4346 2018-07-24  Tom Tromey  <tom@tromey.com>
4347
4348         * utils.c (malloc, realloc, free): Don't declare.
4349         * configure, config.in: Rebuild.
4350         * configure.ac: Don't check for declarations of free, malloc, or
4351         realloc.
4352
4353 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4354
4355         * aarch64-linux-nat.c
4356         (aarch64_linux_nat_target::stopped_data_address): Remove unused
4357         variable.
4358         * arm-linux-nat.c (fetch_regs): Likewise.
4359         (store_regs): Likewise.
4360         (fetch_vfp_regs): Likewise.
4361         (store_vfp_regs): Likewise.
4362         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
4363         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
4364         (arm_linux_nat_target::insert_watchpoint): Likewise.
4365         (arm_linux_nat_target::remove_watchpoint): Likewise.
4366         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
4367         Likewise.
4368         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
4369         Likewise.
4370         * ppc-linux-nat.c (fetch_register): Likewise.
4371         (fetch_all_gp_regs): Likewise.
4372         (fetch_ppc_registers): Likewise.
4373         (store_all_gp_regs): Likewise.
4374         (store_ppc_registers): Likewise.
4375         (hwdebug_insert_point): Likewise.
4376         (can_use_watchpoint_cond_accel): Likewise.
4377         * remote-sim.c (gdb_os_write_stdout): Likewise.
4378
4379 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
4380             Tom Tromey  <tom@tromey.com>
4381
4382         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
4383         test for it.
4384         * configure: Rebuild.
4385
4386 2018-07-22  Tom Tromey  <tom@tromey.com>
4387
4388         * regformats/regdat.sh: Define xmltarget_${name} inside
4389         #ifndef IN_PROCESS_AGENT.
4390
4391 2018-07-22  Tom Tromey  <tom@tromey.com>
4392
4393         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
4394
4395 2018-07-22  Tom Tromey  <tom@tromey.com>
4396
4397         * symfile.c (reread_symbols): Notify iter, not objfile.
4398
4399 2018-07-22  Tom Tromey  <tom@tromey.com>
4400
4401         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
4402         Use arch_ops.
4403         (ravenscar_thread_target::prepare_to_store): Likewise.
4404
4405 2018-07-22  Tom Tromey  <tom@tromey.com>
4406
4407         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
4408         unused variable.  Call value_fetch_lazy when needed.
4409         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
4410         Remove unused variable.  Call value_fetch_lazy when needed.
4411
4412 2018-07-22  Tom Tromey  <tom@tromey.com>
4413
4414         * m32c-tdep.c (mark_dma): Return void.
4415         (make_regs): Remove unused declarations.
4416
4417 2018-07-22  Tom Tromey  <tom@tromey.com>
4418
4419         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
4420         cmdscm_get_valid_command_smob_arg_unsafe for effect.
4421         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
4422         bkscm_get_valid_block_smob_arg_unsafe for effect.
4423
4424 2018-07-22  Tom Tromey  <tom@tromey.com>
4425
4426         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
4427         value_type.
4428
4429 2018-07-22  Tom Tromey  <tom@tromey.com>
4430
4431         * windows-nat.c (saved_context): Conditionally define.
4432         * remote.c (remote_target::remote_btrace_maybe_reopen):
4433         Conditionally declare "warned".
4434         * inflow.c (sigquit_ours): Conditionally define.
4435         (new_tty): Move "tty" declaration inside #if.
4436         * guile/guile.c (guile_datadir): Conditionally define.
4437         * charset.c (set_be_le_names): Move some declarations inside #if.
4438         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
4439         #if.
4440         (parse_xml_btrace_conf): Likewise.
4441
4442 2018-07-22  Tom Tromey  <tom@tromey.com>
4443
4444         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
4445
4446 2018-07-22  Tom Tromey  <tom@tromey.com>
4447
4448         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
4449         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
4450         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
4451         * buildsym-legacy.c (get_macro_table): Remove unused variable.
4452         * stack.c (frame_apply_level_command): Remove unused variable.
4453         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
4454         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
4455         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
4456         unused variable.
4457         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
4458         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
4459         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
4460         variable.
4461         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
4462         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
4463         variable.
4464         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
4465         Remove unused variable.
4466         * cli/cli-script.c (recurse_read_control_structure): Remove unused
4467         variable.
4468         * common/tdesc.c (print_xml_feature::visit): Remove unused
4469         variable.
4470         * compile/compile-object-load.c (store_regs): Remove unused
4471         variables.
4472         * complaints.c (clear_complaints): Remove unused variable.
4473         * corelow.c (core_target_open): Remove unused variable.
4474         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
4475         variable.
4476         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
4477         variable.
4478         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
4479         variable.
4480         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
4481         variable.
4482         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
4483         variable.
4484         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
4485         variable.
4486         * ia64-tdep.c (examine_prologue): Remove unused variable.
4487         * infcall.c (run_inferior_call): Remove unused variable.
4488         * inferior.c (exit_inferior): Remove unused variable.
4489         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
4490         * linespec.c (decode_line_2): Remove unused variable.
4491         * linux-nat.c (super_close): Remove.
4492         * linux-tdep.c (linux_info_proc): Remove unused variable.
4493         * mi/mi-main.c (mi_execute_command): Remove unused variable.
4494         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
4495         Remove unused variable.
4496         * parse.c (find_minsym_type_and_address): Remove unused variable.
4497         * printcmd.c (info_symbol_command, printf_floating): Remove unused
4498         variable.
4499         * python/py-breakpoint.c (bppy_set_commands): Remove unused
4500         variable.
4501         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
4502         variables.
4503         * record-btrace.c (record_btrace_target::store_registers): Remove
4504         unused variable.
4505         (cmd_show_record_btrace_cpu): Remove unused variable.
4506         * riscv-tdep.c (riscv_register_reggroup_p)
4507         (riscv_push_dummy_call, riscv_return_value): Remove unused
4508         variable.
4509         * rust-exp.y (literal): Remove unused variable.
4510         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
4511         unused variable.
4512         <STRUCTOP_ANONYMOUS>: Likewise.
4513         * s390-linux-tdep.c (s390_linux_init_abi_31)
4514         (s390_linux_init_abi_64): Remove unused variable.
4515         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
4516         (file_select_thread, net_windows_open, _initialize_ser_windows):
4517         Remove unused variables.
4518         * symtab.c (find_pc_sect_line): Remove unused variable.
4519         * target-memory.c (compute_garbled_blocks): Remove unused
4520         variable.
4521         (target_write_memory_blocks): Remove unused variable.
4522         * target.c (target_stack::unpush): Remove unused variables.
4523         * tracepoint.c (start_tracing, all_tracepoint_actions)
4524         (merge_uploaded_trace_state_variables)
4525         (print_one_static_tracepoint_marker): Remove unused variable.
4526         * unittests/basic_string_view/element_access/char/1.cc (test01):
4527         Remove unused variable.
4528         * windows-nat.c (windows_continue, windows_add_all_dlls)
4529         (do_initial_windows_stuff, windows_nat_target::create_inferior):
4530         Remove unused variables.
4531
4532 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
4533
4534         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
4535         attr_profile in HAVE_ELF.
4536         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
4537         HAVE_ELF.
4538
4539 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
4540
4541         * frame.c (frame_register_unwind): Change parameter name.
4542         (frame_unwind_register): Likewise.
4543         (frame_unwind_register_value): Likewise.
4544         (frame_unwind_register_signed): Likewise.
4545         (frame_unwind_register_unsigned): Likewise.
4546         * frame.h (frame_register_unwind): Likewise.
4547         (frame_unwind_register): Likewise.
4548         (frame_unwind_register_value): Likewise.
4549         (frame_unwind_register_signed): Likewise.
4550         (frame_unwind_register_unsigned): Likewise.
4551         (frame_unwind_arch): Likewise.
4552
4553 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4554
4555         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
4556         ISA maintenance.
4557
4558 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
4559
4560         * mips-linux-nat.c (mips_linux_nat_target::read_description):
4561         Call `get_ptrace_pid' rather than extracting the ptrace PID by
4562         hand.
4563
4564 2018-07-20  Keith Seitz  <keiths@redhat.com>
4565
4566         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
4567         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
4568         m_compunit_symtab, m_language>: Add "m_" prefix.
4569         Update all uses.
4570         * buildsym.c: Update all uses.
4571
4572 2018-07-20  Tom Tromey  <tom@tromey.com>
4573
4574         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
4575         * buildsym.h (record_line_ftype): Remove typedef.
4576
4577 2018-07-20  Tom Tromey  <tom@tromey.com>
4578
4579         * buildsym-legacy.h (augment_type_symtab): Don't declare.
4580         (end_expandable_symtab): Likewise.
4581         (end_symtab_get_static_block): Likewise.
4582         (end_symtab_from_static_block): Likewise.
4583         * buildsym-legacy.c (augment_type_symtab): Remove.
4584         (end_expandable_symtab): Remove.
4585         (end_symtab_get_static_block): Remove.
4586         (end_symtab_from_static_block): Remove.
4587
4588 2018-07-20  Tom Tromey  <tom@tromey.com>
4589
4590         * dwarf2read.c: Include buildsym.h.
4591         (struct dwarf2_cu) <builder>: New method.
4592         (fixup_go_packaging): Update.
4593         (process_full_comp_unit, process_full_type_unit): Update.  Don't
4594         use scoped_free_pendings.
4595         (using_directives): Add "cu" parameter, remove "language".
4596         (read_import_statement, setup_type_unit_groups, )
4597         (read_func_scope, read_lexical_block_scope)
4598         (dwarf2_record_block_ranges, read_namespace): Update.
4599         (lnp_state_machine::lnp_state_machine): Add cu parameter.
4600         (lnp_state_machine::handle_end_sequence): Update.
4601         (class lnp_state_machine) <m_cu>: New member.
4602         <m_record_line_callback>: Remove.
4603         <m_currently_recording_lines>: New member.
4604         (lnp_state_machine::handle_set_file): Update.
4605         (noop_record_line): Remove.
4606         (dwarf_record_line_p): Add cu parameter.
4607         (dwarf_record_line_1, dwarf_finish_line): Likewise.
4608         (lnp_state_machine::record_line)
4609         (lnp_state_machine::lnp_state_machine)
4610         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
4611         (dwarf_decode_lines): Update.
4612         (dwarf2_start_subfile): Add cu parameter.
4613         (dwarf2_start_symtab, new_symbol): Update.
4614         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
4615         Remove dwarf2_per_objfile parameter.
4616         (dwarf_decode_macros): Update.
4617
4618 2018-07-20  Tom Tromey  <tom@tromey.com>
4619
4620         * stabsread.c (define_symbol): Update.
4621         * buildsym-legacy.h (get_buildsym_compunit): Declare.
4622         * dwarf2read.c (new_symbol): Update.
4623         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
4624         * cp-namespace.c: Include buildsym.h.
4625         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
4626         * buildsym-legacy.c (get_buildsym_compunit): New function.
4627
4628 2018-07-20  Tom Tromey  <tom@tromey.com>
4629
4630         * xcoffread.c: Include buildsym-legacy.h.
4631         * windows-nat.c: Include buildsym-legacy.h.
4632         * stabsread.c: Include buildsym-legacy.h.
4633         * mdebugread.c: Include buildsym-legacy.h.
4634         * buildsym-legacy.h: New file.
4635         * buildsym-legacy.c: New file, from buildsym.c.
4636         * go32-nat.c: Include buildsym-legacy.h.
4637         * dwarf2read.c: Include buildsym-legacy.h.
4638         * dbxread.c: Include buildsym-legacy.h.
4639         * cp-namespace.c: Include buildsym-legacy.h.
4640         * coffread.c: Include buildsym-legacy.h.
4641         * buildsym.h: Move some contents to buildsym-legacy.h.
4642         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
4643         buildsym-legacy.c.
4644         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
4645
4646 2018-07-20  Tom Tromey  <tom@tromey.com>
4647
4648         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
4649         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
4650         (buildsym_compunit::buildsym_compunit)
4651         (buildsym_compunit::~buildsym_compunit)
4652         (buildsym_compunit::get_macro_table): Define.
4653
4654 2018-07-20  Tom Tromey  <tom@tromey.com>
4655
4656         * buildsym.c (reset_symtab_globals): Remove.
4657         (buildsym_compunit::end_symtab_from_static_block): Update.
4658         (buildsym_compunit::augment_type_symtab): Update.
4659         (end_symtab_from_static_block): Call free_buildsym_compunit.
4660         (augment_type_symtab, end_symtab, end_expandable_symtab):
4661         Likewise.
4662
4663 2018-07-20  Tom Tromey  <tom@tromey.com>
4664
4665         * arch-utils.c: Do not include buildsym.h.
4666         * mipsread.c: Do not include buildsym.h.
4667         * machoread.c: Do not include buildsym.h.
4668         * elfread.c: Do not include buildsym.h.
4669
4670 2018-07-20  Tom Tromey  <tom@tromey.com>
4671
4672         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
4673         initialization.
4674         (buildsym_compunit): Add new constructor.
4675         (struct buildsym_compunit) <get_last_source_file, finish_block,
4676         record_block_range, start_subfile, patch_subfile_names,
4677         push_subfile, pop_subfile, record_line, get_compunit_symtab,
4678         set_last_source_start_addr, get_last_source_start_addr,
4679         get_local_using_directives, set_local_using_directives,
4680         get_global_using_directives, outermost_context_p,
4681         get_current_context_stack, get_context_stack_depth,
4682         get_current_subfile, get_local_symbols, get_file_symbols,
4683         get_global_symbols, record_debugformat, record_producer,
4684         push_context, pop_context, end_symtab_get_static_block,
4685         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
4686         New public methods.
4687         <record_pending_block, finish_block_internal, make_blockvector,
4688         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
4689         private methods.
4690         Update all users.
4691
4692 2018-05-22  Tom Tromey  <tom@tromey.com>
4693
4694         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4695         parameter.
4696         (finish_block_internal): Update.
4697
4698 2018-07-20  Tom Tromey  <tom@tromey.com>
4699
4700         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
4701         parameter.
4702         (finish_block_internal): Update.
4703
4704 2018-07-20  Tom Tromey  <tom@tromey.com>
4705
4706         * buildsym.h (EXTERN): Don't define or undef.
4707         * buildsym.c (EXTERN): Don't define.
4708
4709 2018-07-20  Tom Tromey  <tom@tromey.com>
4710
4711         * buildsym.c: Remove TODO comment.
4712
4713 2018-07-20  Tom Tromey  <tom@tromey.com>
4714
4715         * coffread.c (coff_symtab_read): Update.
4716         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
4717         (xcoff_new_init): Update.
4718         * mipsread.c (mipscoff_new_init): Update.
4719         * mdebugread.c (mdebug_build_psymtabs): Update.
4720         * elfread.c (elf_new_init): Update.
4721         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
4722         Update.
4723         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
4724         (coffstab_build_psymtabs, elfstab_build_psymtabs)
4725         (stabsect_build_psymtabs): Update.
4726         * buildsym.h (buildsym_init): Don't declare.
4727         * buildsym.c: Update comment.
4728         (prepare_for_building): Remove.
4729         (start_symtab, restart_symtab): Update.
4730         (reset_symtab_globals): Update comment.
4731         (buildsym_init): Remove.
4732
4733 2018-07-20  Tom Tromey  <tom@tromey.com>
4734
4735         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
4736         * stabsread.c (patch_block_stabs, define_symbol, read_type)
4737         (read_enum_type, common_block_start, common_block_end)
4738         (cleanup_undefined_types_1, finish_global_stabs): Update.
4739         * mdebugread.c (psymtab_to_symtab_1): Update.
4740         * dwarf2read.c (fixup_go_packaging, read_func_scope)
4741         (read_lexical_block_scope, new_symbol): Update.
4742         * dbxread.c (process_one_symbol): Update.
4743         * coffread.c (coff_symtab_read, process_coff_symbol)
4744         (coff_read_enum_type): Update.
4745         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
4746         declare.
4747         (get_local_symbols, get_file_symbols, get_global_symbols): New
4748         functions.
4749         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
4750         m_global_symbols.
4751         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
4752         (~scoped_free_pendings): Update.
4753         (finish_block, prepare_for_building, reset_symtab_globals)
4754         (end_symtab_get_static_block, end_symtab_with_blockvector)
4755         (augment_type_symtab, push_context): Update.
4756         (get_local_symbols, get_file_symbols, get_global_symbols): New
4757         functions.
4758         (buildsym_init): Update.
4759
4760 2018-07-20  Tom Tromey  <tom@tromey.com>
4761
4762         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
4763         (process_full_type_unit): Likewise.
4764         (dwarf2_start_symtab): Set list_in_scope.
4765
4766 2018-07-20  Tom Tromey  <tom@tromey.com>
4767
4768         * dwarf2read.c (process_psymtab_comp_unit_reader)
4769         (build_type_psymtabs_reader): Do not set list_in_scope.
4770
4771 2018-07-20  Tom Tromey  <tom@tromey.com>
4772
4773         * buildsym.c (free_pendings): Remove.
4774         (add_symbol_to_list, scoped_free_pendings)
4775         (finish_block_internal, buildsym_init): Update.
4776
4777 2018-07-20  Tom Tromey  <tom@tromey.com>
4778
4779         * xcoffread.c (read_xcoff_symtab): Update.
4780         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
4781         Update.
4782         * dbxread.c (process_one_symbol): Update.
4783         * coffread.c (coff_symtab_read): Update.
4784         * buildsym.h (finish_block): Update.
4785         * buildsym.c (finish_block): Remove "listhead" argument.
4786         (end_symtab_get_static_block): Update.
4787
4788 2018-07-20  Tom Tromey  <tom@tromey.com>
4789
4790         * buildsym.h (class scoped_free_pendings): Remove constructor.
4791         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
4792         method.
4793         <m_pending_block_obstack, m_pending_blocks>: New members.
4794         (pending_block_obstack, pending_blocks): Remove.
4795         (scoped_free_pendings::scoped_free_pendings): Default.
4796         (~scoped_free_pendings): Update.
4797         (free_pending_blocks): Remove.
4798         (finish_block_internal, record_pending_block, make_blockvector)
4799         (end_symtab_get_static_block, augment_type_symtab, push_context)
4800         (buildsym_init): Update.
4801
4802 2018-07-20  Tom Tromey  <tom@tromey.com>
4803
4804         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
4805         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
4806         members.
4807         (pending_addrmap, pending_addrmap_obstack)
4808         (pending_addrmap_interesting): Remove.
4809         (scoped_free_pendings, record_block_range, make_blockvector)
4810         (prepare_for_building, reset_symtab_globals, buildsym_init):
4811         Update.
4812
4813 2018-07-20  Tom Tromey  <tom@tromey.com>
4814
4815         * xcoffread.c (process_linenos): Update.
4816         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
4817         * mdebugread.c (psymtab_to_symtab_1): Update.
4818         * dwarf2read.c (setup_type_unit_groups)
4819         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
4820         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
4821         * dbxread.c (process_one_symbol): Update.
4822         * coffread.c (coff_symtab_read, enter_linenos)
4823         (process_coff_symbol): Update.
4824         * buildsym.h (current_subfile): Don't declare.
4825         (get_current_subfile): Declare.
4826         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
4827         member.
4828         (start_subfile, free_buildsym_compunit, push_subfile)
4829         (prepare_for_building, start_symtab): Update.
4830         (get_current_subfile): New function.
4831
4832 2018-07-20  Tom Tromey  <tom@tromey.com>
4833
4834         * coffread.c (coff_symtab_read): Update.
4835         * xcoffread.c (read_xcoff_symtab): Update.
4836         * dwarf2read.c (new_symbol): Update.
4837         (read_func_scope, read_lexical_block_scope): Update.
4838         * dbxread.c (process_one_symbol): Update.
4839         * buildsym.h (context_stack, context_stack_depth): Don't declare.
4840         (outermost_context_p): Remove macro.
4841         (outermost_context_p, get_current_context_stack)
4842         (get_context_stack_depth): Declare.
4843         (pop_context): Return struct context_stack.
4844         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
4845         member.
4846         (context_stack_size): Remove.
4847         (INITIAL_CONTEXT_STACK_SIZE): Remove.
4848         (prepare_for_building, end_symtab_get_static_block)
4849         (augment_type_symtab, push_context): Update.
4850         (pop_context): Return struct context_stack.
4851         (outermost_context_p, get_current_context_stack)
4852         (get_context_stack_depth): New functions.
4853         (buildsym_init): Update.
4854
4855 2018-07-20  Tom Tromey  <tom@tromey.com>
4856
4857         * rust-exp.y: Now a pure parser.  Update all rules.
4858         (%union): Move earlier.
4859         (current_parser, work_obstack): Remove globals.
4860         (rust_parser, ~rust_parser): Update.
4861         (class rust_parser) <copy_name, concat3, crate_name, super_name,
4862         lex_character, lex_number, lex_string, lex_identifier,
4863         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
4864         convert_name, convert_params_to_expression,
4865         convert_ast_to_expression, ast_basic_type, ast_operation,
4866         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
4867         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
4868         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
4869         ast_array_type, ast_slice_type, ast_reference_type,
4870         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
4871         (rust_parse): Update.
4872         (rustyyerror, rustyylex): Add parser parameter.
4873         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
4874         (rust_lex_stringish_test, rust_lex_test_sequence)
4875         (rust_lex_test_trailing_dot, rust_lex_test_completion)
4876         (rust_lex_test_push_back, rust_lex_tests): Update.
4877
4878 2018-07-19  Pedro Alves  <palves@redhat.com>
4879
4880         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
4881         gdb::unique_xmalloc_ptr.
4882         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
4883         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
4884         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
4885         copy-initialization.
4886         * guile/scm-pretty-print.c (ppscm_print_children): Use
4887         gdb::unique_xmalloc_ptr instead of cleanups.
4888         (gdbscm_apply_val_pretty_printer): Remove cleanups.
4889         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
4890         gdb::unique_xmalloc_ptr.
4891         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4892         Adjust to use gdb::unique_xmalloc_ptr.
4893         * guile/scm-utils.c (extract_arg): Adjust.
4894         * guile/scm-value.c (gdbscm_value_field): Adjust to use
4895         gdb::unique_xmalloc_ptr instead of a cleanup.
4896
4897 2018-07-19  Tom Tromey  <tom@tromey.com>
4898
4899         * utils.c (do_value_free_to_mark)
4900         (make_cleanup_value_free_to_mark): Remove.
4901         * utils.h (make_cleanup_value_free_to_mark): Remove.
4902
4903 2018-07-19  Pedro Alves  <palves@redhat.com>
4904
4905         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
4906         forwarding reference.
4907
4908 2018-07-18  Pedro Alves  <palves@redhat.com>
4909
4910         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
4911         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
4912         cleanup.
4913
4914 2018-07-18  Pedro Alves  <palves@redhat.com>
4915
4916         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
4917         exceptions.
4918         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
4919         (gdbscm_wrap): New.
4920         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
4921         directly instead of a cleanup.
4922         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
4923         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
4924         (vlscm_binop_gdbthrow): New, factored out from ...
4925         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
4926         (vlscm_rich_compare): Use gdbscm_wrap.
4927         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
4928         instead of a cleanup.
4929         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
4930         cleanup.
4931         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
4932         Use xfree directly instead of a cleanup.
4933         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
4934         Adjust to use gdbscm_wrap and scoped_value_mark.
4935         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
4936         (gdbscm_value_address, gdbscm_value_dereference)
4937         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
4938         scoped_value_mark.
4939         (gdbscm_value_dynamic_type): Use scoped_value_mark.
4940         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
4941         scoped_value_mark.
4942         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
4943         gdbscm_wrap and scoped_value_mark.
4944         (gdbscm_value_to_string): Use xfree directly instead of a
4945         cleanup.  Move 'buffer' unique_ptr to TRY scope.
4946         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
4947         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
4948         scoped_value_mark.
4949         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
4950         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
4951         scoped_value_mark.
4952         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
4953         gdbscm_wrap.
4954
4955 2018-07-18  Tom de Vries  <tdevries@suse.de>
4956
4957         * findvar.c (default_read_var_value): Also resolve dynamic type for
4958         LOC_OPTIMIZED_OUT vars.
4959
4960 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
4961
4962         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
4963         decoding.
4964
4965 2018-07-17  Tom Tromey  <tom@tromey.com>
4966
4967         * guile/scm-param.c (pascm_set_func, pascm_show_func)
4968         (compute_enum_list, pascm_set_param_value_x)
4969         (gdbscm_parameter_value): Update.
4970         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
4971         (gdbscm_scm_to_host_string): Update.
4972         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
4973         Update.
4974         * guile/scm-cmd.c (cmdscm_add_completion): Update.
4975         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
4976         * guile/scm-string.c (gdbscm_scm_to_string): Return
4977         unique_xmalloc_ptr.
4978         (gdbscm_scm_to_host_string): Likewise.
4979
4980 2018-07-17  Tom Tromey  <tom@tromey.com>
4981
4982         * guile/guile.c (gdbscm_eval_from_control_command): Update.
4983         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
4984         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
4985         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
4986         unique_xmalloc_ptr.
4987
4988 2018-07-17  Tom Tromey  <tom@tromey.com>
4989
4990         * guile/scm-param.c (pascm_signal_setshow_error): Update.
4991         * guile/guile-internal.h (gdbscm_exception_message_to_string):
4992         Update.
4993         * guile/scm-cmd.c (cmdscm_function): Update.
4994         * guile/scm-pretty-print.c
4995         (ppscm_print_exception_unless_memory_error): Update.
4996         * guile/scm-exception.c (gdbscm_exception_message_to_string):
4997         Return unique_xmalloc_ptr.
4998
4999 2018-07-17  Tom Tromey  <tom@tromey.com>
5000
5001         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
5002         Use string_printf.
5003
5004 2018-07-17  Jim Wilson  <jimw@sifive.com>
5005
5006         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
5007         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
5008         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
5009         unecessary braces after EF_RISCV_RVC test.  Delete call to
5010         set_gdbarch_decr_pc_after_break.
5011
5012         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
5013         RISCV_LAST_FP_REGNUM + 1.
5014         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
5015
5016 2018-07-17  Tom Tromey  <tom@tromey.com>
5017
5018         * configure.ac: Remove --disable-gdbcli.
5019         * configure: Rebuild.
5020         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
5021         (SUBDIR_CLI_CFLAGS): Remove.
5022         (SFILES): Use SUBDIR_CLI_SRCS.
5023         (COMMON_OBS): Use SUBDIR_CLI_OBS.
5024
5025 2018-07-17  Tom Tromey  <tom@tromey.com>
5026
5027         PR gdb/18624:
5028         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
5029
5030 2018-07-16  Jim Wilson  <jimw@sifive.com>
5031
5032         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
5033
5034 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5035
5036         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
5037         variable.
5038         (libunwind_frame_sniffer): Likewise.
5039         (libunwind_frame_prev_register): Likewise.
5040         (libunwind_sigtramp_frame_sniffer): Likewise.
5041         * ia64-tdep.c (ia64_access_reg): Likewise.
5042         (ia64_access_rse_reg): Likewise.
5043         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
5044         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
5045
5046 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5047
5048         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
5049
5050 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
5051
5052         * remote-sim.c (gdbsim_target::close,
5053         gdbsim_target::mourn_inferior): Remove unused variables.
5054
5055 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
5056
5057         * ia64-tdep.c (ktab_buf): New global.
5058         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
5059         (get_kernel_table): Adjust.
5060
5061 2018-07-16  Tom Tromey  <tom@tromey.com>
5062
5063         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
5064         * dwarf2read.c (using_directives, new_symbol): Use
5065         outermost_context_p.
5066         * dbxread.c (process_one_symbol): Use outermost_context_p.
5067         * coffread.c (coff_symtab_read): Use outermost_context_p.
5068
5069 2018-07-16  Tom Tromey  <tom@tromey.com>
5070
5071         * dwarf2read.c (using_directives, read_func_scope)
5072         (read_lexical_block_scope): Update.
5073         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
5074         * buildsym.h (local_using_directives, global_using_directives):
5075         Don't declare.
5076         (get_local_using_directives, set_local_using_directives)
5077         (get_global_using_directives): Declare.
5078         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
5079         m_global_using_directives>: New members.
5080         (finish_block_internal, prepare_for_building)
5081         (reset_symtab_globals, end_symtab_get_static_block)
5082         (push_context): Update.
5083         (get_local_using_directives, set_local_using_directives)
5084         (get_global_using_directives): New functions.
5085         (buildsym_init): Update.
5086
5087 2018-07-16  Tom Tromey  <tom@tromey.com>
5088
5089         * xcoffread.c (xcoff_initial_scan): Don't call
5090         free_pending_blocks.
5091         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
5092         * buildsym.h (class scoped_free_pendings): Add constructor.
5093         (free_pending_blocks): Don't declare.
5094         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
5095         (free_pending_blocks): Now static.
5096
5097 2018-07-16  Tom Tromey  <tom@tromey.com>
5098
5099         * buildsym.h (push_subfile, pop_subfile): Update declarations.
5100         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
5101         member.
5102         (struct subfile_stack): Remove.
5103         (subfile_stack): Remove.
5104         (push_subfile, pop_subfile, buildsym_init): Update.
5105
5106 2018-07-16  Tom Tromey  <tom@tromey.com>
5107
5108         * buildsym.c (push_subfile): Use gdb_assert.
5109         (pop_subfile): Use gdb_assert.
5110
5111 2018-07-16  Tom Tromey  <tom@tromey.com>
5112
5113         * buildsym.h (merge_symbol_lists): Remove.
5114         * buildsym.c (merge_symbol_lists): Remove.
5115
5116 2018-07-16  Tom Tromey  <tom@tromey.com>
5117
5118         * stabsread.c (scan_file_globals): Update comment.
5119         * stabsread.h (scan_file_globals): Move from buildsym.h.
5120         * buildsym.h (scan_file_globals): Move to stabsread.h.
5121
5122 2018-07-16  Tom Tromey  <tom@tromey.com>
5123
5124         * xcoffread.c (xcoff_new_init): Update.
5125         * mipsread.c (mipscoff_new_init): Update.
5126         * mdebugread.c (mdebug_build_psymtabs): Update.
5127         * elfread.c (elf_new_init): Update.
5128         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
5129         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
5130         * buildsym.h (buildsym_new_init): Don't declare.
5131         * buildsym.c (buildsym_new_init): Remove.
5132
5133 2018-07-16  Tom Tromey  <tom@tromey.com>
5134
5135         * stabsread.h (within_function): Move from buildsym.h.
5136         * stabsread.c (start_stabs): Clear within_function.
5137         * coffread.c (coff_start_symtab): Clear within_function.
5138         * buildsym.h (within_function): Move to stabsread.h.
5139         * buildsym.c (prepare_for_building): Update.
5140
5141 2018-07-16  Tom Tromey  <tom@tromey.com>
5142
5143         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
5144         * dwarf2read.c (dwarf2_start_symtab): Don't set
5145         processing_gcc_compilation.
5146         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
5147
5148 2018-07-16  Tom Tromey  <tom@tromey.com>
5149
5150         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
5151         (next_symbol_text_func): Move from buildsym.h.
5152         * stabsread.c (hashname): Move from buildsym.c.
5153         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
5154         (next_symbol_text_func, hashname): Move to stabsread.h.
5155         * buildsym.c: Don't include bcache.h
5156         (hashname): Move to stasbread.c.
5157
5158 2018-07-16  Tom Tromey  <tom@tromey.com>
5159
5160         * buildsym.h (context_stack_size): Don't declare.
5161         * buildsym.c (context_stack_size): New global.
5162
5163 2018-07-16  Tom Tromey  <tom@tromey.com>
5164
5165         * dbxread.c (processing_acc_compilation): New global.
5166         * buildsym.h (processing_acc_compilation): Don't declare.
5167
5168 2018-07-16  Tom Tromey  <tom@tromey.com>
5169
5170         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
5171         * dbxread.c (read_ofile_symtab): Update.
5172         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
5173         * buildsym.h (last_source_start_addr): Remove.
5174         (set_last_source_start_addr, get_last_source_start_addr):
5175         Declare.
5176         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
5177         parameter.
5178         (struct buildsym_compunit) <m_last_source_start_addr>: New
5179         member.
5180         (prepare_for_building): Remove start_addr parameter.
5181         (start_symtab, restart_symtab, end_symtab_get_static_block)
5182         (end_symtab_with_blockvector): Update.
5183         (set_last_source_start_addr, get_last_source_start_addr): New
5184         functions.
5185
5186 2018-07-16  Tom Tromey  <tom@tromey.com>
5187
5188         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
5189         member.
5190         (have_line_numbers): Remove.
5191         (record_line, prepare_for_building, end_symtab_get_static_block)
5192         (augment_type_symtab): Update.
5193
5194 2018-07-16  Tom Tromey  <tom@tromey.com>
5195
5196         * buildsym.c (~buildsym_compunit): Free the macro table.
5197         (struct buildsym_compunit) <get_macro_table, release_macros>: New
5198         methods.
5199         <m_pending_macros>: New member.
5200         (pending_macros): Remove.
5201         (~scoped_free_pendings, get_macro_table, prepare_for_building)
5202         (reset_symtab_globals, end_symtab_get_static_block)
5203         (end_symtab_with_blockvector, augment_type_symtab)
5204         (buildsym_init): Update.
5205
5206 2018-07-16  Tom Tromey  <tom@tromey.com>
5207
5208         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
5209         parameter.
5210         (buildsym_compunit::set_last_source_file): New method.
5211         <m_last_source_file>: New member.
5212         (prepare_for_building): Remove "name" parameter.
5213         (start_symtab, restart_symtab, reset_symtab_globals): Update.
5214         (last_source_file): Remove.
5215         (set_last_source_file, get_last_source_file): Update.
5216
5217 2018-07-16  Tom Tromey  <tom@tromey.com>
5218
5219         * buildsym.c (prepare_for_building): Add assert.
5220
5221 2018-07-16  Tom Tromey  <tom@tromey.com>
5222
5223         * buildsym.c (~buildsym_compunit): Update.
5224         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
5225         (start_subfile, patch_subfile_names)
5226         (end_symtab_with_blockvector): Update.
5227
5228 2018-07-16  Tom Tromey  <tom@tromey.com>
5229
5230         * buildsym.c (struct buildsym_compunit): Add constructor,
5231         destructor, initializers.
5232         (start_buildsym_compunit): Remove.
5233         (free_buildsym_compunit): Use "delete".
5234         (start_symtab, restart_symtab): Use "new".
5235
5236 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
5237
5238         * symfile.c (set_objfile_default_section_offset): Remove struct
5239         keyword.
5240
5241 2018-07-14  Stafford Horne  <shorne@gmail.com>
5242
5243         * (Responsible Maintainers): Add myself as or1k maintainer.
5244
5245 2018-07-13  Tom Tromey  <tom@tromey.com>
5246
5247         * symfile.c (set_objfile_default_section_offset): Use extra braces
5248         around initializer.
5249
5250 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
5251
5252         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
5253         non-branching basr.
5254
5255 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5256
5257         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5258         unittests/cli-utils-selftests.c
5259         * unittests/cli-utils-selftests.c: New file.
5260
5261 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5262
5263         * NEWS: Mention new commands. Mention change to 'thread apply'.
5264
5265 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5266
5267         * thread.c (thr_try_catch_cmd): New function.
5268         (thread_apply_all_command): Handle qcs flags.
5269         (thread_apply_command): Handle qcs flags.
5270         (taas_command): New function.
5271         (tfaas_command): New function.
5272         (_initialize_thread): Update to setup the new commands 'taas
5273         and 'tfaas'. Change doc string for 'thread apply'.
5274
5275 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5276
5277         * stack.c: (trailing_outermost_frame): New function, mostly
5278         extracted from backtrace_command_1.
5279         (leading_innermost_frame): New function.
5280         (backtrace_command_1): Update to call trailing_outermost_frame.
5281         (frame_apply_command_count): New function.
5282         (frame_apply_level_command): New function.
5283         (frame_apply_all_command): New function.
5284         (frame_apply_command): New function.
5285         (faas_command): New function.
5286         (frame_cmd_list): New variable.
5287         (_initialize_stack): Update to setup the new commands 'frame apply'
5288         and 'faas'.
5289
5290 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
5291
5292         * cli-utils.c (number_or_range_parser::get_number): Only handle
5293         numbers or convenience var as numbers.
5294         (parse_flags): New function.
5295         (parse_flags_qcs): New function.
5296         (number_or_range_parser::finished): Ensure parsing end is detected
5297         before end of string.
5298         * cli-utils.h (parse_flags): New function.
5299         (parse_flags_qcs): New function.
5300         (number_or_range_parser): Remove m_finished bool.
5301         (number_or_range_parser::skip_range): Set m_in_range to false.
5302
5303 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
5304
5305         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
5306         on Windows.
5307
5308 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5309             Jan Kratochvil  <jan.kratochvil@redhat.com>
5310             Paul Fertser  <fercerpav@gmail.com>
5311             Tsutomu Seki  <sekiriki@gmail.com>
5312             Pedro Alves  <palves@redhat.com>
5313
5314         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
5315         'unittests/parse-connection-spec-selftests.c'.
5316         (COMMON_SFILES): Add 'common/netstuff.c'.
5317         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
5318         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
5319         * common/netstuff.c: New file.
5320         * common/netstuff.h: New file.
5321         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
5322         (wait_for_connect): Update comment.  New parameter
5323         'gdb::optional<int> sock' instead of 'struct serial *scb'.
5324         Use 'sock' directly instead of 'scb->fd'.
5325         (try_connect): New function, with code from 'net_open'.
5326         (net_open): Rewrite main loop to deal with multiple
5327         sockets/addresses.  Handle IPv6-style hostnames; implement
5328         support for IPv6 connections.
5329         * unittests/parse-connection-spec-selftests.c: New file.
5330
5331 2018-07-11  Pedro Alves  <palves@redhat.com>
5332
5333         PR gdb/23377
5334         * remote.c (remote_target::remote_detach_pid): Call
5335         set_current_process.
5336
5337 2018-07-11  Pedro Alves  <palves@redhat.com>
5338
5339         * h8300-tdep.c (h8300_gdbarch_init): Remove
5340         set_gdbarch_ecoff_reg_to_regnum calls.
5341
5342 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
5343
5344         PR c++/23373
5345         * c-typeprint.c (c_type_print_base_struct_union): Don't print
5346         offsets/sizes for static members of a class/struct.
5347
5348 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
5349
5350         * target-descriptions.c (tdesc_register_bitsize): Rename.
5351         * target-descriptions.h (tdesc_register_bitsize): Likewise.
5352         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
5353         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
5354
5355 2018-07-10  Tom Tromey  <tom@tromey.com>
5356
5357         * breakpoint.c (moribund_locations): Now static and a
5358         std::vector.
5359         (breakpoint_init_inferior, moribund_breakpoint_here_p)
5360         (build_bpstat_chain, update_global_location_list)
5361         (breakpoint_retire_moribund): Update.
5362         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
5363         VEC.
5364
5365 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5366
5367         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
5368         (riscv_register_reggroup_p): Use new function, remove unneeded
5369         parenthesis.
5370         (riscv_push_dummy_call): Extend assert to compare against xlen or
5371         flen based on register type.
5372
5373 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
5374
5375         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
5376
5377 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5378
5379         * remote.c (show_hardware_watchpoint_limit): New function.
5380         (show_hardware_watchpoint_length_limit): New function.
5381         (show_hardware_breakpoint_limit): New function.
5382         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
5383         where appropriate, update help text.
5384
5385 2018-07-09  Tom Tromey  <tom@tromey.com>
5386
5387         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
5388         (CLIBS): Don't mention NAT_CLIBS.
5389
5390 2018-07-09  Tom Tromey  <tom@tromey.com>
5391
5392         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
5393         (LIBGDB_OBS, clean mostlyclean): Update.
5394         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
5395
5396 2018-07-09  Tom Tromey  <tom@tromey.com>
5397
5398         * Makefile.in (%.c: %.y): Use ECHO_YACC.
5399         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
5400         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
5401
5402 2018-07-09  Tom Tromey  <tom@tromey.com>
5403
5404         * Makefile.in (ALLDEPFILES): Remove exec.c.
5405         (COMMON_OBS): Remove exec.o.
5406         (COMMON_SFILES): Add exec.c.
5407
5408 2018-07-09  Tom Tromey  <tom@tromey.com>
5409
5410         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
5411
5412 2018-07-09  Tom Tromey  <tom@tromey.com>
5413
5414         * Makefile.in (clean mostlyclean): Remove stamp-version.
5415         (version.c): Depend on stamp-version.
5416         (stamp-version): New rule, from version.c rule.
5417
5418 2018-07-09  Tom Tromey  <tom@tromey.com>
5419
5420         * Makefile.in (init.c): Depend on stamp-init.
5421         (stamp-init): New rule, from init.c rule.
5422         (clean mostlyclean): Remove stamp-init.
5423
5424 2018-07-09  Tom Tromey  <tom@tromey.com>
5425
5426         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
5427         SUBDIR_GCC_COMPILE_SRCS.
5428
5429 2018-07-09  Tom Tromey  <tom@tromey.com>
5430
5431         * Makefile.in (init.c): Remove some unused sed rules.
5432
5433 2018-07-09  Tom Tromey  <tom@tromey.com>
5434
5435         * Makefile.in (TSOBS): Remove.
5436         (INIT_FILES): Update.
5437         (LIBGDB_OBS): Update.
5438         (COMMON_SFILES): Add inflow.c.
5439         (SFILES): Remove inflow.c.
5440
5441 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
5442
5443         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
5444
5445 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
5446
5447         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
5448         get_saveloc_name, is_signal_frame_name, step_name,
5449         init_remote_name, create_addr_space_name,
5450         destroy_addr_space_name, search_unwind_table_name,
5451         find_dyn_list_name): Constify.
5452
5453 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
5454
5455         * darwin-nat.c (darwin_pthread_kill): New function.
5456         (darwin_resume_thread): Use darwin_pthread_kill.
5457
5458 2018-07-05  Tom de Vries  <tdevries@suse.de>
5459
5460         * macroexp.c (macro_buffer) <operator=>: New member function.
5461
5462 2018-07-04  Tom Tromey  <tom@tromey.com>
5463
5464         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
5465
5466 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
5467
5468         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
5469         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
5470         * maint.c: Likewise.
5471         * top.c: Likewise.
5472
5473 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5474
5475         * NEWS: Create a new section for the next release branch.
5476         Rename the section of the current branch, now that it has
5477         been cut.
5478
5479 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
5480
5481         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
5482         * version.in: Bump version to 8.2.50.DATE-git.
5483
5484 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
5485             Pedro Alves  <palves@redhat.com>
5486
5487         * linux-nat.c (linux_init_ptrace): Rename to ...
5488         (linux_init_ptrace_procfs): ... this.  Call
5489         linux_proc_init_warnings.
5490         (linux_nat_target::post_attach)
5491         (linux_nat_target::post_startup_inferior): Adjust.
5492         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
5493         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
5494
5495 2018-07-04  Tom de Vries  <tdevries@suse.de>
5496
5497         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
5498         check ...
5499         (read_comp_unit_head): ... here.
5500
5501 2018-07-03  Tom Tromey  <tom@tromey.com>
5502
5503         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
5504         (stop_tracing, tstatus_command)
5505         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
5506         (print_one_static_tracepoint_marker): Update.
5507         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
5508         std::vector.
5509         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
5510         VEC.
5511         (all_tracepoints, static_tracepoints_here): Return std::vector.
5512
5513 2018-07-03  Tom Tromey  <tom@tromey.com>
5514
5515         * common/ptid.c (ptid_equal): Remove.
5516         * common/ptid.h (ptid_equal): Don't declare.
5517         * ada-tasks.c: Update.
5518         * breakpoint.c: Update.
5519         * common/agent.c: Update.
5520         * corelow.c: Update.
5521         * darwin-nat-info.c: Update.
5522         * darwin-nat.c: Update.
5523         * dcache.c: Update.
5524         * dtrace-probe.c: Update.
5525         * dummy-frame.c: Update.
5526         * fbsd-nat.c: Update.
5527         * frame.c: Update.
5528         * gdbthread.h: Update.
5529         * gnu-nat.c: Update.
5530         * go32-nat.c: Update.
5531         * inf-loop.c: Update.
5532         * inf-ptrace.c: Update.
5533         * infcall.c: Update.
5534         * infcmd.c: Update.
5535         * inflow.c: Update.
5536         * infrun.c: Update.
5537         * linux-fork.c: Update.
5538         * linux-nat.c: Update.
5539         * linux-thread-db.c: Update.
5540         * mi/mi-cmd-var.c: Update.
5541         * mi/mi-interp.c: Update.
5542         * mi/mi-main.c: Update.
5543         * nto-procfs.c: Update.
5544         * ppc-linux-tdep.c: Update.
5545         * procfs.c: Update.
5546         * python/py-inferior.c: Update.
5547         * python/py-record-btrace.c: Update.
5548         * python/py-record.c: Update.
5549         * ravenscar-thread.c: Update.
5550         * regcache.c: Update.
5551         * remote-sim.c: Update.
5552         * remote.c: Update.
5553         * sol-thread.c: Update.
5554         * solib.c: Update.
5555         * target.c: Update.
5556         * tui/tui-stack.c: Update.
5557         * varobj.c: Update.
5558         * windows-nat.c: Update.
5559         * windows-tdep.c: Update.
5560
5561 2018-07-03  Tom Tromey  <tom@tromey.com>
5562
5563         * common/ptid.c (ptid_match): Remove.
5564         * common/ptid.h (ptid_match): Don't declare.
5565         * fbsd-nat.c: Update.
5566         * infcmd.c: Update.
5567         * infrun.c: Update.
5568         * linux-nat.c: Update.
5569         * record-btrace.c: Update.
5570         * regcache.c: Update.
5571         * remote.c: Update.
5572
5573 2018-07-03  Tom Tromey  <tom@tromey.com>
5574
5575         * common/ptid.c (ptid_tid_p): Remove.
5576         * common/ptid.h (ptid_tid_p): Don't declare.
5577         * sol-thread.c: Update.
5578
5579 2018-07-03  Tom Tromey  <tom@tromey.com>
5580
5581         * common/ptid.c (ptid_lwp_p): Remove.
5582         * common/ptid.h (ptid_lwp_p): Don't declare.
5583         * fbsd-nat.c: Update.
5584         * linux-nat.c: Update.
5585         * nat/linux-procfs.c: Update.
5586         * nat/x86-linux-dregs.c: Update.
5587         * sol-thread.c: Update.
5588
5589 2018-07-03  Tom Tromey  <tom@tromey.com>
5590
5591         * common/ptid.c (ptid_is_pid): Remove.
5592         * common/ptid.h (ptid_is_pid): Don't declare.
5593         * infrun.c: Update.
5594         * linux-nat.c: Update.
5595         * mi/mi-interp.c: Update.
5596         * remote.c: Update.
5597         * thread.c: Update.
5598
5599 2018-07-03  Tom Tromey  <tom@tromey.com>
5600
5601         * common/ptid.c (ptid_get_tid): Remove.
5602         * common/ptid.h (ptid_get_tid): Don't declare.
5603         * ada-tasks.c: Update.
5604         * aix-thread.c: Update.
5605         * bsd-uthread.c: Update.
5606         * darwin-nat.c: Update.
5607         * fbsd-nat.c: Update.
5608         * i386-darwin-nat.c: Update.
5609         * infrun.c: Update.
5610         * linux-tdep.c: Update.
5611         * nto-procfs.c: Update.
5612         * ppc-ravenscar-thread.c: Update.
5613         * python/py-infthread.c: Update.
5614         * ravenscar-thread.c: Update.
5615         * sol-thread.c: Update.
5616         * sparc-ravenscar-thread.c: Update.
5617         * windows-nat.c: Update.
5618
5619 2018-07-03  Tom Tromey  <tom@tromey.com>
5620
5621         * common/ptid.c (ptid_get_lwp): Remove.
5622         * common/ptid.h (ptid_get_lwp): Don't declare.
5623         * aarch64-linux-nat.c: Update.
5624         * ada-tasks.c: Update.
5625         * aix-thread.c: Update.
5626         * amd64-linux-nat.c: Update.
5627         * arm-linux-nat.c: Update.
5628         * corelow.c: Update.
5629         * fbsd-nat.c: Update.
5630         * fbsd-tdep.c: Update.
5631         * gnu-nat.c: Update.
5632         * i386-cygwin-tdep.c: Update.
5633         * i386-gnu-nat.c: Update.
5634         * i386-linux-nat.c: Update.
5635         * ia64-linux-nat.c: Update.
5636         * inf-ptrace.c: Update.
5637         * infrun.c: Update.
5638         * linux-fork.c: Update.
5639         * linux-nat.c: Update.
5640         * linux-tdep.c: Update.
5641         * linux-thread-db.c: Update.
5642         * mips-linux-nat.c: Update.
5643         * nat/aarch64-linux-hw-point.c: Update.
5644         * nat/aarch64-linux.c: Update.
5645         * nat/linux-btrace.c: Update.
5646         * nat/linux-osdata.c: Update.
5647         * nat/linux-procfs.c: Update.
5648         * nat/x86-linux-dregs.c: Update.
5649         * obsd-nat.c: Update.
5650         * ppc-fbsd-nat.c: Update.
5651         * ppc-linux-nat.c: Update.
5652         * procfs.c: Update.
5653         * python/py-infthread.c: Update.
5654         * ravenscar-thread.c: Update.
5655         * remote.c: Update.
5656         * s390-linux-nat.c: Update.
5657         * sol-thread.c: Update.
5658         * sol2-tdep.c: Update.
5659         * spu-linux-nat.c: Update.
5660         * x86-linux-nat.c: Update.
5661         * xtensa-linux-nat.c: Update.
5662
5663 2018-07-03  Tom Tromey  <tom@tromey.com>
5664
5665         * common/ptid.c (ptid_get_pid): Remove.
5666         * common/ptid.h (ptid_get_pid): Don't declare.
5667         * aarch64-linux-nat.c: Update.
5668         * ada-lang.c: Update.
5669         * aix-thread.c: Update.
5670         * alpha-bsd-nat.c: Update.
5671         * amd64-fbsd-nat.c: Update.
5672         * amd64-linux-nat.c: Update.
5673         * arm-linux-nat.c: Update.
5674         * arm-nbsd-nat.c: Update.
5675         * auxv.c: Update.
5676         * break-catch-syscall.c: Update.
5677         * breakpoint.c: Update.
5678         * bsd-uthread.c: Update.
5679         * corelow.c: Update.
5680         * ctf.c: Update.
5681         * darwin-nat.c: Update.
5682         * fbsd-nat.c: Update.
5683         * fbsd-tdep.c: Update.
5684         * gcore.c: Update.
5685         * gnu-nat.c: Update.
5686         * hppa-nbsd-nat.c: Update.
5687         * hppa-obsd-nat.c: Update.
5688         * i386-fbsd-nat.c: Update.
5689         * ia64-linux-nat.c: Update.
5690         * inf-ptrace.c: Update.
5691         * infcmd.c: Update.
5692         * inferior.c: Update.
5693         * inferior.h: Update.
5694         * inflow.c: Update.
5695         * infrun.c: Update.
5696         * linux-fork.c: Update.
5697         * linux-nat.c: Update.
5698         * linux-tdep.c: Update.
5699         * linux-thread-db.c: Update.
5700         * m68k-bsd-nat.c: Update.
5701         * mi/mi-interp.c: Update.
5702         * mi/mi-main.c: Update.
5703         * mips-linux-nat.c: Update.
5704         * mips-nbsd-nat.c: Update.
5705         * mips64-obsd-nat.c: Update.
5706         * nat/aarch64-linux-hw-point.c: Update.
5707         * nat/aarch64-linux.c: Update.
5708         * nat/linux-btrace.c: Update.
5709         * nat/linux-osdata.c: Update.
5710         * nat/linux-procfs.c: Update.
5711         * nat/x86-linux-dregs.c: Update.
5712         * nto-procfs.c: Update.
5713         * obsd-nat.c: Update.
5714         * ppc-linux-nat.c: Update.
5715         * ppc-nbsd-nat.c: Update.
5716         * ppc-obsd-nat.c: Update.
5717         * proc-service.c: Update.
5718         * procfs.c: Update.
5719         * python/py-inferior.c: Update.
5720         * python/py-infthread.c: Update.
5721         * ravenscar-thread.c: Update.
5722         * record.c: Update.
5723         * remote-sim.c: Update.
5724         * remote.c: Update.
5725         * rs6000-nat.c: Update.
5726         * s390-linux-nat.c: Update.
5727         * sh-nbsd-nat.c: Update.
5728         * sol-thread.c: Update.
5729         * sparc-nat.c: Update.
5730         * sparc64-tdep.c: Update.
5731         * spu-linux-nat.c: Update.
5732         * spu-tdep.c: Update.
5733         * target-debug.h: Update.
5734         * target.c: Update.
5735         * thread.c: Update.
5736         * tid-parse.c: Update.
5737         * tracefile-tfile.c: Update.
5738         * vax-bsd-nat.c: Update.
5739         * windows-nat.c: Update.
5740         * x86-linux-nat.c: Update.
5741         * x86-nat.c: Update.
5742
5743 2018-07-03  Tom Tromey  <tom@tromey.com>
5744
5745         * common/ptid.c (pid_to_ptid): Remove.
5746         * common/ptid.h (pid_to_ptid): Don't declare.
5747         * aix-thread.c: Update.
5748         * arm-linux-nat.c: Update.
5749         * common/ptid.c: Update.
5750         * common/ptid.h: Update.
5751         * corelow.c: Update.
5752         * ctf.c: Update.
5753         * darwin-nat.c: Update.
5754         * fbsd-nat.c: Update.
5755         * fork-child.c: Update.
5756         * gnu-nat.c: Update.
5757         * go32-nat.c: Update.
5758         * inf-ptrace.c: Update.
5759         * infcmd.c: Update.
5760         * inferior.c: Update.
5761         * infrun.c: Update.
5762         * linux-fork.c: Update.
5763         * linux-nat.c: Update.
5764         * nat/aarch64-linux-hw-point.c: Update.
5765         * nat/fork-inferior.c: Update.
5766         * nat/x86-linux-dregs.c: Update.
5767         * nto-procfs.c: Update.
5768         * obsd-nat.c: Update.
5769         * procfs.c: Update.
5770         * progspace.c: Update.
5771         * remote.c: Update.
5772         * rs6000-nat.c: Update.
5773         * s390-linux-nat.c: Update.
5774         * sol-thread.c: Update.
5775         * spu-linux-nat.c: Update.
5776         * target.c: Update.
5777         * top.c: Update.
5778         * tracefile-tfile.c: Update.
5779         * windows-nat.c: Update.
5780
5781 2018-07-03  Tom Tromey  <tom@tromey.com>
5782
5783         * common/ptid.h (ptid_build): Don't declare.
5784         * common/ptid.c (ptid_build): Remove.
5785         * aix-thread.c: Update.
5786         * bsd-kvm.c: Update.
5787         * bsd-uthread.c: Update.
5788         * common/agent.c: Update.
5789         * common/ptid.c: Update.
5790         * common/ptid.h: Update.
5791         * corelow.c: Update.
5792         * darwin-nat.c: Update.
5793         * fbsd-nat.c: Update.
5794         * gnu-nat.c: Update.
5795         * linux-fork.c: Update.
5796         * linux-nat.c: Update.
5797         * linux-thread-db.c: Update.
5798         * nat/linux-osdata.c: Update.
5799         * nat/linux-procfs.c: Update.
5800         * nto-procfs.c: Update.
5801         * obsd-nat.c: Update.
5802         * proc-service.c: Update.
5803         * procfs.c: Update.
5804         * ravenscar-thread.c: Update.
5805         * remote-sim.c: Update.
5806         * remote.c: Update.
5807         * sol-thread.c: Update.
5808         * target.c: Update.
5809         * windows-nat.c: Update.
5810
5811 2018-07-03  Tom Tromey  <tom@tromey.com>
5812
5813         * infrun.c (follow_exec): Use exit_inferior_silent.
5814         * inferior.c (exit_inferior_num_silent): Remove.
5815         * inferior.h (exit_inferior_num_silent): Don't declare.
5816
5817 2018-07-03  Tom Tromey  <tom@tromey.com>
5818
5819         PR cli/23340:
5820         * darwin-nat.c (darwin_attach_pid): Reset inferior and
5821         inferior_ptid on error.
5822
5823 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
5824             Simon Marchi  <simon.marchi@polymtl.ca>
5825
5826         PR tdep/8282
5827         * disasm.h (gdb_disassembler): Add
5828         `m_disassembler_options_holder'. member
5829         * disasm.c (get_all_disassembler_options): New function.
5830         (gdb_disassembler::gdb_disassembler): Use it.
5831         (gdb_buffered_insn_length_init_dis): Likewise.
5832         (gdb_buffered_insn_length): Adjust accordingly.
5833         (set_disassembler_options): Handle options with arguments.
5834         (show_disassembler_options_sfunc): Likewise.  Add a leading new
5835         line if showing options with descriptions.
5836         (disassembler_options_completer): Adapt to using the
5837         `disasm_options_and_args_t' structure.
5838         * mips-tdep.c (mips_disassembler_options): New variable.
5839         (mips_disassembler_options_o32): Likewise.
5840         (mips_disassembler_options_n32): Likewise.
5841         (mips_disassembler_options_n64): Likewise.
5842         (gdb_print_insn_mips): Don't set `disassembler_options'.
5843         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
5844         functions.
5845         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
5846         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
5847         `gdbarch_disassembler_options_implicit' and
5848         `gdbarch_valid_disassembler_options'.
5849         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
5850         `disasm_options_and_args_t' structure.
5851         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
5852         method.
5853         (valid_disassembler_options): Switch from `disasm_options_t' to
5854         the `disasm_options_and_args_t' structure.
5855         * NEWS: Document `set disassembler-options' support for the MIPS
5856         target.
5857         * gdbarch.h: Regenerate.
5858         * gdbarch.c: Regenerate.
5859
5860 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
5861
5862         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
5863
5864 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
5865
5866         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
5867         parameter in call to amd64_target_description.
5868         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
5869         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
5870         (amd64fbsd_init_abi): Likewise.
5871         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
5872         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
5873         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
5874         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
5875
5876 2018-06-29  Pedro Alves  <palves@redhat.com>
5877
5878         * gdb/amd64-tdep.h (amd64_create_target_description): Add
5879         "segments" parameter.
5880         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
5881         (_initialize_amd64_tdep): Update call to
5882         amd64_create_target_description.
5883         (amd64_target_description): Add "segments" parameter.  Adjust
5884         the implementation to use it.
5885         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
5886         call to amd64_create_target_description.
5887         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
5888         * gdb/arch/amd64.h (amd64_create_target_description): Add
5889         "segments" register.
5890         * gdb/arch/amd64.c (amd64_create_target_description): Add
5891         "segments" parameter.  Call create_feature_i386_64bit_segments
5892         only if SEGMENTS is true.
5893         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
5894         call to amd64_create_target_description.
5895
5896 2018-06-29  Pedro Alves  <palves@redhat.com>
5897
5898         * thread.c (thread_target_id_str): New, factored out from ...
5899         (print_thread_info_1): ... here.  Use it to compute the max
5900         "Target Id" column width.
5901
5902 2018-06-29  Pedro Alves  <palves@redhat.com>
5903
5904         * remote.c (remote_target::extra_thread_info): Delete
5905         'display_buf' and 'n' locals.  from the cache, regardless of
5906         packet mechanims is in use.  Use cache for qThreadExtra and qP
5907         methods too.
5908
5909 2018-06-29  Pedro Alves  <palves@redhat.com>
5910
5911         * blockframe.c (find_pc_sect_containing_function): New function.
5912         * breakpoint.c (print_breakpoint_location): Don't call
5913         find_pc_sect_function.
5914         * linespec.c (create_sals_line_offset): Record the location's
5915         symbol in the sal.
5916         * linespec.c (convert_address_location_to_sals): Fill in sal's
5917         symbol with find_pc_sect_containing_function.
5918         * symtab.c (find_function_start_sal): Rename to ...
5919         (find_function_start_sal_1): ... this.
5920         (find_function_start_sal): Reimplement as wrapper around
5921         find_function_start_sal_1, and use
5922         find_pc_sect_containing_function to fill in the sal's symbol.
5923         (find_function_start_sal(symbol*, bool)): Adjust.
5924         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
5925         comments.
5926         (find_pc_sect_containing_function): Declare.
5927
5928 2018-06-29  Pedro Alves  <palves@redhat.com>
5929
5930         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
5931         true if the the location has no symbol.
5932
5933 2018-06-28  Tom Tromey  <tom@tromey.com>
5934
5935         * NEWS: Mention --enable-codesign.
5936         * silent-rules.mk (ECHO_SIGN): New variable.
5937         * configure.ac: Add --enable-codesign.
5938         * configure: Rebuild.
5939         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
5940         (gdb$(EXEEXT)): Optionally invoke codesign.
5941
5942 2018-06-28  Pedro Alves  <palves@redhat.com>
5943
5944         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
5945         comments.
5946         (switch_to_thread_no_regs): Adjust comment.
5947         * infcmd.c (stop_pc): Delete.
5948         (post_create_inferior, info_program_command): Replace references
5949         to stop_pc with references to thread_info->suspend.stop_pc.
5950         * inferior.h (stop_pc): Delete declaration.
5951         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
5952         (handle_inferior_event_1, handle_signal_stop)
5953         (process_event_stop_test, keep_going_stepped_thread)
5954         (handle_step_into_function, handle_step_into_function_backward)
5955         (print_stop_location): Replace references to stop_pc with
5956         references to thread_info->suspend.stop_pc.
5957         (struct infcall_suspend_state) <stop_pc>: Delete field.
5958         (save_infcall_suspend_state, restore_infcall_suspend_state):
5959         Remove references to inf_stat->stop_pc.
5960         * linux-fork.c (fork_load_infrun_state): Likewise.
5961         * record-btrace.c (record_btrace_set_replay): Likewise.
5962         * record-full.c (record_full_goto_entry): Likewise.
5963         * remote.c (print_one_stopped_thread): Likewise.
5964         * target.c (target_resume): Extend comment.
5965         * thread.c (set_executing_thread): New.
5966         (set_executing): Use it.
5967         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
5968         Remove references to stop_pc.
5969
5970 2018-06-28  Pedro Alves  <palves@redhat.com>
5971
5972         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
5973         Moving fetching stop_pc until after ecs->event_thread is refreshed.
5974
5975 2018-06-28  Tom Tromey  <tom@tromey.com>
5976
5977         * coffread.c (coff_symfile_finish): Update.
5978         * xcoffread.c (xcoff_symfile_finish): Update.
5979         * elfread.c (elf_symfile_finish): Update.
5980         * symfile.h (dwarf2_free_objfile): Don't declare.
5981         * dwarf2read.c (_initialize_dwarf2_read): Use
5982         register_objfile_data_with_cleanup.
5983         (dwarf2_free_objfile): Now static.  Change signature.
5984
5985 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5986
5987         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
5988         option "-o" to add-symbol-file-load to add an offset to each
5989         section's load address.
5990         * symfile.c (set_objfile_default_section_offset): New function.
5991
5992 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5993
5994         * symfile.c (add_symbol_file_command): Make sure that sections
5995         with the same name are sorted in the same order.
5996
5997 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
5998
5999         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
6000         require the second argument.  If omitted, load sections at the
6001         addresses specified in the file.
6002
6003 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6004
6005         * symfile.c (symbol_file_command, symbol_file_add_main_1)
6006         (_initialize_symfile): Add option "-o" to symbol-file to add an
6007         offset to each section of the symbol file.
6008
6009 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
6010
6011         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
6012
6013 2018-06-27  Tom Tromey  <tom@tromey.com>
6014
6015         * stack.c (_initialize_stack): Update "func" help text.
6016
6017 2018-06-27  Tom Tromey  <tom@tromey.com>
6018
6019         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
6020         std::vector.
6021         (unwind_infopy_str, pyuw_create_unwind_info)
6022         (unwind_infopy_add_saved_register, pyuw_sniffer)
6023         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
6024         Update.
6025         (struct saved_reg): Add constructor.
6026         <value>: Now a gdbpy_ref<>.
6027
6028 2018-06-27  Tom Tromey  <tom@tromey.com>
6029
6030         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
6031
6032 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6033
6034         * gdb-gdb.py.in: Format using autopep8.
6035
6036 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6037
6038         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
6039         (type_lookup_function): Recognize CORE_ADDR values.
6040
6041 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6042
6043         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
6044         print tag_name.
6045
6046 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6047
6048         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
6049         <__lt__>: Add.
6050
6051 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6052
6053         * gdb-gdb.py: Move to...
6054         * gdb-gdb.py.in: ... here.
6055         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
6056         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
6057         dependencies.
6058         (distclean): Remove gdb-gdb.py when cleaning.
6059         (gdb-gdb.py, gdb-gdb.gdb): New rules.
6060         * configure: Re-generate.
6061
6062 2018-06-27  Pedro Alves  <palves@redhat.com>
6063
6064         * proc-service.c (get_ps_regcache): New.
6065         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
6066         (ps_lsetfpregs): Use it.
6067
6068 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
6069
6070         PR gdb/21695
6071         * dwarf2read.c (lnp_state_machine::check_line_address): Update declaration.
6072         (dwarf_decode_lines_1): Adjust.
6073
6074 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
6075
6076         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
6077         override.
6078         <info_proc>: Likewise.
6079
6080 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
6081
6082         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
6083         to windows_fetch_one_register, and only handle the case of
6084         fetching one register.  Move the code that reloads the context
6085         and iterates over all registers if R is negative to...
6086         (windows_nat_target::fetch_registers): ... here.
6087         (do_windows_store_inferior_registers): Rename to
6088         windows_store_one_register, and only handle the case of storing
6089         one register.  Move the code that handles the case where r is
6090         negative to...
6091         (windows_nat_target::store_registers) ... here.
6092
6093 2018-06-26  Tom Tromey  <tom@tromey.com>
6094
6095         PR rust/22574:
6096         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
6097         * rust-lang.c (rust_print_struct_def): Add podata parameter.
6098         Update.
6099         (rust_internal_print_type): Add podata parameter.
6100         (rust_print_type): Update.
6101
6102 2018-06-26  Tom Tromey  <tom@tromey.com>
6103
6104         * typeprint.h (struct print_offset_data) <update, finish,
6105         maybe_print_hole>: New methods.
6106         <indentation>: New constant.
6107         * typeprint.c (print_offset_data::indentation): Define.
6108         (print_offset_data::maybe_print_hole, print_offset_data::update)
6109         (print_offset_data::finish): Move from c-typeprint.c and rename.
6110         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
6111         (print_spaces_filtered_with_print_options): Update.
6112         (c_print_type_union_field_offset, maybe_print_hole)
6113         (c_print_type_struct_field_offset): Move to typeprint.c and
6114         rename.
6115         (c_type_print_base_struct_union): Update.
6116
6117 2018-06-25  Pedro Alves  <palves@redhat.com>
6118
6119         * gdbthread.h (thread_info_ref, delete_thread)
6120         (delete_thread_silent, first_thread_of_inferior)
6121         (any_thread_of_inferior, switch_to_thread)
6122         (enable_thread_stack_temporaries)
6123         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6124         (get_last_thread_stack_temporary)
6125         (value_in_thread_stack_temporaries, can_access_registers_thread):
6126         Spell out "struct thread_info" instead of just "thread_info".
6127         * inferior.h (notice_new_inferior): Likewise.
6128
6129 2018-06-25  Pedro Alves  <palves@redhat.com>
6130
6131         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6132         pass thread_info pointer to delete_thread.
6133         (windows_nat_target::detach): Pass inferior pointer to
6134         detach_inferior.
6135         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
6136         delete_thread.
6137         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
6138         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
6139         and pass a thread_info pointer to delete_thread.
6140         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
6141         pass thread_info pointer to delete_thread.
6142         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
6143         delete_thread_silent call.
6144         * procfs.c (procfs_target::detach): Pass inferior pointer to
6145         detach_inferior.
6146         (procfs_target::wait): Pass thread_info pointer to delete_thread.
6147         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
6148         delete_thread_silent call.
6149         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
6150         pass thread_info pointer to delete_thread.
6151         (windows_nat_target::detach): Pass inferior pointer to
6152         delete_inferior.
6153
6154 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6155
6156         * regcache.c (readable_regcache::read_part): Fix asserts.
6157         (reg_buffer::raw_collect_part): New function.
6158         (regcache::write_part): Fix asserts.
6159         (reg_buffer::raw_supply_part): New function.
6160         (regcache::transfer_regset_register): New helper function.
6161         (regcache::transfer_regset): Call new functions.
6162         (regcache_supply_regset): Use gdb_byte*.
6163         (regcache::supply_regset): Likewise.
6164         (regcache_collect_regset): Likewise.
6165         (regcache::collect_regset): Likewise.
6166         * regcache.h (reg_buffer::raw_collect_part): New declaration.
6167         (reg_buffer::raw_supply_part): Likewise.
6168         (regcache::transfer_regset_register): Likewise.
6169         (regcache::transfer_regset): Use gdb_byte*.
6170
6171 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
6172
6173         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
6174
6175 2018-06-21  Pedro Alves  <palves@redhat.com>
6176
6177         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
6178         instead of a ptid_t.  All callers adjusted.
6179         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
6180         adjusted.
6181         (print_ada_task_info, display_current_task_id, task_command_1):
6182         Adjust.
6183         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
6184         inferior_thread.
6185         (breakpoint_kind): Adjust.
6186         (remove_breakpoints_pid): Rename to ...
6187         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
6188         pointer.  All callers adjusted.
6189         (bpstat_clear_actions): Use inferior_thread.
6190         (get_bpstat_thread): New.
6191         (bpstat_do_actions): Use it.
6192         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
6193         to take a thread_info pointer.  All callers adjusted.
6194         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
6195         (breakpoint_re_set_thread): Use inferior_thread.
6196         * breakpoint.h (struct inferior): Forward declare.
6197         (bpstat_stop_status): Update.
6198         (remove_breakpoints_pid): Delete.
6199         (remove_breakpoints_inf): New.
6200         * bsd-uthread.c (bsd_uthread_target::wait)
6201         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
6202         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
6203         (maint_btrace_packet_history_cmd)
6204         (maint_btrace_clear_packet_history_cmd): Adjust.
6205         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
6206         inferior_thread.
6207         * cli/cli-interp.c: Include "inferior.h".
6208         * common/refcounted-object.h (struct
6209         refcounted_object_ref_policy): New.
6210         * compile/compile-object-load.c: Include gdbthread.h.
6211         (store_regs): Use inferior_thread.
6212         * corelow.c (core_target::close): Use current_inferior.
6213         (core_target_open): Adjust to use first_thread_of_inferior and use
6214         the current inferior.
6215         * ctf.c (ctf_target::close): Adjust to use current_inferior.
6216         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
6217         <thread>: ... this new field.  All references adjusted.
6218         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
6219         Take a thread_info pointer instead of a ptid_t.
6220         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
6221         (dummy_frame_discard, register_dummy_frame_dtor): Take a
6222         thread_info pointer instead of a ptid_t.
6223         * elfread.c: Include "inferior.h".
6224         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
6225         Use inferior_thread.
6226         * eval.c (evaluate_subexp): Likewise.
6227         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
6228         inferior_thread.
6229         * gdb_proc_service.h (struct thread_info): Forward declare.
6230         (struct ps_prochandle) <ptid>: Delete, replaced by ...
6231         <thread>: ... this new field.  All references adjusted.
6232         * gdbarch.h, gdbarch.c: Regenerate.
6233         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
6234         'thread' parameter.  All implementations and callers adjusted.
6235         * gdbthread.h (thread_info) <set_running>: New method.
6236         (delete_thread, delete_thread_silent): Take a thread_info pointer
6237         instead of a ptid.
6238         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
6239         (first_thread_of_process): Delete, replaced by ...
6240         (first_thread_of_inferior): ... this new function.  All callers
6241         adjusted.
6242         (any_live_thread_of_process): Delete, replaced by ...
6243         (any_live_thread_of_inferior): ... this new function.  All callers
6244         adjusted.
6245         (switch_to_thread, switch_to_no_thread): Declare.
6246         (is_executing): Delete.
6247         (enable_thread_stack_temporaries): Update comment.
6248         <enable_thread_stack_temporaries>: Take a thread_info pointer
6249         instead of a ptid_t.  Incref the thread.
6250         <~enable_thread_stack_temporaries>: Decref the thread.
6251         <m_ptid>: Delete
6252         <m_thr>: New.
6253         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6254         (get_last_thread_stack_temporary)
6255         (value_in_thread_stack_temporaries, can_access_registers_thread):
6256         Take a thread_info pointer instead of a ptid_t.  All callers
6257         adjusted.
6258         * infcall.c (get_call_return_value): Use inferior_thread.
6259         (run_inferior_call): Work with thread pointers instead of ptid_t.
6260         (call_function_by_hand_dummy): Work with thread pointers instead
6261         of ptid_t.  Use thread_info_ref.
6262         * infcmd.c (proceed_thread_callback): Access thread's state
6263         directly.
6264         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
6265         access thread's state directly.
6266         (continue_command): Use inferior_thread.
6267         (info_program_command): Use find_thread_ptid and access thread
6268         state directly.
6269         (proceed_after_attach_callback): Use thread state directly.
6270         (notice_new_inferior): Take a thread_info pointer instead of a
6271         ptid_t.  All callers adjusted.
6272         (exit_inferior): Take an inferior pointer instead of a pid.  All
6273         callers adjusted.
6274         (exit_inferior_silent): New.
6275         (detach_inferior): Delete.
6276         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
6277         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
6278         (detach_inferior_command, kill_inferior_command): Use
6279         find_inferior_id instead of valid_gdb_inferior_id and
6280         gdb_inferior_id_to_pid.
6281         (inferior_command): Use inferior and thread pointers.
6282         * inferior.h (struct thread_info): Forward declare.
6283         (notice_new_inferior): Take a thread_info pointer instead of a
6284         ptid_t.  All callers adjusted.
6285         (detach_inferior): Delete declaration.
6286         (exit_inferior, exit_inferior_silent): Take an inferior pointer
6287         instead of a pid.  All callers adjusted.
6288         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
6289         (valid_gdb_inferior_id): Delete.
6290         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
6291         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
6292         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
6293         ...
6294         <inf>: ... this new field.
6295         <step_ptid>: Delete, replaced by ...
6296         <step_thread>: ... this new field.
6297         (get_displaced_stepping_state): Take an inferior pointer instead
6298         of a pid.  All callers adjusted.
6299         (displaced_step_in_progress_any_inferior): Adjust.
6300         (displaced_step_in_progress_thread): Take a thread pointer instead
6301         of a ptid_t.  All callers adjusted.
6302         (displaced_step_in_progress, add_displaced_stepping_state): Take
6303         an inferior pointer instead of a pid.  All callers adjusted.
6304         (get_displaced_step_closure_by_addr): Adjust.
6305         (remove_displaced_stepping_state): Take an inferior pointer
6306         instead of a pid.  All callers adjusted.
6307         (displaced_step_prepare_throw, displaced_step_prepare)
6308         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
6309         All callers adjusted.
6310         (start_step_over): Adjust.
6311         (infrun_thread_ptid_changed): Remove bit updating ptids in the
6312         displaced step queue.
6313         (do_target_resume): Adjust.
6314         (fetch_inferior_event): Use inferior_thread.
6315         (context_switch, get_inferior_stop_soon): Take an
6316         execution_control_state pointer instead of a ptid_t.  All callers
6317         adjusted.
6318         (switch_to_thread_cleanup): Delete.
6319         (stop_all_threads): Use scoped_restore_current_thread.
6320         * inline-frame.c: Include "gdbthread.h".
6321         (inline_state) <inline_state>: Take a thread pointer instead of a
6322         ptid_t.  All callers adjusted.
6323         <ptid>: Delete, replaced by ...
6324         <thread>: ... this new field.
6325         (find_inline_frame_state): Take a thread pointer instead of a
6326         ptid_t.  All callers adjusted.
6327         (skip_inline_frames, step_into_inline_frame)
6328         (inline_skipped_frames, inline_skipped_symbol): Take a thread
6329         pointer instead of a ptid_t.  All callers adjusted.
6330         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
6331         (inline_skipped_frames, inline_skipped_symbol): Likewise.
6332         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
6333         pointers directly.
6334         * linux-nat.c (get_detach_signal): Likewise.
6335         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
6336         (thread_db_notice_clone): Adjust.
6337         (thread_db_find_new_threads_silently)
6338         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
6339         a thread pointer instead of a ptid_t.  All callers adjusted.
6340         * mi/mi-cmd-var.c: Include "inferior.h".
6341         (mi_cmd_var_update_iter): Update to use thread pointers.
6342         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
6343         inferior directly.
6344         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
6345         out to ...
6346         (mi_output_running): ... this new function.
6347         (mi_on_resume_1): Adjust to use it.
6348         (mi_user_selected_context_changed): Adjust to use inferior_thread.
6349         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
6350         directly.
6351         (interrupt_thread_callback): : Adjust to use thread and inferior
6352         pointers.
6353         * proc-service.c: Include "gdbthread.h".
6354         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
6355         * progspace-and-thread.c: Include "inferior.h".
6356         * progspace.c: Include "inferior.h".
6357         * python/py-exitedevent.c (create_exited_event_object): Adjust to
6358         hold a reference to an inferior_object.
6359         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
6360         inferior_thread.
6361         * python/py-inferior.c (struct inferior_object): Give the type a
6362         tag name instead of a typedef.
6363         (python_on_normal_stop): No need to check if the current thread is
6364         listed.
6365         (inferior_to_inferior_object): Change return type to
6366         inferior_object.  All callers adjusted.
6367         (find_thread_object): Delete, bits factored out to ...
6368         (thread_to_thread_object): ... this new function.
6369         * python/py-infthread.c (create_thread_object): Use
6370         inferior_to_inferior_object.
6371         (thpy_is_stopped): Use thread pointer directly.
6372         (gdbpy_selected_thread): Use inferior_thread.
6373         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
6374         field, replaced with ...
6375         <thread>: ... this new field.  All users adjusted.
6376         (btpy_insn_or_gap_new): Drop const.
6377         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
6378         callers adjusted.
6379         * python/py-record.c: Include "gdbthread.h".
6380         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6381         a ptid_t.  All callers adjusted.
6382         (gdbpy_current_recording): Use inferior_thread.
6383         * python/py-record.h (recpy_record_object) <ptid>: Delete
6384         field, replaced with ...
6385         <thread>: ... this new field.  All users adjusted.
6386         (recpy_element_object) <ptid>: Delete
6387         field, replaced with ...
6388         <thread>: ... this new field.  All users adjusted.
6389         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
6390         a ptid_t.  All callers adjusted.
6391         * python/py-threadevent.c: Include "gdbthread.h".
6392         (get_event_thread): Use thread_to_thread_object.
6393         * python/python-internal.h (struct inferior_object): Forward
6394         declare.
6395         (find_thread_object, find_inferior_object): Delete declarations.
6396         (thread_to_thread_object, inferior_to_inferior_object): New
6397         declarations.
6398         * record-btrace.c: Include "inferior.h".
6399         (require_btrace_thread): Use inferior_thread.
6400         (record_btrace_frame_sniffer)
6401         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
6402         (get_thread_current_frame): Use scoped_restore_current_thread and
6403         switch_to_thread.
6404         (get_thread_current_frame): Use thread pointer directly.
6405         (record_btrace_replay_at_breakpoint): Use thread's inferior
6406         pointer directly.
6407         * record-full.c: Include "inferior.h".
6408         * regcache.c: Include "gdbthread.h".
6409         (get_thread_arch_regcache): Use the inferior's address space
6410         directly.
6411         (get_thread_regcache, registers_changed_thread): New.
6412         * regcache.h (get_thread_regcache(thread_info *thread)): New
6413         overload.
6414         (registers_changed_thread): New.
6415         (remote_target) <remote_detach_1>: Swap order of parameters.
6416         (remote_add_thread): <remote_add_thread>: Return the new thread.
6417         (get_remote_thread_info(ptid_t)): New overload.
6418         (remote_target::remote_notice_new_inferior): Use thread pointers
6419         directly.
6420         (remote_target::process_initial_stop_replies): Use
6421         thread_info::set_running.
6422         (remote_target::remote_detach_1, remote_target::detach)
6423         (extended_remote_target::detach): Adjust.
6424         * stack.c (frame_show_address): Use inferior_thread.
6425         * target-debug.h (target_debug_print_thread_info_pp): New.
6426         * target-delegates.c: Regenerate.
6427         * target.c (default_thread_address_space): Delete.
6428         (memory_xfer_partial_1): Use current_inferior.
6429         (target_detach): Use current_inferior.
6430         (target_thread_address_space): Delete.
6431         (generic_mourn_inferior): Use current_inferior.
6432         * target.h (struct target_ops) <thread_address_space>: Delete.
6433         (target_thread_address_space): Delete.
6434         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
6435         pointers directly.
6436         (delete_thread_1, delete_thread, delete_thread_silent): Take a
6437         thread pointer instead of a ptid_t.  Adjust all callers.
6438         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
6439         (first_thread_of_process): Delete, replaced by ...
6440         (first_thread_of_inferior): ... this new function.  All callers
6441         adjusted.
6442         (any_thread_of_process): Rename to ...
6443         (any_thread_of_inferior): ... this, and take an inferior pointer.
6444         (any_live_thread_of_process): Rename to ...
6445         (any_live_thread_of_inferior): ... this, and take an inferior
6446         pointer.
6447         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
6448         (value_in_thread_stack_temporaries)
6449         (get_last_thread_stack_temporary): Take a thread pointer instead
6450         of a ptid_t.  Adjust all callers.
6451         (thread_info::set_running): New.
6452         (validate_registers_access): Use inferior_thread.
6453         (can_access_registers_ptid): Rename to ...
6454         (can_access_registers_thread): ... this, and take a thread
6455         pointer.
6456         (print_thread_info_1): Adjust to compare thread pointers instead
6457         of ptids.
6458         (switch_to_no_thread, switch_to_thread): Make extern.
6459         (scoped_restore_current_thread::~scoped_restore_current_thread):
6460         Use m_thread pointer directly.
6461         (scoped_restore_current_thread::scoped_restore_current_thread):
6462         Use inferior_thread.
6463         (thread_command): Use thread pointer directly.
6464         (thread_num_make_value_helper): Use inferior_thread.
6465         * top.c (execute_command): Use inferior_thread.
6466         * tui/tui-interp.c: Include "inferior.h".
6467         * varobj.c (varobj_create): Use inferior_thread.
6468         (value_of_root_1): Use find_thread_global_id instead of
6469         global_thread_id_to_ptid.
6470
6471 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
6472
6473         * regcache.c (readable_regcache::read_part): Avoid memcpy when
6474         possible.
6475         (regcache::write_part): Likewise.
6476         (readable_regcache::cooked_read_part): Update comment.
6477         (readable_regcache::cooked_write_part): Likewise.
6478         * regcache.h: (readable_regcache::read_part): Likewise.
6479         (regcache::write_part): Likewise.
6480
6481 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
6482             Dirk Schubert  <dirk.schubert@arm.com>
6483
6484         * aarch64-linux-nat.c (post_attach): New.
6485         (aarch64_linux_nat_target::post_attach): Override post_attach to
6486         record the number of hardware debug registers.
6487
6488 2018-06-20  Tom Tromey  <tom@tromey.com>
6489
6490         * python/py-param.c (add_setshow_generic): Make parameters const.
6491         (parmpy_init): Update.
6492
6493 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6494
6495         * regcache.h (regcache_cooked_read_ftype): Rename to...
6496         (register_read_ftype): ...this, change type to function_view.
6497         (class reg_buffer) <save>: Remove src parameter.
6498         (readonly_detached_regcache) <readonly_detached_regcache>: Make
6499         parameter non-const in first overload.  Remove src parameter in
6500         second overload.
6501         * regcache.c (do_cooked_read): Remove.
6502         (readonly_detached_regcache::readonly_detached_regcache): Make
6503         parameter non-const, adjust call to other constructor.
6504         (reg_buffer::save): Remove src parameter.
6505         * frame.c (do_frame_register_read): Remove.
6506         (frame_save_as_regcache): Use lambda function.
6507         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
6508         parameter to ppu2spu_data *.
6509         (ppu2spu_sniffer): Use lambda function.
6510
6511 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
6512
6513         * record-full.c (record_full_target::insert_breakpoint): Remove
6514         "struct" keyword, add const.
6515
6516 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
6517
6518         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
6519         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
6520         * configure.ac: Remove AC_PREREQ, add missing quoting.
6521         * gnulib/configure.ac: Modernize usage of
6522         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
6523         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
6524         (AUTOMAKE_VERSION): Bump to 1.15.1.
6525         * configure: Re-generate.
6526         * config.in: Re-generate.
6527         * aclocal.m4: Re-generate.
6528         * gnulib/aclocal.m4: Re-generate.
6529         * gnulib/config.in: Re-generate.
6530         * gnulib/configure: Re-generate.
6531         * gnulib/import/Makefile.in: Re-generate.
6532
6533 2018-06-19  Pedro Alves  <palves@redhat.com>
6534
6535         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
6536         (lookup_minimal_symbol_by_pc_section): ... here with
6537         gdb_assert_not_reached added.
6538
6539 2018-06-19  Pedro Alves  <palves@redhat.com>
6540
6541         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
6542         parameter with a block parameter.  Compare location's block symbol
6543         with the frame's block instead of addresses.
6544         (skip_inline_frames): Pass the current block instead of the
6545         frame's address.  Break out as soon as we determine the frame
6546         should not be skipped.
6547
6548 2018-06-18  Tom Tromey  <tom@tromey.com>
6549
6550         * solib-aix.c (solib_aix_get_section_offsets): Return
6551         unique_xmalloc_ptr.
6552         (solib_aix_solib_create_inferior_hook): Update.
6553
6554 2018-06-18  Tom Tromey  <tom@tromey.com>
6555
6556         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
6557
6558 2018-06-18  Tom Tromey  <tom@tromey.com>
6559
6560         * solib-frv.c (frv_relocate_main_executable): Use
6561         unique_xmalloc_ptr.
6562         * solib-dsbt.c (dsbt_relocate_main_executable): Use
6563         unique_xmalloc_ptr.
6564
6565 2018-06-18  Tom Tromey  <tom@tromey.com>
6566
6567         * objfiles.h (inhibit_section_map_updates): Update.
6568         (resume_section_map_updates, resume_section_map_updates_cleanup):
6569         Remove.
6570         * solib-svr4.c (svr4_handle_solib_event): Update.
6571         * objfiles.c (inhibit_section_map_updates): Return
6572         scoped_restore_tmpl<int>.
6573         (resume_section_map_updates, resume_section_map_updates_cleanup):
6574         Remove.
6575
6576 2018-06-18  Tom Tromey  <tom@tromey.com>
6577
6578         * valprint.h (read_string): Update.
6579         * valprint.c (read_string): Change type of "buffer".
6580         (val_print_string): Update.
6581         * python/py-value.c (valpy_string): Update.
6582         * language.h (struct language_defn) <la_get_string>: Change
6583         type of "buffer".
6584         (default_get_string, c_get_string): Update.
6585         * language.c (default_get_string): Change type of "buffer".
6586         * guile/scm-value.c (gdbscm_value_to_string): Update.
6587         * c-lang.c (c_get_string): Change type of "buffer".
6588
6589 2018-06-18  Tom Tromey  <tom@tromey.com>
6590
6591         * ser-mingw.c (struct pipe_state_destroyer): New.
6592         (pipe_state_up): New typedef.
6593         (cleanup_pipe_state): Remove.
6594         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
6595
6596 2018-06-18  Tom Tromey  <tom@tromey.com>
6597
6598         * rust-lang.h (rust_yyerror): Don't declare.
6599         * rust-lang.c (rust_language_defn): Update.
6600         * rust-exp.y (yyerror): Now static.
6601         * parse.c (parse_exp_in_context_1): Update.
6602         * p-lang.h (p_yyerror): Don't declare.
6603         * p-lang.c (p_language_defn): Update.
6604         * p-exp.y (yyerror): Now static.
6605         * opencl-lang.c (opencl_language_defn): Update.
6606         * objc-lang.c (objc_language_defn): Update.
6607         * m2-lang.h (m2_yyerror): Don't declare.
6608         * m2-lang.c (m2_language_defn): Update.
6609         * m2-exp.y (yyerror): Now static.
6610         * language.h (struct language_defn) <la_error>: Remove.
6611         * language.c (unk_lang_error): Remove.
6612         (unknown_language_defn, auto_language_defn): Remove.
6613         * go-lang.h (go_yyerror): Don't declare.
6614         * go-lang.c (go_language_defn): Update.
6615         * go-exp.y (yyerror): Now static.
6616         * f-lang.h (f_yyerror): Don't declare.
6617         * f-lang.c (f_language_defn): Update.
6618         * f-exp.y (yyerror): Now static.
6619         * d-lang.h (d_yyerror): Don't declare.
6620         * d-lang.c (d_language_defn): Update.
6621         * d-exp.y (yyerror): Now static.
6622         * c-lang.h (c_yyerror): Don't declare.
6623         * c-lang.c (c_language_defn, cplus_language_defn)
6624         (asm_language_defn, minimal_language_defn): Update.
6625         * c-exp.y (yyerror): Now static.
6626         * ada-lang.h (ada_yyerror): Don't declare.
6627         * ada-lang.c (ada_language_defn): Update.
6628         * ada-exp.y (yyerror): Now static.
6629
6630 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6631
6632         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
6633         (store_sveregs_to_thread): Likewise.
6634         (aarch64_linux_fetch_inferior_registers): Check for SVE.
6635         (aarch64_linux_store_inferior_registers): Likewise.
6636         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
6637         function.
6638         (aarch64_sve_regs_copy_to_regcache): Likewise.
6639         (aarch64_sve_regs_copy_from_regcache): Likewise.
6640         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
6641         declaration.
6642         (aarch64_sve_regs_copy_to_regcache): Likewise.
6643         (aarch64_sve_regs_copy_from_regcache): Likewise.
6644         (sve_context): Structure from Linux headers.
6645         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
6646         (SVE_SIG_ZREG_SIZE): Likewise.
6647         (SVE_SIG_PREG_SIZE): Likewise.
6648         (SVE_SIG_FFR_SIZE): Likewise.
6649         (SVE_SIG_REGS_OFFSET): Likewise.
6650         (SVE_SIG_ZREGS_OFFSET): Likewise.
6651         (SVE_SIG_ZREG_OFFSET): Likewise.
6652         (SVE_SIG_ZREGS_SIZE): Likewise.
6653         (SVE_SIG_PREGS_OFFSET): Likewise.
6654         (SVE_SIG_PREG_OFFSET): Likewise.
6655         (SVE_SIG_PREGS_SIZE): Likewise.
6656         (SVE_SIG_FFR_OFFSET): Likewise.
6657         (SVE_SIG_REGS_SIZE): Likewise.
6658         (SVE_SIG_CONTEXT_SIZE): Likewise.
6659         (SVE_PT_REGS_MASK): Likewise.
6660         (SVE_PT_REGS_FPSIMD): Likewise.
6661         (SVE_PT_REGS_SVE): Likewise.
6662         (SVE_PT_VL_INHERIT): Likewise.
6663         (SVE_PT_VL_ONEXEC): Likewise.
6664         (SVE_PT_REGS_OFFSET): Likewise.
6665         (SVE_PT_FPSIMD_OFFSET): Likewise.
6666         (SVE_PT_FPSIMD_SIZE): Likewise.
6667         (SVE_PT_SVE_ZREG_SIZE): Likewise.
6668         (SVE_PT_SVE_PREG_SIZE): Likewise.
6669         (SVE_PT_SVE_FFR_SIZE): Likewise.
6670         (SVE_PT_SVE_FPSR_SIZE): Likewise.
6671         (SVE_PT_SVE_FPCR_SIZE): Likewise.
6672         (__SVE_SIG_TO_PT): Likewise.
6673         (SVE_PT_SVE_OFFSET): Likewise.
6674         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
6675         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
6676         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
6677         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
6678         (SVE_PT_SVE_PREG_OFFSET): Likewise.
6679         (SVE_PT_SVE_PREGS_SIZE): Likewise.
6680         (SVE_PT_SVE_FFR_OFFSET): Likewise.
6681         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
6682         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
6683         (SVE_PT_SVE_SIZE): Likewise.
6684         (SVE_PT_SIZE): Likewise.
6685         (HAS_SVE_STATE): New define.
6686
6687 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
6688
6689         * nat/aarch64-sve-linux-sigcontext.h: New file.
6690         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
6691         new files.
6692         (SVE_VQ_MIN): Likewise.
6693         (SVE_VQ_MAX): Likewise.
6694         (SVE_VL_MIN): Likewise.
6695         (SVE_VL_MAX): Likewise.
6696         (SVE_NUM_ZREGS): Likewise.
6697         (SVE_NUM_PREGS): Likewise.
6698         (sve_vl_valid): Likewise.
6699         (struct user_sve_header): Likewise.
6700
6701 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
6702             Richard Bunt <Richard.Bunt@arm.com>
6703
6704         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
6705         was requested by GDB.
6706
6707 2018-06-15  Tom de Vries  <tdevries@suse.de>
6708
6709         * MAINTAINERS (Write After Approval): Add Tom de Vries.
6710
6711 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
6712
6713         * gnulib/update-gnulib.sh: Print expected versions of
6714         autoconf/aclocal.
6715
6716 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
6717
6718         * arch-utils.c (default_type_align): Use type_length_units.
6719         * gdbtypes.c (type_align): Use type_length_units.
6720
6721 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6722
6723         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
6724         of 'define' command.
6725
6726 2018-06-14  Tom de Vries  <tdevries@suse.de>
6727
6728         PR cli/22573
6729         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
6730         get_no_prettyformat_print_options.
6731
6732 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
6733
6734         * sparc-nat.h: Include target.h.
6735         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
6736         <fetch_registers>: Remove this argument in function call.
6737         <store_registers>: Remove this argument in function call, remove
6738         extra semicolon.
6739         <low_forget_process>: Call sparc64_forget_process instead of
6740         sparc_forget_process.
6741
6742 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
6743
6744         * procfs.c (_initialize_procfs): Use add_inf_child_target.
6745         (procfs_target::make_corefile_notes): Adjust to new
6746         target_read_alloc return type.
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 (fetch_inferior_event): If GDB is not proceeding then
6753         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
6754         Move should_notify_stop local into more inner scope.
6755
6756 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6757             Stephen Roberts  <stephen.roberts@arm.com>
6758
6759         PR gdb/22882
6760         * infrun.c (resume_1): Add call to mark_async_event_handler.
6761
6762 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
6763
6764         * infrun.c (do_target_wait): Change old version of $pc printed.
6765
6766 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
6767
6768         * dwarf2read.c (read_index_from_section): Rename to...
6769         (read_gdb_index_from_section): ... this, update all callers.
6770         (dwarf2_read_index): Rename to...
6771         (dwarf2_read_gdb_index): ... this, update all callers.
6772
6773 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
6774
6775         * gdb/hppa-linux-nat.c
6776         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
6777         hppa_linux_nat_target::fetch_registers.
6778
6779 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6780
6781         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
6782         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
6783         (AARCH64_DWARF_SVE_FFR): Likewise.
6784         (AARCH64_DWARF_SVE_P0): Likewise.
6785         (AARCH64_DWARF_SVE_Z0): Likewise.
6786
6787 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6788
6789         * common/common-regcache.h (raw_compare): New function.
6790         * regcache.c (regcache::raw_compare): Likewise.
6791         * regcache.h (regcache::raw_compare): New declaration.
6792
6793 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
6794
6795         * common/common-regcache.h (reg_buffer_common): New structure.
6796         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
6797         (reg_buffer::raw_supply): Likewise.
6798         (reg_buffer::raw_supply_integer): Likewise.
6799         (reg_buffer::raw_supply_zeroed): Likewise.
6800         (reg_buffer::raw_collect): Likewise.
6801         (reg_buffer::raw_collect_integer): Likewise.
6802         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
6803         (reg_buffer::raw_supply): Likewise.
6804         (reg_buffer::raw_supply_integer): Likewise.
6805         (reg_buffer::raw_supply_zeroed): Likewise.
6806         (reg_buffer::raw_collect): Likewise.
6807         (reg_buffer::raw_collect_integer): Likewise.
6808
6809 2018-06-10  Tom Tromey  <tom@tromey.com>
6810
6811         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
6812         (class remote_state) <stop_reply_queue>: Now std::vector.
6813         (remote_state::~remote_state)
6814         (remote_target::stop_reply_queue_length): Update.
6815         (struct queue_iter_param, remove_child_of_pending_fork)
6816         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
6817         (check_pending_event_prevents_wildcard_vcont_callback)
6818         (remove_stop_reply_for_inferior)
6819         (remove_stop_reply_of_remote_state)
6820         (remote_notif_remove_once_on_match)
6821         (stop_reply_match_ptid_and_ws)
6822         (remote_kill_child_of_pending_fork): Remove.
6823         (remote_target::remove_new_fork_children)
6824         (remote_target::check_pending_events_prevent_wildcard_vcont)
6825         (remote_target::discard_pending_stop_replies)
6826         (remote_target::discard_pending_stop_replies_in_queue)
6827         (remote_target::remote_notif_remove_queued_reply)
6828         (remote_target::queued_stop_reply)
6829         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
6830         (remote_target::wait, remote_target::kill_new_fork_children)
6831         (remote_target::async): Update.
6832
6833 2018-06-10  Tom Tromey  <tom@tromey.com>
6834
6835         * record-full.c (record_full_arch_list_cleanups): Remove.
6836         (record_full_message): Use try/catch.
6837         (record_full_wait_cleanups): Remove.
6838         (record_full_wait_1): Use try/catch.
6839         (record_full_restore): Likewise.
6840
6841 2018-06-10  Tom Tromey  <tom@tromey.com>
6842
6843         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
6844         declare VEC.  Add constructor.
6845         <in_target_beneath>: Now bool.
6846         (record_full_breakpoints): Now a std::vector, static.
6847         (record_full_sync_record_breakpoints)
6848         (record_full_init_record_breakpoints)
6849         (record_full_target::insert_breakpoint)
6850         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
6851
6852 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
6853
6854         * dwarf2read.c (process_cu_includes): Remove struct keyword.
6855         * serial.c (serial_interface_lookup): Remove struct keyword.
6856
6857 2018-06-10  Tom Tromey  <tom@tromey.com>
6858
6859         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
6860         method.
6861         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
6862         a method.
6863         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
6864         method.
6865         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
6866         "beneath" as a method.
6867         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
6868         Use "beneath" as a method.
6869
6870 2018-06-10  Tom Tromey  <tom@tromey.com>
6871
6872         * tracefile.c (struct trace_file_writer_deleter): New.
6873         <operator()>: Rename from trace_file_writer_xfree.
6874         (trace_file_writer_up): New typedef.
6875         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
6876
6877 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6878
6879         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
6880         <m_registers, m_register_status>: Change type to
6881         std::unique_ptr.
6882         * regcache.c (reg_buffer::reg_buffer): Use new instead of
6883         XCNEWVEC.
6884
6885 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
6886
6887         * common/common-regcache.h (enum register_status): Add
6888         underlying type "signed char".
6889         * regcache.h (reg_buffer) <m_register_status>: Change type to
6890         register_status *.
6891         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
6892         register_status instead of signed char.
6893         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
6894         (reg_buffer::get_register_status): Remove cast.
6895         (readable_regcache::raw_read): Remove cast.
6896         (readable_regcache::cooked_read): Remove cast.
6897
6898 2018-06-09  Tom Tromey  <tom@tromey.com>
6899
6900         * source.c (reverse_search_command, forward_search_command): Use
6901         scoped_fd.
6902
6903 2018-06-09  Tom Tromey  <tom@tromey.com>
6904
6905         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
6906         (serial_ops_list): Now static, std::vector.
6907         (serial_interface_lookup, serial_add_interface): Update.
6908
6909 2018-06-09  Tom Tromey  <tom@tromey.com>
6910
6911         * dwarf2read.c (process_cu_includes): Update.
6912         (process_full_comp_unit): Update.
6913         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
6914         std::vector.
6915
6916 2018-06-08  Paul Koning  <paul_koning@dell.com>
6917
6918         PR gdb/23252
6919
6920         * python/python.c (do_start_initialization):
6921         Avoid call to internal Python API.
6922         (init__gdb_module): New function.
6923
6924 2018-06-08  Gary Benson <gbenson@redhat.com>
6925
6926         * linux-thread-db.c (valprint.h): New include.
6927         (struct check_thread_db_info): New structure.
6928         (check_thread_db_on_load, tdb_testinfo): New static globals.
6929         (check_thread_db, check_thread_db_callback): New functions.
6930         (try_thread_db_load_1): Run integrity checks if requested.
6931         (maintenance_check_libthread_db): New function.
6932         (_initialize_thread_db): Register "maint check libthread-db"
6933         and "maint set/show check-libthread-db".
6934         * NEWS: Mention the above new commands.
6935
6936 2018-06-08  Tom Tromey  <tom@tromey.com>
6937
6938         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
6939         now a method.
6940
6941 2018-06-08  Tom Tromey  <tom@tromey.com>
6942
6943         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
6944
6945 2018-06-08  Tom Tromey  <tom@tromey.com>
6946
6947         * common/btrace-common.h (struct btrace_data): Add constructor,
6948         destructor, move assignment operator.
6949         <empty, clear, fini>: New methods.
6950         <format>: Initialize.
6951         (btrace_data_init, btrace_data_fini, btrace_data_clear)
6952         (btrace_data_empty): Don't declare.
6953         * common/btrace-common.c (btrace_data_init): Remove.
6954         (btrace_data::fini): Rename from btrace_data_fini.
6955         (btrace_data::empty): Rename from btrace_data_empty.
6956         (btrace_data::clear): Rename from btrace_data_clear.  Return
6957         bool.
6958         * btrace.h (make_cleanup_btrace_data): Don't declare.
6959         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
6960         (parse_xml_btrace): Update.
6961         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
6962         (maint_btrace_clear_packet_history_cmd): Update.
6963
6964 2018-06-07  Pedro Alves  <palves@redhat.com>
6965
6966         * target.h (target_ops) <beneath>: Now a method.  All references
6967         updated.
6968         (class target_stack): New.
6969         * target.c (g_target_stack): New.
6970         (g_current_top_target): Delete.
6971         (current_top_target): Get the top target out of g_target_stack.
6972         (target_stack::push, target_stack::unpush): New.
6973         (push_target, unpush_target): Reimplement.
6974         (target_is_pushed): Reimplement in terms of g_target_stack.
6975         (target_ops::beneath, target_stack::find_beneath): New.
6976
6977 2018-06-07  Pedro Alves  <palves@redhat.com>
6978
6979         * target.h (find_target_beneath): Delete declaration.
6980         * target.c (find_target_beneath): Delete definition.
6981         * aix-thread.c: All callers of find_target_beneath adjusted to
6982         call target_ops::beneath instead.
6983         * bsd-uthread.c: Likewise.
6984         * linux-thread-db.c: Likewise.
6985         * ravenscar-thread.c: Likewise.
6986         * sol-thread.c: Likewise.
6987         * spu-multiarch.c: Likewise.
6988
6989 2018-06-07  Pedro Alves  <palves@redhat.com>
6990
6991         * target.h (target_ops) <beneath>: Now a method.  All references
6992         updated.
6993         (target_ops) <m_beneath>: New.
6994         * target.c (target_ops::beneath): New.
6995         * corelow.c: Adjust all references to target_ops::beneath.
6996         * linux-thread-db.c: Likewise.
6997         * make-target-delegates: Likewise.
6998         * record-btrace.c: Likewise.
6999         * record-full.c: Likewise.
7000         * remote.c: Likewise.
7001         * target.c: Likewise.
7002         * target-delegates.c: Regenerate.
7003
7004 2018-06-07  Pedro Alves  <palves@redhat.com>
7005
7006         * target.h (target_stack): Delete.
7007         (current_top_target): Declare function.
7008         * target.c (target_stack): Delete.
7009         (g_current_top_target): New.
7010         (current_top_target): New function.
7011         * auxv.c: Use current_top_target instead of target_stack
7012         throughout.
7013         * avr-tdep.c: Likewise.
7014         * breakpoint.c: Likewise.
7015         * corefile.c: Likewise.
7016         * elfread.c: Likewise.
7017         * eval.c: Likewise.
7018         * exceptions.c: Likewise.
7019         * frame.c: Likewise.
7020         * gdbarch-selftests.c: Likewise.
7021         * gnu-v3-abi.c: Likewise.
7022         * ia64-tdep.c: Likewise.
7023         * ia64-vms-tdep.c: Likewise.
7024         * infcall.c: Likewise.
7025         * infcmd.c: Likewise.
7026         * infrun.c: Likewise.
7027         * linespec.c: Likewise.
7028         * linux-tdep.c: Likewise.
7029         * minsyms.c: Likewise.
7030         * ppc-linux-nat.c: Likewise.
7031         * ppc-linux-tdep.c: Likewise.
7032         * procfs.c: Likewise.
7033         * regcache.c: Likewise.
7034         * remote.c: Likewise.
7035         * rs6000-tdep.c: Likewise.
7036         * s390-linux-nat.c: Likewise.
7037         * s390-tdep.c: Likewise.
7038         * solib-aix.c: Likewise.
7039         * solib-darwin.c: Likewise.
7040         * solib-dsbt.c: Likewise.
7041         * solib-spu.c: Likewise.
7042         * solib-svr4.c: Likewise.
7043         * solib-target.c: Likewise.
7044         * sparc-tdep.c: Likewise.
7045         * sparc64-tdep.c: Likewise.
7046         * spu-tdep.c: Likewise.
7047         * symfile.c: Likewise.
7048         * symtab.c: Likewise.
7049         * target-descriptions.c: Likewise.
7050         * target-memory.c: Likewise.
7051         * target.c: Likewise.
7052         * target.h: Likewise.
7053         * tracefile-tfile.c: Likewise.
7054         * tracepoint.c: Likewise.
7055         * valops.c: Likewise.
7056         * valprint.c: Likewise.
7057         * value.c: Likewise.
7058         * windows-tdep.c: Likewise.
7059         * mi/mi-main.c: Likewise.
7060
7061 2018-06-07  Tom Tromey  <tom@tromey.com>
7062
7063         * valprint.h (build_address_symbolic): Declare.
7064         * printcmd.c (print_address_symbolic): Update.
7065         (build_address_symbolic): Change "name" and "filename" to
7066         std::string.
7067         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
7068         Update.
7069         * defs.h (build_address_symbolic): Remove declaration.
7070
7071 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
7072
7073         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
7074         (aarch64_vnv_type): Add function.
7075         (aarch64_pseudo_register_name): Add V regs for SVE.
7076         (aarch64_pseudo_register_type): Likewise.
7077         (aarch64_pseudo_register_reggroup_p): Likewise.
7078         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
7079         (aarch64_pseudo_read_value): Add V regs for SVE.
7080         (aarch64_pseudo_write_2): Use V0 offset for SVE
7081         (aarch64_pseudo_write): Add V regs for SVE.
7082         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
7083
7084 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
7085
7086         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
7087         (sve_vl_from_vq): Likewise.
7088
7089 2018-06-05  Tom Tromey  <tom@tromey.com>
7090
7091         * cli/cli-cmds.c (show_version): Update.
7092         * top.c (print_gdb_version): Add "interactive" parameter.
7093         Update.
7094         * main.c (captured_main_1): Update.
7095         * top.h (print_gdb_version): Add "interactive" parameter and a
7096         comment.
7097
7098 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
7099
7100         * common/enum-flags.h: Add trailing semicolon to example in
7101         comment.
7102
7103 2018-06-05  Tom Tromey  <tom@tromey.com>
7104
7105         PR cli/12326:
7106         * NEWS: Add entry about pager.
7107         * utils.c (pagination_disabled_for_command): New global.
7108         (prompt_for_continue): Allow "c" response to prompt.
7109         (reinitialize_more_filter): Clear
7110         pagination_disabled_for_command.
7111         (fputs_maybe_filtered): Check pagination_disabled_for_command.
7112
7113 2018-06-04  Tom Tromey  <tom@tromey.com>
7114
7115         * ada-lang.h (ada_lookup_symbol_list): Update.
7116         * ada-lang.c (resolve_subexp): Update.
7117         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
7118         parameter.
7119         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
7120         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
7121         results parameter to std::vector.
7122         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
7123         Update.
7124         * ada-exp.y (block_lookup): Update.
7125         (select_possible_type_sym): Change type of syms.  Remove nsyms
7126         parameter.
7127         (write_var_or_type, write_name_assoc): Update.
7128
7129 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
7130
7131         * windows-nat.c (windows_nat_target::xfer_partial): Return
7132         TARGET_XFER_E_IO if we need to delegate to the target beneath
7133         but BENEATH is NULL.
7134
7135 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
7136
7137         * Makefile.in (config.status): Add configure.nat as a
7138         dependency.
7139
7140 2018-06-04  Tom Tromey  <tom@tromey.com>
7141
7142         * cp-name-parser.y (cpname_state): Add method declarations.
7143         (HANDLE_QUAL): Update.
7144         (cpname_state::d_grab, cpname_state::fill_comp)
7145         (cpname_state::make_operator, cpname_state::make_dtor)
7146         (cpname_state::make_builtin_type, cpname_state::make_name)
7147         (cpname_state::d_qualify, cpname_state::d_int_type)
7148         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
7149         (%union): Move earlier.
7150
7151 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7152
7153         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
7154
7155 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7156
7157         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
7158         (aarch64_pseudo_write_1): Likewise.
7159         (aarch64_pseudo_read_value): Use helper.
7160         (aarch64_pseudo_write): Likewise.
7161
7162 2018-06-04  Pedro Alves  <palves@redhat.com>
7163
7164         * darwin-nat.c (darwin_ops): Delete.
7165         (darwin_attach_pid): Use get_native_target.
7166
7167 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7168
7169         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
7170         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
7171
7172 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7173
7174         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
7175         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
7176         (aarch64_gdbarch_init): Check for SVE.
7177         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
7178
7179 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
7180
7181         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
7182         * aarch64-tdep.h (aarch64_read_description): Likewise.
7183         * arch/aarch64.c (aarch64_create_target_description): Likewise.
7184         * arch/aarch64.h (aarch64_create_target_description): Likewise.
7185         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
7186         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
7187         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
7188
7189 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
7190
7191         * value.c (value_fetch_lazy_bitfield): New.
7192         (value_fetch_lazy_memory): New.
7193         (value_fetch_lazy_register): New.
7194         (value_fetch_lazy): Factor out to smaller functions.
7195
7196 2018-06-01  Tom Tromey  <tom@tromey.com>
7197
7198         * cp-name-parser.y (backslashable, represented): Now const.
7199
7200 2018-06-01  Tom Tromey  <tom@tromey.com>
7201
7202         * cp-name-parser.y: Include parser-defs.h.
7203         (parser_fprintf): Remove declaration.
7204
7205 2018-06-01  Tom Tromey  <tom@tromey.com>
7206
7207         * cp-name-parser.y: Use %pure-parser, %lex-param, and
7208         %parse-param.
7209         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
7210         (global_result): Remove globals.
7211         (struct cpname_state): New.
7212         (yyparse): Don't declare.
7213         (yylex, yyerror): Move declarations after %union.
7214         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
7215         (make_name): Add state parameter.
7216         Update all callers.
7217         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
7218         parameter.
7219         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
7220         Update.
7221         (yylex): Add lvalp, state parameters.
7222         (yyerror): Add state parameter.
7223         (cp_demangled_name_to_comp): Update.
7224
7225 2018-06-01  Tom Tromey  <tom@tromey.com>
7226
7227         * cp-name-parser.y (parser_fprintf): Declare.
7228         (GDB_YY_REMAP_PREFIX): Define.
7229         Include yy-remap.h.  Don't redefine yy* identifiers.
7230
7231 2018-06-01  Tom Tromey  <tom@tromey.com>
7232
7233         * python/py-type.c (typy_legacy_template_argument): Update.
7234         * cp-support.h (cp_demangled_name_to_comp): Update.
7235         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
7236         parameter to be a "std::string *".
7237         (main): Update.
7238
7239 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
7240
7241         * ada-lex.l: Include "diagnostics.h" instead of
7242         "common/diagnostics.h".
7243         * unittests/environ-selftests.c: Likewise.
7244         * common/diagnostics.h: Moved to ../include.
7245
7246 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
7247
7248         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
7249         to language_mode_manual while calling breakpoint_re_set_one.
7250
7251 2018-06-01  Tom Tromey  <tom@tromey.com>
7252
7253         * valops.c (value_cast_structs, destructor_name_p): Update.
7254         * symtab.c (gdb_mangle_name): Update.
7255         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
7256         Update.
7257         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
7258         (pascal_object_print_value_fields, pascal_object_print_value):
7259         Update.
7260         * p-typeprint.c (pascal_type_print_derivation_info): Update.
7261         * linespec.c (find_methods): Update.
7262         * gdbtypes.h (type_name_no_tag): Remove.
7263         (type_name_or_error): Rename from type_name_no_tag_or_error.
7264         * gdbtypes.c (type_name_no_tag): Remove.
7265         (type_name_or_error): Rename from type_name_no_tag_or_error.
7266         (lookup_struct_elt_type, check_typedef): Update.
7267         * expprint.c (print_subexp_standard): Update.
7268         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
7269         * d-namespace.c (d_lookup_nested_symbol): Update.
7270         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
7271         (cp_print_class_member): Update.
7272         * cp-namespace.c (cp_lookup_nested_symbol): Update.
7273         * completer.c (add_struct_fields): Update.
7274         * c-typeprint.c (cp_type_print_derivation_info)
7275         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
7276         Update.
7277         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
7278         (ada_prefer_type, ada_is_exception_sym): Update.
7279
7280 2018-06-01  Tom Tromey  <tom@tromey.com>
7281
7282         * valops.c (enum_constant_from_type, value_namespace_elt)
7283         (value_maybe_namespace_elt): Update.
7284         * valarith.c (find_size_for_pointer_math): Update.
7285         * target-descriptions.c (make_gdb_type): Update.
7286         * symmisc.c (print_symbol): Update.
7287         * stabsread.c (define_symbol, read_type)
7288         (complain_about_struct_wipeout, add_undefined_type)
7289         (cleanup_undefined_types_1): Update.
7290         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
7291         (rust_range_type_p, val_print_struct, rust_print_struct_def)
7292         (rust_internal_print_type, rust_composite_type)
7293         (rust_evaluate_funcall, rust_evaluate_subexp)
7294         (rust_inclusive_range_type_p): Update.
7295         * python/py-type.c (typy_get_tag): Update.
7296         * p-typeprint.c (pascal_type_print_base): Update.
7297         * mdebugread.c (parse_symbol, parse_type): Update.
7298         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
7299         Update.
7300         * guile/scm-type.c (gdbscm_type_tag): Update.
7301         * go-lang.c (sixg_string_p): Update.
7302         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
7303         Update.
7304         * gdbtypes.h (struct main_type) <tag_name>: Remove.
7305         (TYPE_TAG_NAME): Remove.
7306         * gdbtypes.c (type_name_no_tag): Simplify.
7307         (check_typedef, check_types_equal, recursive_dump_type)
7308         (copy_type_recursive, arch_composite_type): Update.
7309         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
7310         in summary mode when needed.
7311         * eval.c (evaluate_funcall): Update.
7312         * dwarf2read.c (fixup_go_packaging, read_structure_type)
7313         (process_structure_scope, read_enumeration_type)
7314         (read_namespace_type, read_module_type, determine_prefix): Update.
7315         * cp-support.c (inspect_type): Update.
7316         * coffread.c (process_coff_symbol, decode_base_type): Update.
7317         * c-varobj.c (c_is_path_expr_parent): Update.
7318         * c-typeprint.c (c_type_print_base_struct_union): Update.
7319         (c_type_print_base_1): Update.  Print struct/class/union/enum in
7320         summary when using C language.
7321         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
7322         (gen_maybe_namespace_elt): Update.
7323         * ada-lang.c (ada_type_name): Simplify.
7324         (empty_record, ada_template_to_fixed_record_type_1)
7325         (template_to_static_fixed_type)
7326         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
7327
7328 2018-06-01  Tom Tromey  <tom@tromey.com>
7329
7330         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
7331         c_print_type.
7332         * c-typeprint.c (c_print_type_1): Add "language" parameter.
7333         (c_print_type): Update.
7334         (c_print_type): New overload.
7335         (c_type_print_varspec_prefix, c_type_print_args)
7336         (c_type_print_varspec_suffix, c_print_type_no_offsets)
7337         (c_type_print_base_struct_union, c_type_print_base_1)
7338         (cp_type_print_method_args): Add "language" parameter.
7339         (c_type_print_base): Update.
7340         * c-lang.h (c_print_type): Add new overload.
7341
7342 2018-06-01  Tom Tromey  <tom@tromey.com>
7343
7344         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
7345         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
7346
7347 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
7348
7349         * aarch64-tdep.c (aarch64_sve_register_names): New const
7350         var.
7351         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
7352         (AARCH64_SVE_Z_REGS_NUM): New define.
7353         (AARCH64_SVE_P_REGS_NUM): Likewise.
7354         (AARCH64_SVE_NUM_REGS): Likewise.
7355
7356 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
7357
7358         * nat/linux-ptrace.h [__alpha__]
7359         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
7360         definitions.
7361
7362 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
7363
7364         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
7365         the endianness selected.
7366         * NEWS: Document `set endian auto' mode operation update.
7367
7368 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7369
7370         * Makefile.in: Add new header.
7371         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
7372         (sve_vl_from_vg): Likewise.
7373         (sve_vq_from_vl): Likewise.
7374         (sve_vl_from_vq): Likewise.
7375         (sve_vq_from_vg): Likewise.
7376         (sve_vg_from_vq): Likewise.
7377         * configure.nat: Add new c file.
7378         * nat/aarch64-sve-linux-ptrace.c: New file.
7379         * nat/aarch64-sve-linux-ptrace.h: New file.
7380
7381 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
7382
7383         * aarch64-linux-nat.c (aarch64_linux_read_description):
7384         Add parmeter zero.
7385         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
7386         Likewise.
7387         * aarch64-tdep.c (tdesc_aarch64_list): Add.
7388         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
7389         (aarch64_gdbarch_init): Add parmeter zero.
7390         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
7391         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
7392         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
7393         parmeter.
7394         * doc/gdb.texinfo: Describe SVE feature
7395         * features/aarch64-sve.c: New file.
7396
7397 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
7398
7399         PR gdb/23210
7400         * gdbarch.sh (significant_addr_bit): Default to zero when
7401         not set by target architecture.
7402         * gdbarch.c: Re-generated.
7403         * utils.c (address_significant): Update.
7404
7405 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
7406
7407         * stack.c (func_command): Remove trailing newline in call to error.
7408
7409 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7410
7411         * regcache.h (regcache_raw_collect): Remove, update callers to
7412         use regcache::raw_collect.
7413         * regcache.c (regcache_raw_collect): Remove.
7414
7415 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7416
7417         * regcache.h (regcache_raw_supply): Remove, update callers to
7418         use detached_regcache::raw_supply.
7419         * regcache.c (regcache_raw_supply): Remove.
7420
7421 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7422
7423         * regcache.h (regcache_cooked_write_part): Remove, update
7424         callers to use regcache::cooked_write_part.
7425         * regcache.c (regcache_cooked_write_part): Remove.
7426
7427 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7428
7429         * regcache.h (regcache_cooked_read_part): Remove, update callers
7430         to use readable_regcache::cooked_read_part.
7431         * regcache.c (regcache_cooked_read_part): Remove.
7432
7433 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7434
7435         * regcache.h (regcache_cooked_read_value): Remove, update
7436         callers to use readable_regcache::cooked_read_value.
7437         * regcache.c (regcache_cooked_read_value): Remove.
7438
7439 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7440
7441         * regcache.h (regcache_cooked_write): Remove, update callers to
7442         use regcache::cooked_write.
7443         * regcache.c (regcache_cooked_write): Remove.
7444
7445 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7446
7447         * regcache.h (regcache_invalidate): Remove, update callers to
7448         use detached_regcache::invalidate instead.
7449         * regcache.c (regcache_invalidate): Remove.
7450
7451 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7452
7453         * regcache.h (regcache_raw_write_part): Remove, update callers
7454         to use regcache::raw_write_part instead.
7455         * regcache.c (regcache_raw_write_part): Remove.
7456
7457 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7458
7459         * regcache.h (regcache_raw_read_part): Remove, update callers to
7460         use readable_regcache::raw_read_part instead.
7461         * regcache.c (regcache_raw_read_part): Remove.
7462
7463 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7464
7465         * regcache.h (regcache_cooked_read): Remove, update callers to
7466         use readable_regcache::cooked_read instead.
7467         * regcache.c (regcache_cooked_read): Remove.
7468
7469 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7470
7471         * regcache.h (regcache_raw_write): Remove, update callers to use
7472         regcache::raw_write instead.
7473         * regcache.c (regcache_raw_write): Remove.
7474
7475 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7476
7477         * regcache.h (regcache_raw_read): Remove, update callers to use
7478         readable_regcache::raw_read instead.
7479         * regcache.c (regcache_raw_read): Remove.
7480
7481 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7482
7483         * regcache.h (regcache_raw_update): Remove, update callers to
7484         use readable_regcache::raw_update instead.
7485         * regcache.c (regcache_raw_update): Remove.
7486
7487 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7488
7489         * regcache.h (regcache_register_status): Remove, update callers
7490         to use reg_buffer::get_register_status directly instead.
7491         * regcache.c (regcache_register_status): Remove.
7492
7493 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7494
7495         * regcache.h (regcache_get_ptid): Remove, update all callers to
7496         call regcache::ptid instead.
7497         * regcache.c (regcache_get_ptid): Remove.
7498
7499 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
7500
7501         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
7502
7503 2018-05-30  Pedro Alves  <palves@redhat.com>
7504
7505         * common/common-exceptions.h (exception_rethrow): Use
7506         ATTRIBUTE_NORETURN.
7507
7508 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
7509
7510         * breakpoint.c (print_solib_event, check_status_catch_solib):
7511         Remove struct keyword in range-based for loops.
7512         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
7513         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
7514         Likewise.
7515         * linespec.c (find_superclass_methods, search_minsyms_for_name):
7516         Likewise.
7517         * symfile.c (addr_info_make_relative): Likewise.
7518         * thread.c (value_in_thread_stack_temporaries): Likewise.
7519
7520 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
7521
7522         PR gdb/16841
7523         * valops.c (value_struct_elt_for_reference): Call check_typedef on
7524         aggregate type to get its real type before accessing it.
7525
7526 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
7527
7528         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
7529         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
7530         * coff-pe-read.c (add_pe_forwarded_sym): Replace
7531         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
7532         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
7533         * jit.c (jit_breakpoint_re_set_internal): Likewise.
7534         * printcmd.c (info_address_command): Likewise.
7535
7536 2018-05-29  Tom Tromey  <tom@tromey.com>
7537
7538         * windows-nat.c (handle_exception): Update fall-through comment.
7539
7540 2018-05-29  Tom Tromey  <tom@tromey.com>
7541
7542         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
7543         (struct program_space) <added_solibs>: Now a std::vector.
7544         * breakpoint.c (print_solib_event): Update.
7545         (check_status_catch_solib): Update.
7546         * progspace.c (clear_program_space_solib_cache): Update.
7547         * solib.c (update_solib_list): Update.
7548
7549 2018-05-29  Tom Tromey  <tom@tromey.com>
7550
7551         * python/py-type.c (typy_richcompare): Update.
7552         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
7553         * gdbtypes.h (types_deeply_equal): Return bool.
7554         (types_equal): Likewise.
7555         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
7556         declare VEC.
7557         (check_types_equal): Change worklist to std::vector.  Return
7558         bool.
7559         (struct type_equality_entry): Add constructor.
7560         (compare_maybe_null_strings): Return bool.
7561         (check_types_worklist): Return bool.  Change worklist to
7562         std::vector.
7563         (types_deeply_equal): Use std::vector.
7564         (types_equal): Return bool.
7565         (compare_maybe_null_strings): Simplify.
7566
7567 2018-05-29  Tom Tromey  <tom@tromey.com>
7568
7569         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
7570
7571 2018-05-29  Tom Tromey  <tom@tromey.com>
7572
7573         * objc-lang.h: Don't include cp-support.h.
7574         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
7575         declare VEC.
7576
7577 2018-05-27  Tom Tromey  <tom@tromey.com>
7578
7579         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
7580
7581 2018-05-25  Tom Tromey  <tom@tromey.com>
7582
7583         * value.c (value::location): Initialize.
7584
7585 2018-05-25  Tom Tromey  <tom@tromey.com>
7586
7587         * dbxread.c (init_bincl_list): Remove.
7588         (bincl_list): Now a std::vector.
7589         (bincls_allocated, next_bincl): Remove.
7590         (free_bincl_list, do_free_bincl_list_cleanup)
7591         (make_cleanup_free_bincl_list): Remove.
7592         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
7593         unique_xmalloc_ptr.
7594         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
7595         (struct header_file_location): Add constructor.
7596         (add_bincl_to_list): Remove.
7597
7598 2018-05-25  Tom Tromey  <tom@tromey.com>
7599
7600         * tui/tui.c (tui_enable): Update.
7601         * mi/mi-interp.c (mi_interp::init): Update.
7602         * interps.h (class interp) <name>: New method.
7603         <m_name>: Rename from name.
7604         (~scoped_restore_interp): Update.
7605         * interps.c (interp::interp): Update.
7606         (interp_add, interp_set, interp_lookup_existing)
7607         (current_interp_named_p): Update.
7608
7609 2018-05-25  Tom Tromey  <tom@tromey.com>
7610
7611         * interps.c (interp_name): Remove.
7612         * mi/mi-interp.c (mi_interp::init): Update.
7613         * interps.h (interp_name): Remove.
7614         (~scoped_restore_interp): Update.
7615         * tui/tui.c (tui_enable): Update.
7616
7617 2018-05-25  Tom Tromey  <tom@tromey.com>
7618
7619         * utils.c (fputs_maybe_filtered): Update.
7620         * linespec.c (decode_line_full): Update.
7621         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
7622         (mi_print_breakpoint_for_event, mi_solib_loaded)
7623         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
7624         (mi_user_selected_context_changed): Update.
7625         * mi/mi-main.c (mi_execute_command): Update.
7626         * cli/cli-script.c (execute_control_command): Update.
7627         * python/python.c (execute_gdb_command): Update.
7628         * solib.c (info_sharedlibrary_command): Update.
7629         * interps.c (interp_ui_out): Remove.
7630         * interps.h (interp_ui_out): Remove.
7631
7632 2018-05-25  Tom Tromey  <tom@tromey.com>
7633
7634         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
7635         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
7636         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
7637
7638 2018-05-25  Tom Tromey  <tom@tromey.com>
7639
7640         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
7641         * interps.c (interp_exec): Use scoped_restore.
7642
7643 2018-05-25  Tom Tromey  <tom@tromey.com>
7644
7645         * remote.c (remote_target::remote_file_get): Use
7646         gdb::byte_vector.
7647         (remote_target::remote_file_put): Likewise.
7648
7649 2018-05-25  Tom Tromey  <tom@tromey.com>
7650
7651         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
7652         a std::string.
7653         (get_pe_section_index, add_pe_exported_sym): Update.
7654         (read_pe_exported_syms): Use gdb::def_vector.
7655
7656 2018-05-25  Tom Tromey  <tom@tromey.com>
7657
7658         * frame.c (remove_prev_frame): Remove.
7659         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
7660
7661 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
7662
7663         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
7664         Remove prototypes.
7665         * mips-linux-nat.c (supply_fpregset): Always call
7666         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
7667         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
7668         `mips_fill_fpregset'.
7669         * mips-linux-tdep.c (mips_supply_fpregset)
7670         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
7671         (mips_fill_fpregset_wrapper): Remove functions.
7672         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
7673         (mips_linux_fpregset): Remove variable.
7674         (mips_linux_iterate_over_regset_sections): Use
7675         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
7676         (mips_linux_o32_sigframe_init): Remove comment.
7677
7678 2018-05-25  Pedro Alves  <palves@redhat.com>
7679
7680         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
7681         (struct readahead_cache, struct packet_reg, struct
7682         remote_arch_state, class remote_state): Move higher up in the
7683         file.
7684         (remote_target::m_remote_state): Now an object instead of a pointer.
7685         (remote_target::get_remote_state): Adjust.
7686
7687 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7688
7689         * stack.c (select_and_print_frame): Delete.
7690         (struct function_bounds): Move struct within function.
7691         (func_command): Most content moved into new function
7692         find_frame_for_function, use new function, print result, add
7693         function comment.
7694         (find_frame_for_function): New function, now returns a result.
7695
7696 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7697
7698         * stack.c (iterate_over_block_arg_vars): Fix comment.
7699         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
7700
7701 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
7702
7703         PR gdb/23203
7704         * frame.c
7705         (scoped_restore_selected_frame::scoped_restore_selected_frame):
7706         Define.
7707         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
7708         Define.
7709         * frame.h (class scoped_restore_selected_frame): New class.
7710         * stack.c (print_frame_local_vars): Remove catching and rethrowing
7711         of any exception, use scoped_restore_selected_frame to restore the
7712         frame instead.
7713
7714 2018-05-24  Pedro Alves  <palves@redhat.com>
7715
7716         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
7717         override.
7718
7719 2018-05-23  Tom Tromey  <tom@tromey.com>
7720
7721         * complaints.c (struct complaints): Remove.
7722         (symfile_complaint_book): Remove.
7723         (series): New global.
7724         (complaint_internal): Update.
7725         (clear_complaints): Update.
7726
7727 2018-05-23  Tom Tromey  <tom@tromey.com>
7728
7729         * complaints.c (counters): New global.
7730         (struct complain): Remove.
7731         (struct complaints) <root>: Remove.
7732         (complaint_sentinel): Remove.
7733         (symfile_complaint_book): Update.
7734         (find_complaint) Remove.
7735         (complaint_internal, clear_complaints): Update.
7736
7737 2018-05-23  Tom Tromey  <tom@tromey.com>
7738
7739         * complaints.c (struct complain) <file, line>: Remove.
7740         (find_complaint): Remove file, line parameters.
7741         (complaint_internal): Update.
7742
7743 2018-05-23  Tom Tromey  <tom@tromey.com>
7744
7745         * complaints.c (vcomplaint): Remove.
7746         (complaint_internal) Merge in contents of vcomplaint.
7747
7748 2018-05-23  Tom Tromey  <tom@tromey.com>
7749
7750         * complaints.c (struct complaints) <explanation>: Remove.
7751         (symfile_explanations): Remove.
7752         (symfile_complaint_book): Update.
7753         (vcomplaint): Update.
7754         (struct explanation): Remove.
7755
7756 2018-05-23  Tom Tromey  <tom@tromey.com>
7757
7758         * complaints.c (symfile_complaints): Remove.
7759         (complaint_internal): Remove "complaints" parameter.
7760         (clear_complaints, vcomplaint): Remove "c" parameter.
7761         (get_complaints): Remove.
7762         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
7763         (dwarf2_debug_line_missing_file_complaint)
7764         (dwarf2_debug_line_missing_end_sequence_complaint)
7765         (dwarf2_complex_location_expr_complaint)
7766         (dwarf2_const_value_length_mismatch_complaint)
7767         (dwarf2_section_buffer_overflow_complaint)
7768         (dwarf2_macro_malformed_definition_complaint)
7769         (dwarf2_invalid_attrib_class_complaint)
7770         (create_addrmap_from_index, dw2_symtab_iter_next)
7771         (dw2_expand_marked_cus)
7772         (dw2_debug_names_iterator::find_vec_in_debug_names)
7773         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
7774         (create_debug_type_hash_table, init_cutu_and_read_dies)
7775         (partial_die_parent_scope, add_partial_enumeration)
7776         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
7777         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
7778         (read_import_statement, read_file_scope, create_dwo_cu_reader)
7779         (create_cus_hash_table, create_dwp_hash_table)
7780         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
7781         (dwarf2_rnglists_process, dwarf2_ranges_process)
7782         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
7783         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
7784         (handle_struct_member_die, process_structure_scope)
7785         (read_array_type, read_common_block, read_module_type)
7786         (read_tag_pointer_type, read_typedef, read_base_type)
7787         (read_subrange_type, load_partial_dies, partial_die_info::read)
7788         (partial_die_info::read, partial_die_info::read)
7789         (partial_die_info::read, read_checked_initial_length_and_offset)
7790         (dwarf2_string_attr, read_formatted_entries)
7791         (dwarf_decode_line_header)
7792         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
7793         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
7794         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
7795         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
7796         (get_signatured_type, get_DW_AT_signature_type)
7797         (decode_locdesc, file_file_name, consume_improper_spaces)
7798         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
7799         (dwarf_decode_macro_bytes, dwarf_decode_macros)
7800         (dwarf2_symbol_mark_computed, set_die_type)
7801         (read_attribute_value): Update.
7802         * stap-probe.c (handle_stap_probe, get_stap_base_address):
7803         Update.
7804         * dbxread.c (unknown_symtype_complaint)
7805         (lbrac_mismatch_complaint, repeated_header_complaint)
7806         (set_namestring, function_outside_compilation_unit_complaint)
7807         (read_dbx_symtab, process_one_symbol): Update.
7808         * gdbtypes.c (stub_noname_complaint): Update.
7809         * windows-nat.c (handle_unload_dll): Update.
7810         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
7811         (decode_base_type): Update.
7812         * xcoffread.c (bf_notfound_complaint, ef_complaint)
7813         (eb_complaint, record_include_begin, record_include_end)
7814         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
7815         (process_xcoff_symbol, read_symbol)
7816         (function_outside_compilation_unit_complaint)
7817         (scan_xcoff_symtab): Update.
7818         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
7819         * buildsym.c (finish_block_internal, make_blockvector)
7820         (end_symtab_get_static_block, augment_type_symtab): Update.
7821         * dtrace-probe.c (dtrace_process_dof)
7822         (dtrace_static_probe_ops::get_probes): Update.
7823         * complaints.h (struct complaint): Don't declare.
7824         (symfile_complaints): Remove.
7825         (complaint_internal): Remove "complaints" parameter.
7826         (complaint): Likewise.
7827         (clear_complaints): Likewise.
7828         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7829         (reread_symbols): Update.
7830         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
7831         (dwarf2_frame_cache, decode_frame_entry): Update.
7832         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
7833         * objc-lang.c (lookup_objc_class, lookup_child_selector)
7834         (info_selectors_command): Update.
7835         * macrotab.c (macro_include, check_for_redefinition)
7836         (macro_undef): Update.
7837         * objfiles.c (filter_overlapping_sections): Update.
7838         * stabsread.c (invalid_cpp_abbrev_complaint)
7839         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
7840         (define_symbol, error_type, read_type, rs6000_builtin_type)
7841         (stabs_method_name_from_physname, read_member_functions)
7842         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
7843         (attach_fields_to_type, complain_about_struct_wipeout)
7844         (read_range_type, read_args, common_block_start)
7845         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
7846         Update.
7847         * mdebugread.c (index_complaint, unknown_ext_complaint)
7848         (basic_type_complaint, bad_tag_guess_complaint)
7849         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
7850         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
7851         (parse_procedure, parse_lines)
7852         (function_outside_compilation_unit_complaint)
7853         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
7854         (bad_tag_guess_complaint, reg_value_complaint): Update.
7855         * cp-support.c (demangled_name_complaint): Update.
7856         * macroscope.c (sal_macro_scope): Update.
7857         * dwarf-index-write.c (class debug_names): Update.
7858
7859 2018-05-23  Tom Tromey  <tom@tromey.com>
7860
7861         * complaints.c (clear_complaints): Remove "noisy" parameter.
7862         * complaints.h (clear_complaints): Update.
7863         * symfile.c (syms_from_objfile_1, finish_new_objfile)
7864         (reread_symbols): Update.
7865
7866 2018-05-23  Tom Tromey  <tom@tromey.com>
7867
7868         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
7869         SUBSEQUENT_MESSAGE.
7870         (vcomplaint, clear_complaints): Update.
7871         (symfile_explanations): Remove some messages.
7872
7873 2018-05-23  Tom Tromey  <tom@tromey.com>
7874
7875         * complaints.c (internal_complaint): Remove.
7876         * complaints.h (internal_complaint): Remove.
7877
7878 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
7879
7880         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
7881
7882 2018-05-22  Pedro Alves  <palves@redhat.com>
7883
7884         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
7885         (remote_fileio_badfd, remote_fileio_return_errno)
7886         (remote_fileio_return_success, remote_fileio_func_open)
7887         (remote_fileio_func_open, remote_fileio_func_close)
7888         (remote_fileio_func_read, remote_fileio_func_write)
7889         (remote_fileio_func_lseek, remote_fileio_func_rename)
7890         (remote_fileio_func_unlink, remote_fileio_func_stat)
7891         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
7892         (remote_fileio_func_isatty, remote_fileio_func_system): Add
7893         remote_target parameter.
7894         (remote_fio_func_map) <func>: Add remote_target parameter.
7895         (do_remote_fileio_request, remote_fileio_request):
7896         * remote-fileio.h (remote_fileio_request):
7897         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
7898         remote_target parameter.
7899         (remote_notif_process, handle_notification): Adjust to pass down
7900         the remote.
7901         (remote_notif_state_allocate): Add remote_target parameter.  Save
7902         it.
7903         * remote-notif.h (struct remote_target): Forward declare.
7904         (struct notif_client) <parse, ack, can_get_pending_events>: Add
7905         remote_target parameter.
7906         (struct remote_notif_state) <remote>: New field.
7907         (remote_notif_ack, remote_notif_parse): Add remote_target
7908         parameter.
7909         (remote_notif_state_allocate, remote_notif_state_allocate): Add
7910         remote_target parameter.
7911         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
7912         (threads_listing_context, rmt_thread_action, protocol_feature)
7913         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
7914         (packet_result, struct threads_listing_context, remote_state):
7915         Move definitions and declarations higher up.
7916         (remote_target) <~remote_target>: Declare.
7917         (remote_download_command_source, remote_file_put, remote_file_get)
7918         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
7919         (remote_hostio_pread_vFile, remote_hostio_send_command)
7920         (remote_hostio_set_filesystem, remote_hostio_open)
7921         (remote_hostio_close, remote_hostio_unlink, remote_state)
7922         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
7923         (get_memory_write_packet_size, get_memory_read_packet_size)
7924         (append_pending_thread_resumptions, remote_detach_1)
7925         (append_resumption, remote_resume_with_vcont)
7926         (add_current_inferior_and_thread, wait_ns, wait_as)
7927         (process_stop_reply, remote_notice_new_inferior)
7928         (process_initial_stop_replies, remote_add_thread)
7929         (btrace_sync_conf, remote_btrace_maybe_reopen)
7930         (remove_new_fork_children, kill_new_fork_children)
7931         (discard_pending_stop_replies, stop_reply_queue_length)
7932         (check_pending_events_prevent_wildcard_vcont)
7933         (discard_pending_stop_replies_in_queue, stop_reply)
7934         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
7935         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
7936         (remote_interrupt_as, remote_interrupt_ns)
7937         (remote_get_noisy_reply, remote_query_attached)
7938         (remote_add_inferior, remote_current_thread, get_current_thread)
7939         (set_thread, set_general_thread, set_continue_thread)
7940         (set_general_process, write_ptid)
7941         (remote_unpack_thread_info_response, remote_get_threadinfo)
7942         (parse_threadlist_response, remote_get_threadlist)
7943         (remote_threadlist_iterator, remote_get_threads_with_ql)
7944         (remote_get_threads_with_qxfer)
7945         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
7946         (get_offsets, remote_check_symbols, remote_supported_packet)
7947         (remote_query_supported, remote_packet_size)
7948         (remote_serial_quit_handler, remote_detach_pid)
7949         (remote_vcont_probe, remote_resume_with_hc)
7950         (send_interrupt_sequence, interrupt_query)
7951         (remote_notif_get_pending_events, fetch_register_using_p)
7952         (send_g_packet, process_g_packet, fetch_registers_using_g)
7953         (store_register_using_P, store_registers_using_G)
7954         (set_remote_traceframe, check_binary_download)
7955         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
7956         (remote_xfer_live_readonly_partial, remote_read_bytes)
7957         (remote_send_printf, remote_flash_write, readchar)
7958         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
7959         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
7960         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
7961         (extended_remote_disable_randomization, extended_remote_run)
7962         (send_environment_packet, extended_remote_environment_support)
7963         (extended_remote_set_inferior_cwd, remote_write_qxfer)
7964         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
7965         (packet_command): Now methods of ...
7966         (remote_target): ... this class.
7967         (m_remote_state) <remote_target>: New field.
7968         (struct remote_state) <stop_reply_queue,
7969         remote_async_inferior_event_token, wait_forever_enabled_p>: New
7970         fields.
7971         (remote_state::remote_state): Allocate stop_reply_queue.
7972         (remote_state): Delete global.
7973         (get_remote_state_raw): Delete.
7974         (remote_target::get_remote_state): Allocate m_remote_state on
7975         demand.
7976         (get_current_remote_target): New.
7977         (remote_ops, extended_remote_ops): Delete.
7978         (wait_forever_enabled_p, remote_async_inferior_event_token):
7979         Delete, moved to struct remote_state.
7980         (remote_target::close): Delete self.  Destruction bits split to
7981         ...
7982         (remote_target::~remote_target): ... this.
7983         (show_memory_packet_size): Adjust to use
7984         get_current_remote_target.
7985         (struct protocol_feature) <func>: Add remote_target parameter.
7986         All callers adjusted.
7987         (curr_quit_handler_target): New.
7988         (remote_serial_quit_handler): Reimplement.
7989         (remote_target::open_1): Adjust to use get_current_remote_target.
7990         Heap-allocate remote_target/extended_remote_target instances.
7991         (vcont_builder::vcont_builder): Add remote_target parameter, and
7992         save it in m_remote.  All callers adjusted.
7993         (vcont_builder::m_remote): New field.
7994         (vcont_builder::restart, vcont_builder::flush)
7995         (vcont_builder::push_action): Use it.
7996         (remote_target::commit_resume): Use it.
7997         (struct queue_iter_param) <remote>: New field.
7998         (remote_target::remove_new_fork_children): Fill in 'remote' field.
7999         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
8000         (check_pending_event_prevents_wildcard_vcont_callback)
8001         (remote_target::check_pending_events_prevent_wildcard_vcont)
8002         (remote_target::discard_pending_stop_replies)
8003         (remote_target::discard_pending_stop_replies_in_queue)
8004         (remote_target::remote_notif_remove_queued_reply): Fill in
8005         'remote' field.
8006         (remote_notif_get_pending_events): New.
8007         (remote_target::readchar, remote_target::remote_serial_write):
8008         Save/restore curr_quit_handler_target.
8009         (putpkt): New.
8010         (kill_new_fork_children): Fill in 'remote' field.
8011         (packet_command): Use get_current_remote_target, defer to
8012         remote_target method of same name.
8013         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
8014         parameter, and save it in m_remote.  All callers adjusted.
8015         (scoped_remote_fd::release): Use m_remote.
8016         (scoped_remote_fd::m_remote): New field.
8017         (remote_file_put, remote_file_get, remote_file_delete): Use
8018         get_current_remote_target, defer to remote_target method of same
8019         name.
8020         (remote_btrace_reset): Add remote_state paremeter.  Update all
8021         callers.
8022         (remote_async_inferior_event_handler). Pass down 'data'.
8023         (remote_new_objfile): Use get_current_remote_target.
8024         (remote_target::vcont_r_supported): New.
8025         (set_range_stepping): Use get_current_remote_target and
8026         remote_target::vcont_r_supported.
8027         (_initialize_remote): Don't allocate 'remote_state' and
8028         'stop_reply_queue' globals.
8029         * remote.h (struct remote_target): Forward declare.
8030         (getpkt, putpkt, remote_notif_get_pending_events): Add
8031         'remote_target' parameter.
8032
8033 2018-05-22  Pedro Alves  <palves@redhat.com>
8034
8035         * remote.c (vcont_builder): Now a class.  Make all data members
8036         private.
8037         (vcont_builder) <vcont_builder, restart, flush, push_action>:
8038         Declare methods.
8039         (vcont_builder_restart): Rename to ...
8040         (vcont_builder::restart): ... this.
8041         (vcont_builder_flush): Rename to ...
8042         (vcont_builder::flush): ... this.
8043         (vcont_builder_push_action): Rename to ...
8044         (vcont_builder::push_action): ... this.
8045         (remote_target::commit_resume): Adjust.
8046
8047 2018-05-22  Pedro Alves  <palves@redhat.com>
8048
8049         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
8050         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
8051         (get_fixed_memory_packet_size): New.
8052         (get_memory_packet_size): Use it.
8053         (set_memory_packet_size): Don't override the config size with
8054         DEFAULT_MAX_MEMORY_PACKET_SIZE.
8055         (show_memory_packet_size): Use get_fixed_memory_packet_size.
8056         Don't refer to get_memory_packet_size if not connected to a remote
8057         target.  Show "(default)" if configured size is 0.
8058
8059 2018-05-22  Pedro Alves  <palves@redhat.com>
8060
8061         * remote.c (remote_target::mourn_inferior): Move
8062         discard_pending_stop_replies call here from ...
8063         (_initialize_remote): ... here.
8064
8065 2018-05-22  Pedro Alves  <palves@redhat.com>
8066
8067         * remote.c (compare_section_command): Remove set_general_process
8068         call.
8069
8070 2018-05-22  Pedro Alves  <palves@redhat.com>
8071
8072         * remote.c (struct packet_reg, struct remote_arch_state):
8073         Move higher up in the file.
8074         (remote_state) <m_arch_states>: Store remote_arch_state values
8075         instead of remote_arch_state pointers.
8076         (remote_state::get_remote_arch_state): Adjust.
8077
8078 2018-05-22  Pedro Alves  <palves@redhat.com>
8079
8080         * remote.c: Include <unordered_map>.
8081         (remote_state): Now a class.
8082         (remote_state) <get_remote_arch_state>: Declare method.
8083         <get_remote_arch_state>: New field.
8084         (remote_arch_state) <remote_arch_state>: Declare ctor.
8085         <regs>: Now a unique_ptr.
8086         (remote_gdbarch_data_handle): Delete.
8087         (get_remote_arch_state): Delete.
8088         (remote_state::get_remote_arch_state): New.
8089         (get_remote_state): Adjust to call remote_state's
8090         get_remote_arch_state method.
8091         (init_remote_state): Delete, bits factored out to ...
8092         (remote_arch_state::remote_arch_state): ... this new method.
8093         (get_remote_packet_size, get_memory_packet_size)
8094         (process_g_packet, remote_target::fetch_registers)
8095         (remote_target::prepare_to_store, store_registers_using_G)
8096         (remote_target::store_registers, remote_target::get_trace_status):
8097         Adjust to call remote_state's method.
8098         (_initialize_remote): Remove reference to
8099         remote_gdbarch_data_handle.
8100
8101 2018-05-22  Pedro Alves  <palves@redhat.com>
8102
8103         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
8104         pread>: New method declarations.
8105         (remote_target::open_1): Adjust.
8106         (readahead_cache_invalidate): Rename to ...
8107         (readahead_cache::invalidate): ... this, and adjust to be a class
8108         method.
8109         (readahead_cache_invalidate_fd): Rename to ...
8110         (readahead_cache::invalidate_fd): ... this, and adjust to be a
8111         class method.
8112         (remote_hostio_pwrite): Adjust.
8113         (remote_hostio_pread_from_cache): Rename to ...
8114         (readahead_cache::pread): ... this, and adjust to be a class
8115         method.
8116         (remote_hostio_close): Adjust.
8117
8118 2018-05-22  Pedro Alves  <palves@redhat.com>
8119
8120         * remote.c (remote_hostio_close_cleanup): Delete.
8121         (class scoped_remote_fd): New.
8122         (remote_file_put, remote_file_get): Use it.
8123
8124 2018-05-22  Pedro Alves  <palves@redhat.com>
8125
8126         (struct vCont_action_support): Use bool and initialize all fields.
8127         (struct readahead_cache): Initialize all fields.
8128         (remote_state): Use bool and initialize all fields.
8129         (remote_state::remote_state, remote_state::~remote_state): New.
8130         (new_remote_state): Delete.
8131         (_initialize_remote): Use new to allocate remote_state.
8132
8133 2018-05-22  Pedro Alves  <palves@redhat.com>
8134             張俊芝  <zjz@zjz.name>
8135
8136         PR gdb/22973
8137         * c-exp.y: Include "c-support.h".
8138         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
8139         of tolower.  Use c_ident_is_alpha to scan names.
8140         * c-lang.c: Include "c-support.h".
8141         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
8142         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
8143         * c-support.h: New file, with bits factored out from ...
8144         * cp-name-parser.y: ... this file.
8145         Include "c-support.h".
8146         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
8147         c-support.h and renamed.
8148         (symbol_end, yylex): Adjust.
8149
8150 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8151
8152         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
8153         parameter type to CORE_ADDR.
8154         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
8155         parameter type in declaration to CORE_ADDR.
8156         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
8157         target_auxv_search to get AT_HWCAP and use the result to get the
8158         target description.
8159         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
8160         to CORE_ADDR. Remove the cast of the return value to unsigned
8161         long. Fix error predicate of target_auxv_search.
8162         (ppc_linux_nat_target::read_description): Change the type of the
8163         hwcap variable to CORE_ADDR.
8164
8165 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8166
8167         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
8168         if the size of fpscr is larger than 32 bits.
8169
8170 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8171
8172         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
8173         (ppc32_linux_vsxregmap): New global.
8174         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
8175         regcache_supply_regset, and regcache_collect_regset.
8176         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
8177         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
8178         (fetch_vsx_register, store_vsx_register): Remove.
8179         (fetch_vsx_registers): Add regno parameter. Get regset using
8180         ppc_linux_vsxregset. Use regset to supply registers.
8181         (store_vsx_registers): Add regno parameter. Get regset using
8182         ppc_linux_vsxregset. Use regset to collect registers.
8183         (fetch_register): Call fetch_vsx_registers instead of
8184         fetch_vsx_register.
8185         (store_register): Call store_vsx_registers instead of
8186         store_vsx_register.
8187         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
8188         new regno parameter.
8189         (store_ppc_registers): Call store_vsx_registers with -1 for the
8190         new regno parameter.
8191         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
8192         (ppc_collect_vsxregset): Remove.
8193
8194 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8195
8196         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
8197         offset fields.
8198         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
8199         for vector register offset fields.
8200         (ppc64_fbsd_reg_offsets): Likewise.
8201         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8202         to vector register offset fields.
8203         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
8204         to vector register offset fields.
8205         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
8206         vector register offset fields.
8207         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
8208         initializers for vector register offset fields.
8209         (rs6000_aix64_reg_offsets): Likewise.
8210         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
8211         (ppc_supply_vrregset): Remove.
8212         (ppc_collect_vrregset): Remove.
8213         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
8214         (ppc_linux_vrregset) : New function.
8215         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
8216         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
8217         (ppc32_linux_vrregset): Remove.
8218         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
8219         and use result instead of ppc32_linux_vrregset.
8220         (ppc32_linux_reg_offsets): Remove initializers for vector register
8221         offset fields.
8222         (ppc64_linux_reg_offsets): Likewise.
8223         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
8224         * ppc-linux-nat.c: Include regset.h.
8225         (gdb_vrregset_t): Adjust comment to account for little-endian
8226         mode.
8227         (supply_vrregset, fill_vrregset): Remove.
8228         (fetch_altivec_register, store_altivec_register): Remove.
8229         (fetch_altivec_registers): Add regno parameter. Get regset using
8230         ppc_linux_vrregset. Use regset to supply registers.
8231         (store_altivec_registers): Add regno parameter. Get regset using
8232         ppc_linux_vrregset. Use regset to collect registers.
8233         (fetch_register): Call fetch_altivec_registers instead of
8234         fetch_altivec_register.
8235         (store_register): Call store_altivec_registers instead of
8236         store_altivec_register.
8237         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
8238         the new regno parameter.
8239         (store_ppc_registers): Call store_altivec_registers with -1 for
8240         the new regno parameter.
8241
8242 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8243
8244         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
8245         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
8246         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
8247         (gdb_vrregset_t): Change array type size to
8248         PPC_LINUX_SIZEOF_VRREGSET.
8249         (gdb_vsxregset_t): Change array type size to
8250         PPC_LINUX_SIZEOF_VSXREGSET.
8251         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
8252         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
8253         PPC_LINUX_SIZEOF_VSXREGSET.
8254
8255 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8256
8257         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
8258         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
8259         nat/ppc-linux.c.
8260         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
8261         ppc_linux_target_wordsize with tid.
8262         (ppc_linux_nat_target::read_description): Call ppc_linux_target
8263         wordsize with tid.
8264         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
8265         (ppc64_64bit_inferior_p): Add static and inline specifiers.
8266         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
8267         tid parameter. Remove static specifier.
8268         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
8269         (ppc_linux_target_wordsize): New declaration.
8270
8271 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
8272
8273         * arch/ppc-linux-common.c: New file.
8274         * arch/ppc-linux-common.h: New file.
8275         * arch/ppc-linux-tdesc.h: New file.
8276         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
8277         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
8278         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
8279         arch/ppc-linux-tdesc.h.
8280         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
8281         arch/ppc-linux-tdesc.h.
8282         (ppc_linux_nat_target::read_description): Remove target
8283         description matching code. Fill a ppc_linux_features struct and
8284         call ppc_linux_match_description with it. Move comment about ISA
8285         2.05 to ppc-linux-common.c.
8286         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
8287         arch/ppc-linux-tdesc.h.
8288         (ppc_linux_core_read_description): Remove target description
8289         matching code. Fill a ppc_linux_features struct and call
8290         ppc_linux_match_description with it.
8291         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
8292         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
8293         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
8294         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
8295         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
8296         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
8297         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
8298         (tdesc_powerpc_e500l): Remove.
8299
8300 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
8301
8302         * ada-lang.c (catch_assert_command): Pass empty string instead
8303         of NULL for excep_string argument.
8304
8305 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
8306
8307         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
8308         the width of the requested register exceeds the width of the
8309         `ptrace' data type.
8310
8311 2018-05-21  Tom Tromey  <tom@tromey.com>
8312
8313         * printcmd.c (output_command): Remove.
8314         (output_command_const): Rename to output_command.
8315         * valprint.h (output_command): Rename from output_command_const.
8316         * tracepoint.c (trace_dump_actions): Call output_command.
8317
8318 2018-05-21  Tom Tromey  <tom@tromey.com>
8319
8320         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
8321         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
8322         * ada-lang.h (create_ada_exception_catchpoint): Update.
8323         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
8324         std::string.
8325         (create_excep_cond_exprs, ~ada_catchpoint)
8326         (should_stop_exception, print_one_exception)
8327         (print_mention_exception, print_recreate_exception): Update.
8328         (ada_get_next_arg): Remove.
8329         (catch_ada_exception_command_split): Use std::string.  Change type
8330         of "excep_string", "cond_string".
8331         (catch_ada_exception_command): Update.
8332         (create_ada_exception_catchpoint): Change type of excep_string.
8333         (ada_exception_sal): Remove excep_string parameter.
8334         (~ada_catchpoint): Remove.
8335
8336 2018-05-21  Tom Tromey  <tom@tromey.com>
8337
8338         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
8339         cleanup.
8340
8341 2018-05-21  Tom Tromey  <tom@tromey.com>
8342
8343         * ada-lang.c (ada_exception_message_1, ada_exception_message):
8344         Return unique_xmalloc_ptr.
8345         (print_it_exception): Update.
8346
8347 2018-05-21  Tom Tromey  <tom@tromey.com>
8348
8349         * tracepoint.c (trace_dump_actions): Use std::string.
8350
8351 2018-05-21  Tom Tromey  <tom@tromey.com>
8352
8353         * symfile.c (reread_symbols): Use std::string for original_name.
8354
8355 2018-05-21  Tom Tromey  <tom@tromey.com>
8356
8357         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
8358         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
8359         constructor.
8360
8361 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
8362
8363         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
8364         instance to...
8365         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
8366         * objfiles.c (get_objfile_bfd_data): Allocate
8367         objfile_per_bfd_storage with obstack_new when allocating on
8368         obstack.
8369
8370 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8371
8372         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
8373         OBSTACK_ZALLOC.
8374         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
8375         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
8376         * mdebugread.c (mdebug_build_psymtabs): Likewise.
8377         (add_pending): Likewise.
8378         (parse_symbol): Likewise.
8379         (parse_partial_symbols): Likewise.
8380         (psymtab_to_symtab_1): Likewise.
8381         (new_psymtab): Likewise.
8382         (elfmdebug_build_psymtabs): Likewise.
8383         * minsyms.c (terminate_minimal_symbol_table): Likewise.
8384         * objfiles.c (get_objfile_bfd_data): Likewise.
8385         (objfile_register_static_link): Likewise.
8386         * psymtab.c (allocate_psymtab): Likewise.
8387         * stabsread.c (read_member_functions): Likewise.
8388         * xcoffread.c (xcoff_end_psymtab): Likewise.
8389
8390 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
8391
8392         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
8393         compiler supports std::is_trivially_constructible.
8394         * common/poison.h: Include obstack.h.
8395         (IsMallocable): Define to is_trivially_constructible if the
8396         compiler supports it, define to true_type otherwise.
8397         (xobnew): New.
8398         (XOBNEW): Redefine.
8399         (xobnewvec): New.
8400         (XOBNEWVEC): Redefine.
8401         * gdb_obstack.h (obstack_zalloc): New.
8402         (OBSTACK_ZALLOC): Redefine.
8403         (obstack_calloc): New.
8404         (OBSTACK_CALLOC): Redefine.
8405         (obstack_new): New.
8406         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
8407         (gdbarch_obstack): New declaration in gdbarch.h, definition in
8408         gdbarch.c.
8409         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
8410         obstack_calloc/obstack_zalloc.
8411         (gdbarch_obstack_zalloc): Remove.
8412         * target-descriptions.c (tdesc_data_init): Use obstack_new.
8413
8414 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8415
8416         * stack.c (backtrace_command_1): Remove useless variable int i.
8417
8418 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8419
8420         * stack.c (print_frame_info): Fix comment.
8421
8422 2018-05-18  Tom Tromey  <tom@tromey.com>
8423
8424         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
8425         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
8426         (~dwarf2_per_objfile): Update
8427         (dwarf2_get_dwz_file): Use new.
8428         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
8429         unique_ptr.
8430
8431 2018-05-18  Tom Tromey  <tom@tromey.com>
8432
8433         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
8434         unique_ptr.
8435         * dwarf2read.c (struct dwp_file): Add constructor and
8436         initializers.
8437         (open_and_init_dwp_file): Return a unique_ptr.
8438         (dwarf2_per_objfile, create_dwp_hash_table)
8439         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
8440         (lookup_dwo_unit_in_dwp): Update.
8441         (open_and_init_dwp_file, get_dwp_file): Update.
8442
8443 2018-05-18  Tom Tromey  <tom@tromey.com>
8444
8445         * dwarf2read.c (dwarf2_per_objfile): Update.
8446         (struct mapped_index): Add initializers.
8447         (dwarf2_read_index): Use new.
8448         (dw2_symtab_iter_init): Update.
8449         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
8450         unique_ptr.
8451
8452 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8453
8454         * dwarf2read.c (mapped_index) <total_size>: Remove.
8455
8456 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
8457
8458         * unittests/format_pieces-selftests.c (test_format_specifier):
8459         Add ARI comments.
8460
8461 2018-05-18  Tom Tromey  <tom@tromey.com>
8462
8463         * c-typeprint.c (maybe_print_hole): New function.
8464         (c_print_type_struct_field_offset): Update.
8465         (c_type_print_base_struct_union): Call maybe_print_hole.
8466
8467 2018-05-17  Keith Seitz  <keiths@redhat.com>
8468
8469         * breakpoint.c (build_bpstat_chain): New function, moved from
8470         bpstat_stop_status.
8471         (bpstat_stop_status): Add optional parameter, `stop_chain'.
8472         If no stop chain is passed, call build_bpstat_chain to build it.
8473         * breakpoint.h (build_bpstat_chain): Declare.
8474         (bpstat_stop_status): Move documentation here from breakpoint.c.
8475         * infrun.c (handle_signal_stop): Before eliding inlined frames,
8476         build the stop chain and pass it to skip_inline_frames.
8477         Pass this stop chain to bpstat_stop_status.
8478         * inline-frame.c: Include breakpoint.h.
8479         (stopped_by_user_bp_inline_frame): New function.
8480         (skip_inline_frames): Add parameter `stop_chain'.
8481         Move documention to inline-frame.h.
8482         If non-NULL, use stopped_by_user_bp_inline_frame to determine
8483         whether the frame should be elided.
8484         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
8485         Add moved documentation and update for new parameter.
8486
8487 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8488
8489         PR cli/14975
8490         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
8491         unittests/format_pieces-selftests.c.
8492         * common/format.h (format_piece) <operator==>: New.
8493         (format_pieces) <operator[]>: Remove.
8494         * common/format.c (format_pieces::format_pieces): Handle \e.
8495         * unittests/format_pieces-selftests.c: New.
8496
8497 2018-05-17  Tom Tromey  <tom@tromey.com>
8498
8499         PR symtab/23010:
8500         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
8501         (dw2_instantiate_symtab): Add skip_partial parameter.
8502         (dw2_find_last_source_symtab, dw2_map_expand_apply)
8503         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
8504         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
8505         (dw2_expand_symtabs_matching_one)
8506         (dw2_find_pc_sect_compunit_symtab)
8507         (dw2_debug_names_lookup_symbol)
8508         (dw2_debug_names_expand_symtabs_for_function): Update.
8509         (init_cutu_and_read_dies): Add skip_partial parameter.
8510         (process_psymtab_comp_unit, build_type_psymtabs_1)
8511         (process_skeletonless_type_unit, load_partial_comp_unit)
8512         (psymtab_to_symtab_1): Update.
8513         (load_full_comp_unit): Add skip_partial parameter.
8514         (process_imported_unit_die, dwarf2_read_addr_index)
8515         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
8516         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
8517         (read_signatured_type): Update.
8518
8519 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
8520
8521         * value.c (release_value): Remove unused variable.
8522         (record_latest_value): Likewise.
8523         (access_value_history): Likewise.
8524         (preserve_values): Likewise.
8525
8526 2018-05-17  Tom Tromey  <tom@tromey.com>
8527
8528         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
8529         Initialize.
8530
8531 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
8532
8533         PR gdb/22286
8534         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
8535         Also handle registers whose width is not a multiple of
8536         PTRACE_TYPE_RET.
8537         (linux_nat_trad_target::store_register): Likewise.
8538
8539 2018-05-16  Tom Tromey  <tom@tromey.com>
8540
8541         * gdbcore.h (core_bfd): Redefine.
8542         * corelow.c (core_target::close): Update.
8543         (core_target_open): Update.
8544         * progspace.h (struct program_space) <cbfd>: Now a
8545         gdb_bfd_ref_ptr.
8546
8547 2018-05-16  Tom Tromey  <tom@tromey.com>
8548
8549         PR cli/19551:
8550         * symfile-add-flags.h (enum symfile_add_flags)
8551         <SYMFILE_NOT_FILENAME>: New constant.
8552         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
8553         objfile name from BFD.
8554         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
8555         * minidebug.c (find_separate_debug_file_in_section): Put
8556         ".gnu_debugdata" into BFD's file name.
8557
8558 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
8559
8560         * regcache.c (regcache_read_ftype, regcache_write_ftype):
8561         Remove.
8562
8563 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
8564
8565         PR binutils/21446
8566         * aarch64-tdep.c (aarch64_analyze_prologue,
8567         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
8568         Indicate not interested in errors.
8569
8570 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8571
8572         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
8573         Supply the MIPS_ZERO_REGNUM register.
8574
8575 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
8576
8577         * mips-tdep.c (mask_address_var): Make variable static.
8578
8579 2018-05-14  Tom Tromey  <tom@tromey.com>
8580
8581         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
8582
8583 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
8584
8585         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
8586         FXSAVE_ADDR for the mxcsr register.
8587
8588 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
8589
8590         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
8591
8592 2018-05-11  Pedro Alves  <palves@redhat.com>
8593
8594         * corelow.c (core_target) <core_target>: No longer inline.
8595         Initialize m_core_gdbarch, m_core_vec and build the section table
8596         here.
8597         <~core_target>: New.
8598         <core_gdbarch, get_core_register_section>: New methods.
8599         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
8600         factored out from ...
8601         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
8602         (core_ops): Delete.
8603         (sniff_core_bfd): Add gdbarch parameter.
8604         (core_close): Delete, merged into ...
8605         (core_target::close): ... here.  Delete self.
8606         (core_close_cleanup): Delete.
8607         (core_target_open): Allocate a core_target on the heap.  Use a
8608         unique_ptr instead of a cleanup.  Bits moved into the core_target
8609         ctor.  Adjust to use core_target methods instead of globals.
8610         (get_core_register_section): Rename to ...
8611         (core_target::get_core_register_section): ... this and adjust.
8612         (struct get_core_registers_cb_data): New.
8613         (get_core_registers_cb): Use it.  Use bool.
8614         (core_target::fetch_registers, core_target::files_info)
8615         (core_target::xfer_partial, core_target::read_description)
8616         (core_target::pid_to, core_target::thread_name): Adjust to
8617         reference class fields instead of globals.
8618         * target.h (struct target_ops_deleter, target_ops_up): New.
8619
8620 2018-05-11  Pedro Alves  <palves@redhat.com>
8621
8622         * corefile.c (core_file_command): Move to corelow.c.
8623         * corelow.c (the_core_target): Delete.
8624         (core_file_command): Moved from corefile.c.  Check exec_bfd
8625         instead of the_core_target.  Use target_detach instead of calling
8626         into the_core_target directly.
8627         (maybe_say_no_core_file_now): New.
8628         (core_target::detach): Use it.
8629         (_initialize_corelow): Remove references to the_core_target.
8630         * gdbcore.h (the_core_target): Delete.
8631
8632 2018-05-11  Tom Tromey  <tromey@redhat.com>
8633             Pedro Alves  <palves@redhat.com>
8634
8635         * corefile.c (core_bfd): Remove.
8636         * gdbcore.h (core_bfd): Now a macro.
8637         * progspace.h (struct program_space) <cbfd>: New field.
8638
8639 2018-05-11  Tom Tromey  <tom@tromey.com>
8640
8641         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
8642         gdb::def_vector.
8643
8644 2018-05-10  Tom Tromey  <tom@tromey.com>
8645
8646         * configure: Rebuild.
8647         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
8648
8649 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
8650
8651         PR server/23158:
8652         * regformats/regdat.sh: Adjust script, following the addition
8653         of the new expedite_regs parameter to init_target_desc.
8654
8655 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
8656     
8657         PR gdb/23127
8658         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
8659         set_gdbarch_significant_addr_bit.
8660         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
8661         set_gdbarch_significant_addr_bit.
8662         * utils.c (address_significant): Update to sign extend addr.
8663
8664 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
8665
8666         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
8667         (xtensa_linux_init_abi): Limit tdep->num_regs by
8668         tdep->num_nopriv_regs.
8669         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
8670         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
8671         not initialized.
8672
8673 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
8674
8675         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
8676
8677 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
8678
8679         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
8680         (I387_MXCSR_INIT_VAL): New constant.
8681         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
8682         buffer if it was supplied by the inferior.
8683         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
8684         (i387_xsave_get_clear_bv): New function.
8685         (i387_supply_xsave): Only read x87 control registers from the
8686         xsave buffer if the feature is enabled, and the state will have
8687         been written, otherwise, provide a suitable default.
8688         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
8689         including x87 control registers.  Update control registers if they
8690         have changed from the default value, and mark features as enabled
8691         as required.
8692         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
8693
8694 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
8695
8696         * spu-tdep.c (info_spu_event_command): Fix output formatting.
8697
8698 2018-05-07  Tom Tromey  <tom@tromey.com>
8699
8700         * configure: Rebuild.
8701         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
8702
8703 2018-05-07  Tom Tromey  <tom@tromey.com>
8704
8705         PR tdep/20362:
8706         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
8707         bit.  Use correct value for VDIV.
8708
8709 2018-05-04  Tom Tromey  <tom@tromey.com>
8710
8711         * configure: Rebuild.
8712         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
8713
8714 2018-05-04  Tom Tromey  <tom@tromey.com>
8715
8716         * linux-record.c (record_linux_system_call) <case
8717         RECORD_SYS_RECVFROM>: Add "break".
8718
8719 2018-05-04  Tom Tromey  <tom@tromey.com>
8720
8721         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
8722         Add missing "break".
8723         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
8724         Add missing "break".
8725
8726 2018-05-04  Tom Tromey  <tom@tromey.com>
8727
8728         * rs6000-tdep.c (ppc_process_record_op4)
8729         (ppc_process_record_op63): Add fall-through comment.
8730
8731 2018-05-04  Tom Tromey  <tom@tromey.com>
8732
8733         * i386-tdep.c (i386_process_record): Add fall-through comment.
8734
8735 2018-05-04  Tom Tromey  <tom@tromey.com>
8736
8737         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
8738         comment.
8739
8740 2018-05-04  Tom Tromey  <tom@tromey.com>
8741
8742         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
8743         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
8744         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
8745         comment.
8746         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
8747         comment.
8748         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
8749         comment.
8750
8751 2018-05-04  Tom Tromey  <tom@tromey.com>
8752
8753         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
8754
8755 2018-05-04  Tom Tromey  <tom@tromey.com>
8756
8757         * s390-tdep.c (s390_process_record): Fix fall-through comments.
8758         * xcoffread.c (scan_xcoff_symtab): Move comment later.
8759         * symfile.c (section_is_mapped): Fix fall-through comment.
8760         * stabsread.c (define_symbol, read_member_functions): Fix
8761         fall-through comment.
8762         * s390-linux-tdep.c (s390_process_record): Fix fall-through
8763         comment.
8764         * remote.c (remote_wait_as): Fix fall-through comment.
8765         * p-exp.y (yylex): Fix fall-through comment.
8766         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
8767         comment.
8768         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
8769         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
8770         * jv-exp.y (yylex): Fix fall-through comment.
8771         * go-exp.y (lex_one_token): Fix fall-through comment.
8772         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
8773         fall-through comment.
8774         * f-exp.y (yylex): Fix fall-through comment.
8775         * dwarf2read.c (process_die): Fix fall-through comments.
8776         * dbxread.c (process_one_symbol): Fix fall-through comment.
8777         * d-exp.y (lex_one_token): Fix fall-through comment.
8778         * cp-name-parser.y (yylex): Fix fall-through comment.
8779         * coffread.c (coff_symtab_read): Fix fall-through comment.
8780         * c-exp.y (lex_one_token): Fix fall-through comment.
8781         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
8782         comment.
8783         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
8784         comment.
8785
8786 2018-05-04  Tom Tromey  <tom@tromey.com>
8787
8788         PR python/22730:
8789         * NEWS: Mention gdb.execute change.
8790         * gdbcmd.h (execute_control_command): Don't declare.
8791         * python/python.c (execute_gdb_command): Use read_command_lines_1,
8792         execute_control_commands, execute_control_commands_to_string.
8793         * cli/cli-script.h (execute_control_commands)
8794         (execute_control_commands_to_string): Declare.
8795         (execute_control_command): Add from_tty parameter.
8796         * cli/cli-script.c (execute_control_commands)
8797         (execute_control_commands_to_string): New functions.
8798         (execute_user_command): Use execute_control_commands.
8799         (execute_control_command_1): Add "from_tty" parameter.  Update.
8800         (execute_control_command): Likewise.
8801
8802 2018-05-04  Tom Tromey  <tom@tromey.com>
8803
8804         PR python/22731:
8805         * NEWS: Mention that breakpoint commands are writable.
8806         * python/py-breakpoint.c (bppy_set_commands): New function.
8807         (breakpoint_object_getset) <"commands">: Use it.
8808
8809 2018-05-04  Tom Tromey  <tom@tromey.com>
8810
8811         * tracepoint.c (actions_command): Update.
8812         * mi/mi-cmd-break.c (mi_command_line_array)
8813         (mi_command_line_array_cnt, mi_command_line_array_ptr)
8814         (mi_read_next_line): Remove.
8815         (mi_cmd_break_commands): Update.
8816         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
8817         function_view.
8818         * cli/cli-script.c (get_command_line): Update.
8819         (process_next_line): Use function_view.  Constify.
8820         (recurse_read_control_structure, read_command_lines)
8821         (read_command_lines_1): Change argument types to function_view.
8822         (do_define_command, document_command): Update.
8823         * breakpoint.h (check_tracepoint_command): Don't declare.
8824         * breakpoint.c (check_tracepoint_command): Remove.
8825         (commands_command_1, create_tracepoint_from_upload): Update.
8826
8827 2018-05-04  Tom Tromey  <tom@tromey.com>
8828
8829         PR gdb/11750:
8830         * cli/cli-script.h (enum command_control_type) <define_control>:
8831         New constant.
8832         * cli/cli-script.c (multi_line_command_p): Handle define_control.
8833         (build_command_line, execute_control_command_1)
8834         (process_next_line): Likewise.
8835         (do_define_command): New function, extracted from define_command.
8836         (define_command): Use it.
8837
8838 2018-05-04  Tom Tromey  <tom@tromey.com>
8839
8840         * tracepoint.c (actions_command): Update.
8841         * cli/cli-script.h (read_command_lines): Update.
8842         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
8843         (MAX_TMPBUF): Remove define.
8844         (define_command): Use string_printf.
8845         (document_command): Likewise.
8846         * breakpoint.c (commands_command_1): Update.
8847
8848 2018-05-04  Tom Tromey  <tom@tromey.com>
8849
8850         * top.c (execute_command): Update.
8851         * cli/cli-script.h (print_command_lines): Now varargs.
8852         * cli/cli-script.c (print_command_lines): Now varargs.
8853         (execute_control_command_1) <case while_control, case if_control>:
8854         Update.
8855
8856 2018-05-04  Tom Tromey  <tom@tromey.com>
8857
8858         * tracepoint.c (all_tracepoint_actions): Rename from
8859         all_tracepoint_actions_and_cleanup.  Change return type.
8860         (actions_command, encode_actions_1, encode_actions)
8861         (trace_dump_actions, tdump_command): Update.
8862         * remote.c (remote_download_command_source): Update.
8863         * python/python.c (gdbpy_eval_from_control_command)
8864         (python_command, python_interactive_command): Update.
8865         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
8866         * guile/guile.c (guile_command)
8867         (gdbscm_eval_from_control_command, guile_command): Update.
8868         * compile/compile.c (compile_code_command)
8869         (compile_print_command, compile_to_object): Update.
8870         * cli/cli-script.h (struct command_lines_deleter): New.
8871         (counted_command_line): New typedef.
8872         (struct command_line): Add constructor, destructor.
8873         <body_list>: Remove.
8874         <body_list_0, body_list_1>: New members.
8875         (command_line_up): Remove typedef.
8876         (read_command_lines, read_command_lines_1, get_command_line):
8877         Update.
8878         (copy_command_lines): Don't declare.
8879         * cli/cli-script.c (build_command_line): Use "new".
8880         (get_command_line): Return counted_command_line.
8881         (print_command_lines, execute_user_command)
8882         (execute_control_command_1, while_command, if_command): Update.
8883         (realloc_body_list): Remove.
8884         (process_next_line, recurse_read_control_structure): Update.
8885         (read_command_lines, read_command_lines_1): Return counted_command_line.
8886         (free_command_lines): Use "delete".
8887         (copy_command_lines): Remove.
8888         (define_command, document_command, show_user_1): Update.
8889         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
8890         a counted_command_line.
8891         * breakpoint.h (counted_command_line): Remove typedef.
8892         (breakpoint_set_commands): Update.
8893         * breakpoint.c (check_no_tracepoint_commands)
8894         (validate_commands_for_breakpoint): Update.
8895         (breakpoint_set_commands): Change commands to be a
8896         counted_command_line.
8897         (commands_command_1, update_dprintf_command_list)
8898         (create_tracepoint_from_upload): Update.
8899
8900 2018-05-04  Tom Tromey  <tom@tromey.com>
8901
8902         * cli/cli-decode.h (cmd_list_element): New constructor.
8903         (~cmd_list_element): New destructor.
8904         (struct cmd_list_element): Add initializers.
8905         * cli/cli-decode.c (do_add_cmd): Use "new".
8906         (delete_cmd): Use "delete".
8907
8908 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
8909             Pedro Alves <palves@redhat.com>
8910
8911         PR breakpoints/19806 and support for PR external/20207.
8912         * NEWS: Mention Aarch64 watchpoint improvements.
8913         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
8914         watchpoints and PR external/20207 watchpoints.
8915         * nat/aarch64-linux-hw-point.c
8916         (kernel_supports_any_contiguous_range): New.
8917         (aarch64_watchpoint_offset): New.
8918         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
8919         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
8920         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
8921         (aarch64_align_watchpoint): New parameters aligned_offset_p and
8922         next_addr_orig_p.  Support PR external/20207 watchpoints.
8923         (aarch64_downgrade_regs): New.
8924         (aarch64_dr_state_insert_one_point): New parameters offset and
8925         addr_orig.
8926         (aarch64_dr_state_remove_one_point): Likewise.
8927         (aarch64_handle_breakpoint): Update caller.
8928         (aarch64_handle_aligned_watchpoint): Likewise.
8929         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
8930         aligned_offset.
8931         (aarch64_linux_set_debug_regs): Remove const from state.  Call
8932         aarch64_downgrade_regs.
8933         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
8934         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
8935         (DR_CONTROL_MASK): ... this.
8936         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
8937         (unsigned int aarch64_watchpoint_offset): New prototype.
8938         (aarch64_linux_set_debug_regs): Remove const from state.
8939         * utils.c (align_up, align_down): Move to ...
8940         * common/common-utils.c (align_up, align_down): ... here.
8941         * utils.h (align_up, align_down): Move to ...
8942         * common/common-utils.h (align_up, align_down): ... here.
8943
8944 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
8945
8946         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
8947         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
8948         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
8949         Re-implement to match the ABI as summarized in GCC's
8950         gcc/config/sparc/sparc.c.  All callers updated.
8951         (sparc32_store_arguments): Remove assertion.
8952
8953 2018-05-04  Tom Tromey  <tom@tromey.com>
8954
8955         * printcmd.c: Don't include tui.h.
8956         (decode_format): Use skip_spaces.
8957
8958 2018-05-04  Tom Tromey  <tom@tromey.com>
8959
8960         PR gdb/22619:
8961         * printcmd.c (last_count): New global.
8962         (x_command): Use saved count when repeating.
8963
8964 2018-05-04  Tom Tromey  <tom@tromey.com>
8965
8966         * nto-procfs.c (do_closedir_cleanup): Remove.
8967         (procfs_pidlist): Use gdb_dir_up.
8968         * procfs.c (do_closedir_cleanup): Remove.
8969         (proc_update_threads): Use gdb_dir_up.
8970         * common/filestuff.h (struct gdb_dir_deleter): New.
8971         (gdb_dir_up): New typedef.
8972
8973 2018-05-04  Tom Tromey  <tom@tromey.com>
8974
8975         * ada-lang.c (print_mention_exception): Use std::string.
8976
8977 2018-05-04  Tom Tromey  <tom@tromey.com>
8978
8979         * ada-lang.c (create_excep_cond_exprs): Update.
8980         (ada_exception_catchpoint_cond_string): Use std::string.
8981
8982 2018-05-04  Tom Tromey  <tom@tromey.com>
8983
8984         * ada-lang.c (xget_renaming_scope): Return std::string.
8985         (old_renaming_is_invisible): Update.
8986
8987 2018-05-04  Tom Tromey  <tom@tromey.com>
8988
8989         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
8990         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
8991
8992 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
8993
8994         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
8995
8996 2018-05-04  Tom Tromey  <tom@tromey.com>
8997
8998         * remote.c (remote_query_supported_append): Change type.
8999         (remote_check_symbols): Update.
9000
9001 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
9002
9003         PR gdb/11420
9004         * configure.ac: Prepend libpython.
9005         * python/python-config.py: Likewise.
9006         * configure: Regenerate.
9007
9008 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
9009
9010         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
9011
9012 2018-05-03  Pedro Alves  <palves@redhat.com>
9013
9014         * s390-linux-nat.c
9015         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
9016         override.  Write 'true' instead of '1'.
9017         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
9018         declaration.
9019
9020 2018-05-02  Pedro Alves  <palves@redhat.com>
9021
9022         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
9023         add_inf_child_target.
9024         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
9025         add_inf_child_target.
9026         * aix-thread.c (aix_thread_target_info): New.
9027         (aix_thread_target) <shortname, longname, doc>: Delete.
9028         <info>: New.
9029         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
9030         add_inf_child_target.
9031         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
9032         add_inf_child_target.
9033         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
9034         add_inf_child_target.
9035         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
9036         add_inf_child_target.
9037         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
9038         add_inf_child_target.
9039         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
9040         add_inf_child_target.
9041         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
9042         add_inf_child_target.
9043         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
9044         add_inf_child_target.
9045         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
9046         add_inf_child_target.
9047         * bfd-target.c (target_bfd_target_info): New.
9048         (target_bfd) <shortname, longname, doc>: Delete.
9049         <info>: New.
9050         * bsd-kvm.c (bsd_kvm_target_info): New.
9051         (bsd_kvm_target) <shortname, longname, doc>: Delete.
9052         <info>: New.
9053         (bsd_kvm_target::open): Rename to ...
9054         (bsd_kvm_target_open): ... this.  Adjust.
9055         * bsd-uthread.c (bsd_uthread_target_info): New.
9056         (bsd_uthread_target) <shortname, longname, doc>: Delete.
9057         <info>: New.
9058         * corefile.c (core_file_command): Adjust.
9059         * corelow.c (core_target_info): New.
9060         (core_target) <shortname, longname, doc>: Delete.
9061         <info>: New.
9062         (core_target::open): Rename to ...
9063         (core_target_open): ... this.  Adjust.
9064         * ctf.c (ctf_target_info): New.
9065         (ctf_target) <shortname, longname, doc>: Delete.
9066         <info>: New.
9067         (ctf_target::open): Rename to ...
9068         (ctf_target_open): ... this.
9069         (_initialize_ctf): Adjust.
9070         * exec.c (exec_target_info): New.
9071         (exec_target) <shortname, longname, doc>: Delete.
9072         <info>: New.
9073         (exec_target::open): Rename to ...
9074         (exec_target_open): ... this.
9075         * gdbcore.h (core_target_open): Declare.
9076         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
9077         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
9078         add_inf_child_target.
9079         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
9080         add_inf_child_target.
9081         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
9082         add_inf_child_target.
9083         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
9084         add_inf_child_target.
9085         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
9086         add_inf_child_target.
9087         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
9088         add_inf_child_target.
9089         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
9090         add_inf_child_target.
9091         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
9092         add_inf_child_target.
9093         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
9094         add_inf_child_target.
9095         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
9096         add_inf_child_target.
9097         * inf-child.c (inf_child_target_info): New.
9098         (inf_child_target::info): New.
9099         (inf_child_open_target): Remove 'target' parameter.  Use
9100         get_native_target instead.
9101         (inf_child_target::open): Delete.
9102         (add_inf_child_target): New.
9103         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
9104         Delete.
9105         <info>: New.
9106         (add_inf_child_target): Declare.
9107         (inf_child_open_target): Declare.
9108         * linux-thread-db.c (thread_db_target_info): New.
9109         (thread_db_target) <shortname, longname, doc>: Delete.
9110         <info>: New.
9111         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
9112         add_inf_child_target.
9113         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
9114         add_inf_child_target.
9115         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
9116         add_inf_child_target.
9117         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
9118         add_inf_child_target.
9119         * make-target-delegates (print_class): Adjust.
9120         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
9121         add_inf_child_target.
9122         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
9123         add_inf_child_target.
9124         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
9125         add_inf_child_target.
9126         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
9127         add_inf_child_target.
9128         * nto-procfs.c (nto_native_target_info): New.
9129         (nto_procfs_target_native) <shortname, longname, doc>:
9130         Delete.
9131         <info>: New.
9132         (nto_procfs_target_info): New.
9133         (nto_procfs_target_procfs) <shortname, longname, doc>:
9134         Delete.
9135         <info>: New.
9136         (init_procfs_targets): Adjust.
9137         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
9138         add_inf_child_target.
9139         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
9140         add_inf_child_target.
9141         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
9142         add_inf_child_target.
9143         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
9144         add_inf_child_target.
9145         * ravenscar-thread.c (ravenscar_target_info): New.
9146         (ravenscar_thread_target) <shortname, longname, doc>:
9147         Delete.
9148         <info>: New.
9149         * record-btrace.c (record_btrace_target_info):
9150         (record_btrace_target) <shortname, longname, doc>: Delete.
9151         <info>: New.
9152         (record_btrace_target::open): Rename to ...
9153         (record_btrace_target_open): ... this.  Adjust.
9154         * record-full.c (record_longname, record_doc): New.
9155         (record_full_base_target) <shortname, longname, doc>: Delete.
9156         <info>: New.
9157         (record_full_target_info): New.
9158         (record_full_target): <shortname>: Delete.
9159         <info>: New.
9160         (record_full_core_open_1, record_full_open_1): Update comments.
9161         (record_full_base_target::open): Rename to ...
9162         (record_full_open): ... this.
9163         (cmd_record_full_restore): Update.
9164         (_initialize_record_full): Update.
9165         * remote-sim.c (remote_sim_target_info): New.
9166         (gdbsim_target) <shortname, longname, doc>: Delete.
9167         <info>: New.
9168         (gdbsim_target::open): Rename to ...
9169         (gdbsim_target_open): ... this.
9170         (_initialize_remote_sim): Adjust.
9171         * remote.c (remote_doc): New.
9172         (remote_target_info): New.
9173         (remote_target) <shortname, longname, doc>: Delete.
9174         <info>: New.
9175         (extended_remote_target_info): New.
9176         (extended_remote_target) <shortname, longname, doc>: Delete.
9177         <info>: New.
9178         (remote_target::open_1): Make static.  Adjust.
9179         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
9180         * s390-linux-nat.c (_initialize_s390_nat): Use
9181         add_inf_child_target.
9182         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
9183         add_inf_child_target.
9184         * sol-thread.c (thread_db_target_info): New.
9185         (sol_thread_target) <shortname, longname, doc>: Delete.
9186         <info>: New.
9187         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
9188         add_inf_child_target.
9189         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
9190         add_inf_child_target.
9191         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
9192         add_inf_child_target.
9193         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
9194         add_inf_child_target.
9195         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
9196         add_inf_child_target.
9197         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
9198         add_inf_child_target.
9199         * spu-linux-nat.c (_initialize_spu_nat): Use
9200         add_inf_child_target.
9201         * spu-multiarch.c (spu_multiarch_target_info): New.
9202         (spu_multiarch_target) <shortname, longname, doc>: Delete.
9203         <info>: New.
9204         * target-delegates.c: Regenerate.
9205         * target.c: Include <unordered_map>.
9206         (target_ops_p): Delete.
9207         (DEF_VEC_P(target_ops_p)): Delete.
9208         (target_factories): New.
9209         (test_target_info): New.
9210         (test_target_ops::info): New.
9211         (open_target): Adjust to use target_factories.
9212         (add_target_with_completer): Rename to ...
9213         (add_target): ... this.  Change prototype.  Register target_info
9214         and open callback in target_factories.  Register target_info in
9215         command context instead of target_ops.
9216         (add_target): Delete old implementation.
9217         (add_deprecated_target_alias): Change prototype.  Adjust.
9218         (the_native_target): New.
9219         (set_native_target, get_native_target): New.
9220         (find_default_run_target): Use the_native_target.
9221         (find_attach_target, find_run_target): Simplify.
9222         (target_ops::open): Delete.
9223         (dummy_target_info): New.
9224         (dummy_target::shortname, dummy_target::longname)
9225         (dummy_target::doc): Delete.
9226         (dummy_target::info): New.
9227         (debug_target::shortname, debug_target::longname)
9228         (debug_target::doc): Delete.
9229         (debug_target::info): New.
9230         * target.h (struct target_info): New.
9231         (target_ops::~target_ops): Add comment.
9232         (target_ops::info): New.
9233         (target_ops::shortname, target_ops::longname, target_ops::doc): No
9234         longer virtual.  Implement in terms of target_info.
9235         (set_native_target, get_native_target): Declare.
9236         (target_open_ftype): New.
9237         (add_target, add_target_with_completer)
9238         (add_deprecated_target_alias): Change prototype.
9239         (test_target) <shortname, longname, doc>: Delete.
9240         <info>: New.
9241         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
9242         add_inf_child_target.
9243         * tracefile-tfile.c (tfile_target_info): New.
9244         (tfile_target) <shortname, longname, doc>: Delete.
9245         <info>: New.
9246         (tfile_target::open): Rename to ...
9247         (tfile_target_open): ... this.
9248         (_initialize_tracefile_tfile): Adjust.
9249         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
9250         add_inf_child_target.
9251         * windows-nat.c (_initialize_windows_nat): Use
9252         add_inf_child_target.
9253         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
9254         add_inf_child_target.
9255
9256 2018-05-02  Pedro Alves  <palves@redhat.com>
9257
9258         * linux-nat.h (linux_nat_target) <low_new_thread,
9259         low_delete_thread, low_new_fork, low_forget_process,
9260         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
9261         New virtual methods.
9262         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9263         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
9264         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
9265         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9266         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
9267         Delete.
9268         * linux-fork.c (delete_fork): Adjust to call low method.
9269         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
9270         (linux_nat_new_fork, linux_nat_forget_process_hook)
9271         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
9272         (linux_nat_status_is_event):
9273         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
9274         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
9275         to call low method.
9276         (sigtrap_is_event): Rename to ...
9277         (linux_nat_target::low_status_is_event): ... this.
9278         (linux_nat_set_status_is_event): Delete.
9279         (save_stop_reason, linux_nat_wait_1)
9280         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
9281         low methods.
9282         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
9283         (linux_nat_set_new_fork, linux_nat_set_forget_process)
9284         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
9285         (linux_nat_set_prepare_to_resume): Delete.
9286         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
9287         low virtual methods.
9288         * amd64-linux-nat.c: Likewise.
9289         * arm-linux-nat.c: Likewise.
9290         * i386-linux-nat.c: Likewise.
9291         * ia64-linux-nat.c: Likewise.
9292         * mips-linux-nat.c: Likewise.
9293         * ppc-linux-nat.c: Likewise.
9294         * s390-linux-nat.c: Likewise.
9295         * sparc64-linux-nat.c: Likewise.
9296         * x86-linux-nat.c: Likewise.
9297         * x86-linux-nat.h: Include "nat/x86-linux.h".
9298         (x86_linux_nat_target) <low_new_fork, low_forget_process,
9299         low_prepare_to_resume, low_new_thread, low_delete_thread>:
9300         Override methods.
9301
9302 2018-05-02  Pedro Alves  <palves@redhat.com>
9303
9304         * target.h (target_ops)
9305         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
9306         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
9307         stopped_by_watchpoint, have_continuable_watchpoint,
9308         stopped_data_address, watchpoint_addr_within_range,
9309         can_accel_watchpoint_condition, can_run, thread_alive,
9310         has_all_memory, has_memory, has_stack, has_registers,
9311         has_execution, can_async_p, is_async_p, supports_non_stop,
9312         always_non_stop_p, can_execute_reverse, supports_multi_process,
9313         supports_enable_disable_tracepoint,
9314         supports_disable_randomization, supports_string_tracing,
9315         supports_evaluation_of_breakpoint_conditions,
9316         can_run_breakpoint_commands, filesystem_is_local,
9317         can_download_tracepoint, get_trace_state_variable_value,
9318         set_trace_notes, get_tib_address, use_agent, can_use_agent,
9319         record_is_replaying, record_will_replay,
9320         augmented_libraries_svr4_read>: Adjust to return bool.
9321         * aarch64-linux-nat.c: All implementations adjusted.
9322         * aix-thread.c: All implementations adjusted.
9323         * arm-linux-nat.c: All implementations adjusted.
9324         * breakpoint.c: All implementations adjusted.
9325         * bsd-kvm.c: All implementations adjusted.
9326         * bsd-uthread.c: All implementations adjusted.
9327         * corelow.c: All implementations adjusted.
9328         * ctf.c: All implementations adjusted.
9329         * darwin-nat.c: All implementations adjusted.
9330         * darwin-nat.h: All implementations adjusted.
9331         * exec.c: All implementations adjusted.
9332         * fbsd-nat.c: All implementations adjusted.
9333         * fbsd-nat.h: All implementations adjusted.
9334         * gnu-nat.c: All implementations adjusted.
9335         * gnu-nat.h: All implementations adjusted.
9336         * go32-nat.c: All implementations adjusted.
9337         * ia64-linux-nat.c: All implementations adjusted.
9338         * inf-child.c: All implementations adjusted.
9339         * inf-child.h: All implementations adjusted.
9340         * inf-ptrace.c: All implementations adjusted.
9341         * inf-ptrace.h: All implementations adjusted.
9342         * linux-nat.c: All implementations adjusted.
9343         * linux-nat.h: All implementations adjusted.
9344         * mips-linux-nat.c: All implementations adjusted.
9345         * nto-procfs.c: All implementations adjusted.
9346         * ppc-linux-nat.c: All implementations adjusted.
9347         * procfs.c: All implementations adjusted.
9348         * ravenscar-thread.c: All implementations adjusted.
9349         * record-btrace.c: All implementations adjusted.
9350         * record-full.c: All implementations adjusted.
9351         * remote-sim.c: All implementations adjusted.
9352         * remote.c: All implementations adjusted.
9353         * s390-linux-nat.c: All implementations adjusted.
9354         * sol-thread.c: All implementations adjusted.
9355         * spu-multiarch.c: All implementations adjusted.
9356         * target-delegates.c: All implementations adjusted.
9357         * target.c: All implementations adjusted.
9358         * target.h: All implementations adjusted.
9359         * tracefile-tfile.c: All implementations adjusted.
9360         * tracefile.c: All implementations adjusted.
9361         * tracefile.h: All implementations adjusted.
9362         * windows-nat.c: All implementations adjusted.
9363         * x86-linux-nat.h: All implementations adjusted.
9364         * x86-nat.h: All implementations adjusted.
9365
9366 2018-05-02  Pedro Alves  <palves@redhat.com>
9367
9368         * make-target-delegates (scan_target_h): Don't trim lines here.
9369         Replace sequences of tabs and/or whitespace with a single
9370         whitespace.
9371         (top level, parsing methods): Trim each line before processing it
9372         here.
9373
9374 2018-05-02  Pedro Alves  <palves@redhat.com>
9375             John Baldwin  <jhb@freebsd.org>
9376
9377         * target.h (enum strata) <debug_stratum>: New.
9378         (struct target_ops) <all delegation methods>: Replace by C++
9379         virtual methods, and drop "to_" prefix.  All references updated
9380         throughout.
9381         <to_shortname, to_longname, to_doc, to_data,
9382         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
9383         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
9384         virtual methods.  All references updated throughout.
9385         <can_attach, supports_terminal_ours, can_create_inferior,
9386         get_thread_control_capabilities, attach_no_wait>: New
9387         virtual methods.
9388         <insert_breakpoint, remove_breakpoint>: Now
9389         TARGET_DEFAULT_NORETURN methods.
9390         <info_proc>: Now returns bool.
9391         <to_magic>: Delete.
9392         (OPS_MAGIC): Delete.
9393         (current_target): Delete.  All references replaced by references
9394         to ...
9395         (target_stack): ... this.  New.
9396         (target_shortname, target_longname): Adjust.
9397         (target_can_run): Now a function declaration.
9398         (default_child_has_all_memory, default_child_has_memory)
9399         (default_child_has_stack, default_child_has_registers)
9400         (default_child_has_execution): Remove target_ops parameter.
9401         (complete_target_initialization): Delete.
9402         (memory_breakpoint_target): New template class.
9403         (test_target_ops): Refactor as a C++ class with virtual methods.
9404         * make-target-delegates (NAME_PART): Tighten.
9405         (POINTER_PART, CP_SYMBOL): New.
9406         (SIMPLE_RETURN_PART): Reimplement.
9407         (VEC_RETURN_PART): Expect less.
9408         (RETURN_PART, VIRTUAL_PART): New.
9409         (METHOD): Adjust to C++ virtual methods.
9410         (scan_target_h): Remove reference to C99.
9411         (dname): Output "target_ops::" prefix.
9412         (write_function_header): Adjust to output a C++ class method.
9413         (write_declaration): New.
9414         (write_delegator): Adjust to output a C++ class method.
9415         (tdname): Output "dummy_target::" prefix.
9416         (write_tdefault, write_debugmethod): Adjust to output a C++ class
9417         method.
9418         (tdefault_names, debug_names): Delete.
9419         (return_types, tdefaults, styles, argtypes_array): New.
9420         (top level): All methods are delegators.
9421         (print_class): New.
9422         (top level): Print dummy_target and debug_target classes.
9423         * target-delegates.c: Regenerate.
9424         * target-debug.h (target_debug_print_enum_info_proc_what)
9425         (target_debug_print_thread_control_capabilities)
9426         (target_debug_print_thread_info_p): New.
9427         * target.c (dummy_target): Delete.
9428         (the_dummy_target, the_debug_target): New.
9429         (target_stack): Now extern.
9430         (set_targetdebug): Push/unpush debug target.
9431         (default_child_has_all_memory, default_child_has_memory)
9432         (default_child_has_stack, default_child_has_registers)
9433         (default_child_has_execution): Remove target_ops parameter.
9434         (complete_target_initialization): Delete.
9435         (add_target_with_completer): No longer call
9436         complete_target_initialization.
9437         (target_supports_terminal_ours): Use regular delegation.
9438         (update_current_target): Delete.
9439         (push_target): No longer check magic number.  Don't call
9440         update_current_target.
9441         (unpush_target): Don't call update_current_target.
9442         (target_is_pushed): No longer check magic number.
9443         (target_require_runnable): Skip for all stratums over
9444         process_stratum.
9445         (target_ops::info_proc): New.
9446         (target_info_proc): Use find_target_at and
9447         find_default_run_target.
9448         (target_supports_disable_randomization): Use regular delegation.
9449         (target_get_osdata): Use find_target_at.
9450         (target_ops::open, target_ops::close, target_ops::can_attach)
9451         (target_ops::attach, target_ops::can_create_inferior)
9452         (target_ops::create_inferior, target_ops::can_run)
9453         (target_can_run): New.
9454         (default_fileio_target): Use regular delegation.
9455         (target_ops::fileio_open, target_ops::fileio_pwrite)
9456         (target_ops::fileio_pread, target_ops::fileio_fstat)
9457         (target_ops::fileio_close, target_ops::fileio_unlink)
9458         (target_ops::fileio_readlink): New.
9459         (target_fileio_open_1, target_fileio_unlink)
9460         (target_fileio_readlink): Always call the target method.  Handle
9461         FILEIO_ENOSYS.
9462         (return_zero, return_zero_has_execution): Delete.
9463         (init_dummy_target): Delete.
9464         (dummy_target::dummy_target, dummy_target::shortname)
9465         (dummy_target::longname, dummy_target::doc)
9466         (debug_target::debug_target, debug_target::shortname)
9467         (debug_target::longname, debug_target::doc): New.
9468         (target_supports_delete_record): Use regular delegation.
9469         (setup_target_debug): Delete.
9470         (maintenance_print_target_stack): Skip debug_stratum.
9471         (initialize_targets): Instantiate the_dummy_target and
9472         the_debug_target.
9473         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
9474         use target_stack.
9475         (target_auxv_search, fprint_target_auxv): Adjust.
9476         (info_auxv_command): Adjust to use target_stack.
9477         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
9478         * exceptions.c (print_flush): Handle a NULL target_stack.
9479         * regcache.c (target_ops_no_register): Refactor as class with
9480         virtual methods.
9481
9482         * exec.c (exec_target): New class.
9483         (exec_ops): Now an exec_target.
9484         (exec_open, exec_close_1, exec_get_section_table)
9485         (exec_xfer_partial, exec_files_info, exec_has_memory)
9486         (exec_make_note_section): Refactor as exec_target methods.
9487         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
9488         Delete.
9489         (exec_target::find_memory_regions): New.
9490         (_initialize_exec): Don't call init_exec_ops.
9491         * gdbcore.h (exec_file_clear): Delete.
9492
9493         * corefile.c (core_target): Delete.
9494         (core_file_command): Adjust.
9495         * corelow.c (core_target): New class.
9496         (the_core_target): New.
9497         (core_close): Remove target_ops parameter.
9498         (core_close_cleanup): Adjust.
9499         (core_target::close): New.
9500         (core_open, core_detach, get_core_registers, core_files_info)
9501         (core_xfer_partial, core_thread_alive, core_read_description)
9502         (core_pid_to_str, core_thread_name, core_has_memory)
9503         (core_has_stack, core_has_registers, core_info_proc): Rework as
9504         core_target methods.
9505         (ignore, core_remove_breakpoint, init_core_ops): Delete.
9506         (_initialize_corelow): Initialize the_core_target.
9507         * gdbcore.h (core_target): Delete.
9508         (the_core_target): New.
9509
9510         * ctf.c: (ctf_target): New class.
9511         (ctf_ops): Now a ctf_target.
9512         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
9513         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
9514         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
9515         methods.
9516         (init_ctf_ops): Delete.
9517         (_initialize_ctf): Don't call it.
9518         * tracefile-tfile.c (tfile_target): New class.
9519         (tfile_ops): Now a tfile_target.
9520         (tfile_open, tfile_close, tfile_files_info)
9521         (tfile_get_tracepoint_status, tfile_trace_find)
9522         (tfile_fetch_registers, tfile_xfer_partial)
9523         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
9524         Refactor as tfile_target methods.
9525         (tfile_xfer_partial_features): Remove target_ops parameter.
9526         (init_tfile_ops): Delete.
9527         (_initialize_tracefile_tfile): Don't call it.
9528         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
9529         (tracefile_has_stack, tracefile_has_registers)
9530         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
9531         tracefile_target methods.
9532         (init_tracefile_ops): Delete.
9533         (tracefile_target::tracefile_target): New.
9534         * tracefile.h: Include "target.h".
9535         (tracefile_target): New class.
9536         (init_tracefile_ops): Delete.
9537
9538         * spu-multiarch.c (spu_multiarch_target): New class.
9539         (spu_ops): Now a spu_multiarch_target.
9540         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
9541         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
9542         (spu_search_memory, spu_mourn_inferior): Refactor as
9543         spu_multiarch_target methods.
9544         (init_spu_ops): Delete.
9545         (_initialize_spu_multiarch): Remove references to init_spu_ops,
9546         complete_target_initialization.
9547
9548         * ravenscar-thread.c (ravenscar_thread_target): New class.
9549         (ravenscar_ops): Now a ravenscar_thread_target.
9550         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
9551         (ravenscar_thread_alive, ravenscar_pid_to_str)
9552         (ravenscar_fetch_registers, ravenscar_store_registers)
9553         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
9554         (ravenscar_stopped_by_hw_breakpoint)
9555         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
9556         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
9557         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
9558         methods.
9559         (init_ravenscar_thread_ops): Delete.
9560         (_initialize_ravenscar): Remove references to
9561         init_ravenscar_thread_ops and complete_target_initialization.
9562
9563         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
9564         (bsd_uthread_target): New class.
9565         (bsd_uthread_ops): Now a bsd_uthread_target.
9566         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
9567         (bsd_uthread_close, bsd_uthread_mourn_inferior)
9568         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
9569         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
9570         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
9571         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
9572         (bsd_uthread_target): Delete function.
9573         (_initialize_bsd_uthread): Remove reference to
9574         complete_target_initialization.
9575
9576         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
9577         (target_bfd): ... this new class.
9578         (target_bfd_xfer_partial, target_bfd_get_section_table)
9579         (target_bfd_close): Refactor as target_bfd methods.
9580         (target_bfd::~target_bfd): New.
9581         (target_bfd_reopen): Adjust.
9582         (target_bfd::close): New.
9583
9584         * record-btrace.c (record_btrace_target): New class.
9585         (record_btrace_ops): Now a record_btrace_target.
9586         (record_btrace_open, record_btrace_stop_recording)
9587         (record_btrace_disconnect, record_btrace_close)
9588         (record_btrace_async, record_btrace_info)
9589         (record_btrace_insn_history, record_btrace_insn_history_range)
9590         (record_btrace_insn_history_from, record_btrace_call_history)
9591         (record_btrace_call_history_range)
9592         (record_btrace_call_history_from, record_btrace_record_method)
9593         (record_btrace_is_replaying, record_btrace_will_replay)
9594         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
9595         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
9596         (record_btrace_store_registers, record_btrace_prepare_to_store)
9597         (record_btrace_to_get_unwinder)
9598         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
9599         (record_btrace_commit_resume, record_btrace_wait)
9600         (record_btrace_stop, record_btrace_can_execute_reverse)
9601         (record_btrace_stopped_by_sw_breakpoint)
9602         (record_btrace_supports_stopped_by_sw_breakpoint)
9603         (record_btrace_stopped_by_hw_breakpoint)
9604         (record_btrace_supports_stopped_by_hw_breakpoint)
9605         (record_btrace_update_thread_list, record_btrace_thread_alive)
9606         (record_btrace_goto_begin, record_btrace_goto_end)
9607         (record_btrace_goto, record_btrace_stop_replaying_all)
9608         (record_btrace_execution_direction)
9609         (record_btrace_prepare_to_generate_core)
9610         (record_btrace_done_generating_core): Refactor as
9611         record_btrace_target methods.
9612         (init_record_btrace_ops): Delete.
9613         (_initialize_record_btrace): Remove reference to
9614         init_record_btrace_ops.
9615         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
9616         the execution_direction global.
9617         (record_full_base_target, record_full_target)
9618         (record_full_core_target): New classes.
9619         (record_full_ops): Now a record_full_target.
9620         (record_full_core_ops): Now a record_full_core_target.
9621         (record_full_target::detach, record_full_target::disconnect)
9622         (record_full_core_target::disconnect)
9623         (record_full_target::mourn_inferior, record_full_target::kill):
9624         New.
9625         (record_full_open, record_full_close, record_full_async): Refactor
9626         as methods of the record_full_base_target class.
9627         (record_full_resume, record_full_commit_resume): Refactor
9628         as methods of the record_full_target class.
9629         (record_full_wait, record_full_stopped_by_watchpoint)
9630         (record_full_stopped_data_address)
9631         (record_full_stopped_by_sw_breakpoint)
9632         (record_full_supports_stopped_by_sw_breakpoint)
9633         (record_full_stopped_by_hw_breakpoint)
9634         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
9635         methods of the record_full_base_target class.
9636         (record_full_store_registers, record_full_xfer_partial)
9637         (record_full_insert_breakpoint, record_full_remove_breakpoint):
9638         Refactor as methods of the record_full_target class.
9639         (record_full_can_execute_reverse, record_full_get_bookmark)
9640         (record_full_goto_bookmark, record_full_execution_direction)
9641         (record_full_record_method, record_full_info, record_full_delete)
9642         (record_full_is_replaying, record_full_will_replay)
9643         (record_full_goto_begin, record_full_goto_end, record_full_goto)
9644         (record_full_stop_replaying): Refactor as methods of the
9645         record_full_base_target class.
9646         (record_full_core_resume, record_full_core_kill)
9647         (record_full_core_fetch_registers)
9648         (record_full_core_prepare_to_store)
9649         (record_full_core_store_registers, record_full_core_xfer_partial)
9650         (record_full_core_insert_breakpoint)
9651         (record_full_core_remove_breakpoint)
9652         (record_full_core_has_execution): Refactor
9653         as methods of the record_full_core_target class.
9654         (record_full_base_target::supports_delete_record): New.
9655         (init_record_full_ops): Delete.
9656         (init_record_full_core_ops): Delete.
9657         (record_full_save): Refactor as method of the
9658         record_full_base_target class.
9659         (_initialize_record_full): Remove references to
9660         init_record_full_ops and init_record_full_core_ops.
9661
9662         * remote.c (remote_target, extended_remote_target): New classes.
9663         (remote_ops): Now a remote_target.
9664         (extended_remote_ops): Now an extended_remote_target.
9665         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
9666         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
9667         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
9668         (remote_pass_signals, remote_set_syscall_catchpoint)
9669         (remote_program_signals, )
9670         (remote_thread_always_alive): Remove target_ops parameter.
9671         (remote_thread_alive, remote_thread_name)
9672         (remote_update_thread_list, remote_threads_extra_info)
9673         (remote_static_tracepoint_marker_at)
9674         (remote_static_tracepoint_markers_by_strid)
9675         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
9676         (remote_open): Refactor as methods of remote_target.
9677         (extended_remote_open, extended_remote_detach)
9678         (extended_remote_attach, extended_remote_post_attach):
9679         (extended_remote_supports_disable_randomization)
9680         (extended_remote_create_inferior): : Refactor as method of
9681         extended_remote_target.
9682         (remote_set_permissions, remote_open_1, remote_detach)
9683         (remote_follow_fork, remote_follow_exec, remote_disconnect)
9684         (remote_resume, remote_commit_resume, remote_stop)
9685         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
9686         (remote_terminal_ours, remote_wait, remote_fetch_registers)
9687         (remote_prepare_to_store, remote_store_registers)
9688         (remote_flash_erase, remote_flash_done, remote_files_info)
9689         (remote_kill, remote_mourn, remote_insert_breakpoint)
9690         (remote_remove_breakpoint, remote_insert_watchpoint)
9691         (remote_watchpoint_addr_within_range)
9692         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
9693         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
9694         (remote_supports_stopped_by_sw_breakpoint)
9695         (remote_stopped_by_hw_breakpoint)
9696         (remote_supports_stopped_by_hw_breakpoint)
9697         (remote_stopped_by_watchpoint, remote_stopped_data_address)
9698         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
9699         (remote_verify_memory): Refactor as methods of remote_target.
9700         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
9701         parameter.
9702         (remote_xfer_partial, remote_get_memory_xfer_limit)
9703         (remote_search_memory, remote_rcmd, remote_memory_map)
9704         (remote_pid_to_str, remote_get_thread_local_address)
9705         (remote_get_tib_address, remote_read_description): Refactor as
9706         methods of remote_target.
9707         (remote_target::fileio_open, remote_target::fileio_pwrite)
9708         (remote_target::fileio_pread, remote_target::fileio_close): New.
9709         (remote_hostio_readlink, remote_hostio_fstat)
9710         (remote_filesystem_is_local, remote_can_execute_reverse)
9711         (remote_supports_non_stop, remote_supports_disable_randomization)
9712         (remote_supports_multi_process, remote_supports_cond_breakpoints)
9713         (remote_supports_enable_disable_tracepoint)
9714         (remote_supports_string_tracing)
9715         (remote_can_run_breakpoint_commands, remote_trace_init)
9716         (remote_download_tracepoint, remote_can_download_tracepoint)
9717         (remote_download_trace_state_variable, remote_enable_tracepoint)
9718         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
9719         (remote_trace_start, remote_get_trace_status)
9720         (remote_get_tracepoint_status, remote_trace_stop)
9721         (remote_trace_find, remote_get_trace_state_variable_value)
9722         (remote_save_trace_data, remote_get_raw_trace_data)
9723         (remote_set_disconnected_tracing, remote_core_of_thread)
9724         (remote_set_circular_trace_buffer, remote_traceframe_info)
9725         (remote_get_min_fast_tracepoint_insn_len)
9726         (remote_set_trace_buffer_size, remote_set_trace_notes)
9727         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
9728         (remote_disable_btrace, remote_teardown_btrace)
9729         (remote_read_btrace, remote_btrace_conf)
9730         (remote_augmented_libraries_svr4_read, remote_load)
9731         (remote_pid_to_exec_file, remote_can_do_single_step)
9732         (remote_execution_direction, remote_thread_handle_to_thread_info):
9733         Refactor as methods of remote_target.
9734         (init_remote_ops, init_extended_remote_ops): Delete.
9735         (remote_can_async_p, remote_is_async_p, remote_async)
9736         (remote_thread_events, remote_upload_tracepoints)
9737         (remote_upload_trace_state_variables): Refactor as methods of
9738         remote_target.
9739         (_initialize_remote): Remove references to init_remote_ops and
9740         init_extended_remote_ops.
9741
9742         * remote-sim.c (gdbsim_target): New class.
9743         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
9744         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
9745         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
9746         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
9747         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
9748         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
9749         Refactor as methods of gdbsim_target.
9750         (gdbsim_ops): Now a gdbsim_target.
9751         (init_gdbsim_ops): Delete.
9752         (gdbsim_cntrl_c): Adjust.
9753         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
9754
9755         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
9756         (the_amd64_linux_nat_target): New.
9757         (amd64_linux_fetch_inferior_registers)
9758         (amd64_linux_store_inferior_registers): Refactor as methods of
9759         amd64_linux_nat_target.
9760         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
9761         * i386-linux-nat.c: Don't include "linux-nat.h".
9762         (i386_linux_nat_target): New class.
9763         (the_i386_linux_nat_target): New.
9764         (i386_linux_fetch_inferior_registers)
9765         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
9766         as methods of i386_linux_nat_target.
9767         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
9768         * inf-child.c (inf_child_ops): Delete.
9769         (inf_child_fetch_inferior_registers)
9770         (inf_child_store_inferior_registers): Delete.
9771         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
9772         methods of inf_child_target.
9773         (inf_child_target::supports_terminal_ours)
9774         (inf_child_target::terminal_init)
9775         (inf_child_target::terminal_inferior)
9776         (inf_child_target::terminal_ours_for_output)
9777         (inf_child_target::terminal_ours, inf_child_target::interrupt)
9778         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
9779         New.
9780         (inf_child_open, inf_child_disconnect, inf_child_close)
9781         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
9782         (inf_child_post_startup_inferior, inf_child_can_run)
9783         (inf_child_pid_to_exec_file): Refactor as methods of
9784         inf_child_target.
9785         (inf_child_follow_fork): Delete.
9786         (inf_child_target::can_create_inferior)
9787         (inf_child_target::can_attach): New.
9788         (inf_child_target::has_all_memory, inf_child_target::has_memory)
9789         (inf_child_target::has_stack, inf_child_target::has_registers)
9790         (inf_child_target::has_execution): New.
9791         (inf_child_fileio_open, inf_child_fileio_pwrite)
9792         (inf_child_fileio_pread, inf_child_fileio_fstat)
9793         (inf_child_fileio_close, inf_child_fileio_unlink)
9794         (inf_child_fileio_readlink, inf_child_use_agent)
9795         (inf_child_can_use_agent): Refactor as methods of
9796         inf_child_target.
9797         (return_zero, inf_child_target): Delete.
9798         (inf_child_target::inf_child_target): New.
9799         * inf-child.h: Include "target.h".
9800         (inf_child_target): Delete function prototype.
9801         (inf_child_target): New class.
9802         (inf_child_open_target, inf_child_mourn_inferior)
9803         (inf_child_maybe_unpush_target): Delete.
9804         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
9805         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
9806         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
9807         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
9808         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
9809         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
9810         (inf_ptrace_wait, inf_ptrace_xfer_partial)
9811         (inf_ptrace_thread_alive, inf_ptrace_files_info)
9812         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
9813         methods of inf_ptrace_target.
9814         (inf_ptrace_target): Delete function.
9815         * inf-ptrace.h: Include "inf-child.h".
9816         (inf_ptrace_target): Delete function declaration.
9817         (inf_ptrace_target): New class.
9818         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
9819         * linux-nat.c (linux_target): New.
9820         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
9821         (linux_nat_target::~linux_nat_target): New.
9822         (linux_child_post_attach, linux_child_post_startup_inferior)
9823         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
9824         (linux_child_remove_fork_catchpoint)
9825         (linux_child_insert_vfork_catchpoint)
9826         (linux_child_remove_vfork_catchpoint)
9827         (linux_child_insert_exec_catchpoint)
9828         (linux_child_remove_exec_catchpoint)
9829         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
9830         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
9831         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
9832         (linux_nat_stopped_data_address)
9833         (linux_nat_stopped_by_sw_breakpoint)
9834         (linux_nat_supports_stopped_by_sw_breakpoint)
9835         (linux_nat_stopped_by_hw_breakpoint)
9836         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
9837         (linux_nat_kill, linux_nat_mourn_inferior)
9838         (linux_nat_xfer_partial, linux_nat_thread_alive)
9839         (linux_nat_update_thread_list, linux_nat_pid_to_str)
9840         (linux_nat_thread_name, linux_child_pid_to_exec_file)
9841         (linux_child_static_tracepoint_markers_by_strid)
9842         (linux_nat_is_async_p, linux_nat_can_async_p)
9843         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
9844         (linux_nat_supports_multi_process)
9845         (linux_nat_supports_disable_randomization, linux_nat_async)
9846         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
9847         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
9848         (linux_nat_fileio_open, linux_nat_fileio_readlink)
9849         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
9850         methods of linux_nat_target.
9851         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
9852         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
9853         parameter.
9854         (check_stopped_by_watchpoint): Adjust.
9855         (linux_xfer_partial): Delete.
9856         (linux_target_install_ops, linux_target, linux_nat_add_target):
9857         Delete.
9858         (linux_nat_target::linux_nat_target): New.
9859         * linux-nat.h: Include "inf-ptrace.h".
9860         (linux_nat_target): New.
9861         (linux_target, linux_target_install_ops, linux_nat_add_target):
9862         Delete function declarations.
9863         (linux_target): Declare global.
9864         * linux-thread-db.c (thread_db_target): New.
9865         (thread_db_target::thread_db_target): New.
9866         (thread_db_ops): Delete.
9867         (the_thread_db_target): New.
9868         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
9869         (thread_db_update_thread_list, thread_db_pid_to_str)
9870         (thread_db_extra_thread_info)
9871         (thread_db_thread_handle_to_thread_info)
9872         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
9873         (thread_db_resume): Refactor as methods of thread_db_target.
9874         (init_thread_db_ops): Delete.
9875         (_initialize_thread_db): Remove reference to init_thread_db_ops.
9876         * x86-linux-nat.c: Don't include "linux-nat.h".
9877         (super_post_startup_inferior): Delete.
9878         (x86_linux_nat_target::~x86_linux_nat_target): New.
9879         (x86_linux_child_post_startup_inferior)
9880         (x86_linux_read_description, x86_linux_enable_btrace)
9881         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
9882         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
9883         methods of x86_linux_nat_target.
9884         (x86_linux_create_target): Delete.  Bits folded ...
9885         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
9886         pointer.
9887         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
9888         (x86_linux_nat_target): New class.
9889         (x86_linux_create_target): Delete.
9890         (x86_linux_add_target): Now takes a linux_nat_target pointer.
9891         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
9892         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
9893         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
9894         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
9895         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
9896         make extern.
9897         (x86_use_watchpoints): Delete.
9898         * x86-nat.h: Include "breakpoint.h" and "target.h".
9899         (x86_use_watchpoints): Delete.
9900         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
9901         (x86_stopped_by_watchpoint, x86_stopped_data_address)
9902         (x86_insert_watchpoint, x86_remove_watchpoint)
9903         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
9904         (x86_stopped_by_hw_breakpoint): New declarations.
9905         (x86_nat_target): New template class.
9906
9907         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
9908         (the_ppc_linux_nat_target): New.
9909         (ppc_linux_fetch_inferior_registers)
9910         (ppc_linux_can_use_hw_breakpoint)
9911         (ppc_linux_region_ok_for_hw_watchpoint)
9912         (ppc_linux_ranged_break_num_registers)
9913         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
9914         (ppc_linux_insert_mask_watchpoint)
9915         (ppc_linux_remove_mask_watchpoint)
9916         (ppc_linux_can_accel_watchpoint_condition)
9917         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
9918         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
9919         (ppc_linux_watchpoint_addr_within_range)
9920         (ppc_linux_masked_watch_num_registers)
9921         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
9922         (ppc_linux_read_description): Refactor as methods of
9923         ppc_linux_nat_target.
9924         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
9925
9926         * procfs.c (procfs_xfer_partial): Delete forward declaration.
9927         (procfs_target): New class.
9928         (the_procfs_target): New.
9929         (procfs_target): Delete function.
9930         (procfs_auxv_parse, procfs_attach, procfs_detach)
9931         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
9932         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
9933         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
9934         (procfs_create_inferior, procfs_update_thread_list)
9935         (procfs_thread_alive, procfs_pid_to_str)
9936         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
9937         (procfs_stopped_data_address, procfs_insert_watchpoint)
9938         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
9939         (proc_find_memory_regions, procfs_info_proc)
9940         (procfs_make_note_section): Refactor as methods of procfs_target.
9941         (_initialize_procfs): Adjust.
9942         * sol-thread.c (sol_thread_target): New class.
9943         (sol_thread_ops): Now a sol_thread_target.
9944         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
9945         (sol_thread_fetch_registers, sol_thread_store_registers)
9946         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
9947         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
9948         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
9949         (init_sol_thread_ops): Delete.
9950         (_initialize_sol_thread): Adjust.  Remove references to
9951         init_sol_thread_ops and complete_target_initialization.
9952
9953         * windows-nat.c (windows_nat_target): New class.
9954         (windows_fetch_inferior_registers)
9955         (windows_store_inferior_registers, windows_resume, windows_wait)
9956         (windows_attach, windows_detach, windows_pid_to_exec_file)
9957         (windows_files_info, windows_create_inferior)
9958         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
9959         (windows_close, windows_pid_to_str, windows_xfer_partial)
9960         (windows_get_tib_address, windows_get_ada_task_ptid)
9961         (windows_thread_name, windows_thread_alive): Refactor as
9962         windows_nat_target methods.
9963         (do_initial_windows_stuff): Adjust.
9964         (windows_target): Delete function.
9965         (_initialize_windows_nat): Adjust.
9966
9967         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
9968         (darwin_mourn_inferior, darwin_kill_inferior)
9969         (darwin_create_inferior, darwin_attach, darwin_detach)
9970         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
9971         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
9972         (darwin_supports_multi_process): Refactor as darwin_nat_target
9973         methods.
9974         (darwin_resume_to, darwin_files_info): Delete.
9975         (_initialize_darwin_inferior): Rename to ...
9976         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
9977         * darwin-nat.h: Include "inf-child.h".
9978         (darwin_nat_target): New class.
9979         (darwin_complete_target): Delete.
9980         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
9981         (darwin_target): New.
9982         (i386_darwin_fetch_inferior_registers)
9983         (i386_darwin_store_inferior_registers): Refactor as methods of
9984         darwin_nat_target.
9985         (darwin_complete_target): Delete, with ...
9986         (_initialize_i386_darwin_nat): ... bits factored out here.
9987
9988         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
9989         (the_alpha_linux_nat_target): New.
9990         (alpha_linux_register_u_offset): Refactor as
9991         alpha_linux_nat_target method.
9992         (_initialize_alpha_linux_nat): Adjust.
9993         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
9994         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
9995         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
9996         methods of linux_nat_trad_target.
9997         (linux_trad_target): Delete.
9998         * linux-nat-trad.h (linux_trad_target): Delete function.
9999         (linux_nat_trad_target): New class.
10000         * mips-linux-nat.c (mips_linux_nat_target): New class.
10001         (super_fetch_registers, super_store_registers, super_close):
10002         Delete.
10003         (the_mips_linux_nat_target): New.
10004         (mips64_linux_regsets_fetch_registers)
10005         (mips64_linux_regsets_store_registers)
10006         (mips64_linux_fetch_registers, mips64_linux_store_registers)
10007         (mips_linux_register_u_offset, mips_linux_read_description)
10008         (mips_linux_can_use_hw_breakpoint)
10009         (mips_linux_stopped_by_watchpoint)
10010         (mips_linux_stopped_data_address)
10011         (mips_linux_region_ok_for_hw_watchpoint)
10012         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
10013         (mips_linux_close): Refactor as methods of mips_linux_nat.
10014         (_initialize_mips_linux_nat): Adjust to C++ification.
10015
10016         * aix-thread.c (aix_thread_target): New class.
10017         (aix_thread_ops): Now an aix_thread_target.
10018         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
10019         (aix_thread_fetch_registers, aix_thread_store_registers)
10020         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
10021         (aix_thread_thread_alive, aix_thread_pid_to_str)
10022         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
10023         Refactor as methods of aix_thread_target.
10024         (init_aix_thread_ops): Delete.
10025         (_initialize_aix_thread): Remove references to init_aix_thread_ops
10026         and complete_target_initialization.
10027         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
10028         (rs6000_nat_target): New class.
10029         (the_rs6000_nat_target): New.
10030         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
10031         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
10032         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
10033         (super_create_inferior): Delete.
10034         (_initialize_rs6000_nat): Adjust to C++ification.
10035
10036         * arm-linux-nat.c (arm_linux_nat_target): New class.
10037         (the_arm_linux_nat_target): New.
10038         (arm_linux_fetch_inferior_registers)
10039         (arm_linux_store_inferior_registers, arm_linux_read_description)
10040         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
10041         (arm_linux_remove_hw_breakpoint)
10042         (arm_linux_region_ok_for_hw_watchpoint)
10043         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
10044         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
10045         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
10046         arm_linux_nat_target.
10047         (_initialize_arm_linux_nat): Adjust to C++ification.
10048
10049         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
10050         (the_aarch64_linux_nat_target): New.
10051         (aarch64_linux_fetch_inferior_registers)
10052         (aarch64_linux_store_inferior_registers)
10053         (aarch64_linux_child_post_startup_inferior)
10054         (aarch64_linux_read_description)
10055         (aarch64_linux_can_use_hw_breakpoint)
10056         (aarch64_linux_insert_hw_breakpoint)
10057         (aarch64_linux_remove_hw_breakpoint)
10058         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
10059         (aarch64_linux_region_ok_for_hw_watchpoint)
10060         (aarch64_linux_stopped_data_address)
10061         (aarch64_linux_stopped_by_watchpoint)
10062         (aarch64_linux_watchpoint_addr_within_range)
10063         (aarch64_linux_can_do_single_step): Refactor as methods of
10064         aarch64_linux_nat_target.
10065         (super_post_startup_inferior): Delete.
10066         (_initialize_aarch64_linux_nat): Adjust to C++ification.
10067
10068         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
10069         (the_hppa_linux_nat_target): New.
10070         (hppa_linux_fetch_inferior_registers)
10071         (hppa_linux_store_inferior_registers): Refactor as methods of
10072         hppa_linux_nat_target.
10073         (_initialize_hppa_linux_nat): Adjust to C++ification.
10074
10075         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
10076         (the_ia64_linux_nat_target): New.
10077         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
10078         (ia64_linux_stopped_data_address)
10079         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
10080         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
10081         ia64_linux_nat_target methods.
10082         (super_xfer_partial): Delete.
10083         (_initialize_ia64_linux_nat): Adjust to C++ification.
10084
10085         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
10086         (the_m32r_linux_nat_target): New.
10087         (m32r_linux_fetch_inferior_registers)
10088         (m32r_linux_store_inferior_registers): Refactor as
10089         m32r_linux_nat_target methods.
10090         (_initialize_m32r_linux_nat): Adjust to C++ification.
10091
10092         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
10093         (the_m68k_linux_nat_target): New.
10094         (m68k_linux_fetch_inferior_registers)
10095         (m68k_linux_store_inferior_registers): Refactor as
10096         m68k_linux_nat_target methods.
10097         (_initialize_m68k_linux_nat): Adjust to C++ification.
10098
10099         * s390-linux-nat.c (s390_linux_nat_target): New class.
10100         (the_s390_linux_nat_target): New.
10101         (s390_linux_fetch_inferior_registers)
10102         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
10103         (s390_insert_watchpoint, s390_remove_watchpoint)
10104         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
10105         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
10106         (s390_auxv_parse, s390_read_description): Refactor as methods of
10107         s390_linux_nat_target.
10108         (_initialize_s390_nat): Adjust to C++ification.
10109
10110         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
10111         (the_sparc_linux_nat_target): New.
10112         (_initialize_sparc_linux_nat): Adjust to C++ification.
10113         * sparc-nat.c (sparc_fetch_inferior_registers)
10114         (sparc_store_inferior_registers): Remove target_ops parameter.
10115         * sparc-nat.h (sparc_fetch_inferior_registers)
10116         (sparc_store_inferior_registers): Remove target_ops parameter.
10117         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
10118         (the_sparc64_linux_nat_target): New.
10119         (_initialize_sparc64_linux_nat): Adjust to C++ification.
10120
10121         * spu-linux-nat.c (spu_linux_nat_target): New class.
10122         (the_spu_linux_nat_target): New.
10123         (spu_child_post_startup_inferior, spu_child_post_attach)
10124         (spu_child_wait, spu_fetch_inferior_registers)
10125         (spu_store_inferior_registers, spu_xfer_partial)
10126         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
10127         methods.
10128         (_initialize_spu_nat): Adjust to C++ification.
10129
10130         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
10131         (the_tilegx_linux_nat_target): New.
10132         (fetch_inferior_registers, store_inferior_registers):
10133         Refactor as methods.
10134         (_initialize_tile_linux_nat): Adjust to C++ification.
10135
10136         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
10137         (the_xtensa_linux_nat_target): New.
10138         (xtensa_linux_fetch_inferior_registers)
10139         (xtensa_linux_store_inferior_registers): Refactor as
10140         xtensa_linux_nat_target methods.
10141         (_initialize_xtensa_linux_nat): Adjust to C++ification.
10142
10143         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
10144         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
10145         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
10146         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
10147         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
10148         (fbsd_stopped_by_sw_breakpoint)
10149         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
10150         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
10151         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
10152         (fbsd_post_startup_inferior, fbsd_post_attach)
10153         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
10154         (fbsd_set_syscall_catchpoint)
10155         (super_xfer_partial, super_resume, super_wait)
10156         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
10157         (fbsd_handle_debug_trap): Remove target_ops parameter.
10158         (fbsd_nat_add_target): Delete.
10159         * fbsd-nat.h: Include "inf-ptrace.h".
10160         (fbsd_nat_add_target): Delete.
10161         (USE_SIGTRAP_SIGINFO): Define.
10162         (fbsd_nat_target): New class.
10163
10164         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
10165         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
10166         (amd64bsd_target): Delete.
10167         * amd64-bsd-nat.h: New file.
10168         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
10169         "x86-bsd-nat.h".
10170         (amd64_fbsd_nat_target): New class.
10171         (the_amd64_fbsd_nat_target): New.
10172         (amd64fbsd_read_description): Refactor as method of
10173         amd64_fbsd_nat_target.
10174         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10175         (_initialize_amd64fbsd_nat): Adjust to C++ification.
10176         * amd64-nat.h (amd64bsd_target): Delete function declaration.
10177         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
10178         (i386bsd_store_inferior_registers): Remove target_ops parameter.
10179         (i386bsd_target): Delete.
10180         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
10181         (i386bsd_fetch_inferior_registers)
10182         (i386bsd_store_inferior_registers): Declare.
10183         (i386_bsd_nat_target): New class.
10184         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
10185         (the_i386_fbsd_nat_target): New.
10186         (i386fbsd_resume, i386fbsd_read_description): Refactor as
10187         i386_fbsd_nat_target methods.
10188         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
10189         (_initialize_i386fbsd_nat): Adjust to C++ification.
10190         * x86-bsd-nat.c (super_mourn_inferior): Delete.
10191         (x86bsd_mourn_inferior, x86bsd_target): Delete.
10192         (_initialize_x86_bsd_nat): Adjust to C++ification.
10193         * x86-bsd-nat.h: Include "x86-nat.h".
10194         (x86bsd_target): Delete declaration.
10195         (x86bsd_nat_target): New class.
10196
10197         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
10198         (the_aarch64_fbsd_nat_target): New.
10199         (aarch64_fbsd_fetch_inferior_registers)
10200         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
10201         aarch64_fbsd_nat_target.
10202         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
10203         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
10204         (the_alpha_bsd_nat_target): New.
10205         (alphabsd_fetch_inferior_registers)
10206         (alphabsd_store_inferior_registers): Refactor as
10207         alpha_bsd_nat_target methods.
10208         (_initialize_alphabsd_nat): Refactor as methods of
10209         alpha_bsd_nat_target.
10210         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
10211         (the_amd64_nbsd_nat_target): New.
10212         (_initialize_amd64nbsd_nat): Adjust to C++ification.
10213         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
10214         (the_amd64_obsd_nat_target): New.
10215         (_initialize_amd64obsd_nat): Adjust to C++ification.
10216         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
10217         (the_arm_fbsd_nat_target): New.
10218         (arm_fbsd_fetch_inferior_registers)
10219         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
10220         (_initialize_arm_fbsd_nat): Refactor as methods of
10221         arm_fbsd_nat_target.
10222         (_initialize_arm_fbsd_nat): Adjust to C++ification.
10223         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
10224         (the_arm_netbsd_nat_target): New.
10225         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
10226         arm_netbsd_nat_target.
10227         (_initialize_arm_netbsd_nat): Adjust to C++ification.
10228         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
10229         (the_hppa_nbsd_nat_target): New.
10230         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
10231         hppa_nbsd_nat_target methods.
10232         (_initialize_hppanbsd_nat): Adjust to C++ification.
10233         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
10234         (the_hppa_obsd_nat_target): New.
10235         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
10236         methods of hppa_obsd_nat_target.
10237         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
10238         add_target.
10239         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
10240         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
10241         add_target.
10242         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
10243         (_initialize_i386obsd_nat): Use add_target.
10244         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
10245         (the_m68k_bsd_nat_target): New.
10246         (m68kbsd_fetch_inferior_registers)
10247         (m68kbsd_store_inferior_registers): Refactor as methods of
10248         m68k_bsd_nat_target.
10249         (_initialize_m68kbsd_nat): Adjust to C++ification.
10250         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
10251         (the_mips_fbsd_nat_target): New.
10252         (mips_fbsd_fetch_inferior_registers)
10253         (mips_fbsd_store_inferior_registers): Refactor as methods of
10254         mips_fbsd_nat_target.
10255         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
10256         add_target.
10257         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
10258         (the_mips_nbsd_nat_target): New.
10259         (mipsnbsd_fetch_inferior_registers)
10260         (mipsnbsd_store_inferior_registers): Refactor as methods of
10261         mips_nbsd_nat_target.
10262         (_initialize_mipsnbsd_nat): Adjust to C++ification.
10263         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
10264         (the_mips64_obsd_nat_target): New.
10265         (mips64obsd_fetch_inferior_registers)
10266         (mips64obsd_store_inferior_registers): Refactor as methods of
10267         mips64_obsd_nat_target.
10268         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
10269         add_target.
10270         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
10271         nbsd_nat_target.
10272         * nbsd-nat.h: Include "inf-ptrace.h".
10273         (nbsd_nat_target): New class.
10274         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
10275         (obsd_wait): Refactor as methods of obsd_nat_target.
10276         (obsd_add_target): Delete.
10277         * obsd-nat.h: Include "inf-ptrace.h".
10278         (obsd_nat_target): New class.
10279         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
10280         (the_ppc_fbsd_nat_target): New.
10281         (ppcfbsd_fetch_inferior_registers)
10282         (ppcfbsd_store_inferior_registers): Refactor as methods of
10283         ppc_fbsd_nat_target.
10284         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
10285         add_target.
10286         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
10287         (the_ppc_nbsd_nat_target): New.
10288         (ppcnbsd_fetch_inferior_registers)
10289         (ppcnbsd_store_inferior_registers): Refactor as methods of
10290         ppc_nbsd_nat_target.
10291         (_initialize_ppcnbsd_nat): Adjust to C++ification.
10292         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
10293         (the_ppc_obsd_nat_target): New.
10294         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
10295         methods of ppc_obsd_nat_target.
10296         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
10297         add_target.
10298         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
10299         (the_sh_nbsd_nat_target): New.
10300         (shnbsd_fetch_inferior_registers)
10301         (shnbsd_store_inferior_registers): Refactor as methods of
10302         sh_nbsd_nat_target.
10303         (_initialize_shnbsd_nat): Adjust to C++ification.
10304         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
10305         (inf_ptrace_xfer_partial): Delete.
10306         (sparc_xfer_partial, sparc_target): Delete.
10307         * sparc-nat.h (sparc_fetch_inferior_registers)
10308         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
10309         (sparc_target): Delete function declaration.
10310         (sparc_target): New template class.
10311         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
10312         (_initialize_sparcnbsd_nat): Adjust to C++ification.
10313         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
10314         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
10315         add_target.
10316         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
10317         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
10318         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
10319         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
10320         add_target.
10321         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
10322         (the_vax_bsd_nat_target): New.
10323         (vaxbsd_fetch_inferior_registers)
10324         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
10325         methods.
10326         (_initialize_vaxbsd_nat): Adjust to C++ification.
10327
10328         * bsd-kvm.c (bsd_kvm_target): New class.
10329         (bsd_kvm_ops): Now a bsd_kvm_target.
10330         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
10331         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
10332         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
10333         bsd_kvm_target.
10334         (bsd_kvm_return_one): Delete.
10335         (bsd_kvm_add_target): Adjust to C++ification.
10336
10337         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
10338         (nto_procfs_target_procfs): New classes.
10339         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
10340         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
10341         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
10342         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
10343         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
10344         (procfs_remove_hw_breakpoint, procfs_resume)
10345         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
10346         (procfs_kill_inferior, procfs_store_registers)
10347         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
10348         as methods of nto_procfs_target.
10349         (nto_procfs_ops): Now an nto_procfs_target_procfs.
10350         (nto_native_ops): Delete.
10351         (procfs_open, procfs_native_open): Delete.
10352         (nto_native_ops): Now an nto_procfs_target_native.
10353         (init_procfs_targets): Adjust to C++ification.
10354         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
10355         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
10356         Refactor as methods of nto_procfs_target.
10357
10358         * go32-nat.c (go32_nat_target): New class.
10359         (the_go32_nat_target): New.
10360         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
10361         (go32_store_registers, go32_xfer_partial, go32_files_info)
10362         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
10363         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
10364         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
10365         (go32_pid_to_str): Refactor as methods of go32_nat_target.
10366         (go32_target): Delete.
10367         (_initialize_go32_nat): Adjust to C++ification.
10368
10369         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
10370         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
10371         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
10372         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
10373         gnu_nat_target.
10374         (gnu_target): Delete.
10375         * gnu-nat.h (gnu_target): Delete.
10376         (gnu_nat_target): New class.
10377         * i386-gnu-nat.c (gnu_base_target): New.
10378         (i386_gnu_nat_target): New class.
10379         (the_i386_gnu_nat_target): New.
10380         (_initialize_i386gnu_nat): Adjust to C++ification.
10381
10382 2018-05-02  Pedro Alves  <palves@redhat.com>
10383
10384         * bfd-target.c (target_bfd_xclose): Rename to ...
10385         (target_bfd_close): ... this.
10386         (target_bfd_reopen): Adjust.
10387         * target.c (target_close): Remove references to to_xclose.
10388         * target.h (target_ops::to_xclose): Delete.
10389         (target_ops::to_close): Update comments.
10390
10391 2018-05-02  Pedro Alves  <palves@redhat.com>
10392
10393         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
10394         "linux-nat.h".
10395         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
10396         * inf-ptrace.c (inf_ptrace_register_u_offset)
10397         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
10398         (inf_ptrace_store_register, inf_ptrace_store_registers)
10399         (inf_ptrace_trad_target): Move to ...
10400         * linux-nat-trad.c: ... this new file.
10401         * linux-nat-trad.h: New file.
10402         * linux-nat.c (linux_target_install_ops): Make extern.
10403         (linux_trad_target): Delete.
10404         * linux-nat.h (linux_trad_target): Delete declaration.
10405         (linux_target_install_ops): Declare.
10406         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
10407         "linux-nat.h".
10408
10409 2018-05-02  Pedro Alves  <palves@redhat.com>
10410
10411         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10412         procfs_target/add_target here.
10413         * procfs.c (procfs_target): Make static.
10414         (_initialize_procfs): Call add_target here.
10415         * procfs.h (struct target_ops): Remove forward declaration.
10416         (procfs_target): Remove declaration.
10417         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
10418
10419 2018-05-02  Pedro Alves  <palves@redhat.com>
10420
10421         * procfs.c (procfs_stopped_by_watchpoint)
10422         (procfs_insert_watchpoint, procfs_remove_watchpoint)
10423         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
10424         Forward declare.
10425         (procfs_use_watchpoints): Delete, move contents...
10426         (procfs_target): ... here.
10427         * procfs.h (procfs_use_watchpoints): Delete declaration.
10428         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
10429         procfs_use_watchpoints.
10430         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
10431         procfs_use_watchpoints.
10432
10433 2018-05-02  Tom Tromey  <tom@tromey.com>
10434
10435         PR python/20084:
10436         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
10437         and var_zuinteger_unlimited.
10438         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
10439         and PARAM_ZUINTEGER_UNLIMITED.
10440         (set_parameter_value): Handle var_zuinteger and
10441         var_zuinteger_unlimited.
10442         (add_setshow_generic): Likewise.
10443         (parmpy_init): Likewise.
10444
10445 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
10446
10447         PR rust/23124
10448         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
10449         pointer is not null before dereferencing it.
10450
10451 2018-04-30  Tom Tromey  <tom@tromey.com>
10452
10453         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
10454         is_mi_like_p.
10455
10456 2018-04-30  Tom Tromey  <tom@tromey.com>
10457
10458         * breakpoint.c (mention): Remove use of is_mi_like_p.
10459         (print_mention_ranged_breakpoint): Likewise.
10460         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
10461         of is_mi_like_p.
10462
10463 2018-04-30  Tom Tromey  <tom@tromey.com>
10464
10465         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
10466
10467 2018-04-30  Tom Tromey  <tom@tromey.com>
10468
10469         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
10470         (info_spu_event_command): Remove some uses of is_mi_like_p.
10471
10472 2018-04-30  Tom Tromey  <tom@tromey.com>
10473
10474         * python/py-framefilter.c (py_print_single_arg)
10475         (enumerate_locals, py_print_args, py_print_frame): Remove some
10476         uses of is_mi_like_p.
10477
10478 2018-04-30  Tom Tromey  <tom@tromey.com>
10479
10480         * ui-out.c: Update.
10481         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
10482         * ui-out.h (ui_out::is_mi_like_p): Now const.
10483         (ui_out::do_is_mi_like_p): Now const.
10484         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
10485
10486 2018-04-30  Tom Tromey  <tom@tromey.com>
10487
10488         * varobj.c (varobj_set_visualizer): Use new_reference.
10489         * python/python.c (gdbpy_decode_line): Use new_reference.
10490         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
10491         new_reference.
10492
10493 2018-04-30  Tom Tromey  <tom@tromey.com>
10494
10495         * varobj.c (install_new_value): Use new_reference.
10496         * value.h (value_incref): Return void.  Swap intro comment with
10497         value_decref.
10498         * value.c (set_value_parent): Use new_reference.
10499         (value_incref): Return void.  Update intro comment.
10500         (release_value): Use new_reference.
10501         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
10502
10503 2018-04-30  Tom Tromey  <tom@tromey.com>
10504
10505         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
10506         * gdb_bfd.h (new_bfd_ref): Remove.
10507         (gdb_bfd_open): Update comment.
10508         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
10509         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
10510         (gdb_bfd_fdopenr): Use new_reference.
10511         * exec.c (exec_file_attach): Use new_reference.
10512
10513 2018-04-30  Tom Tromey  <tom@tromey.com>
10514
10515         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
10516         method.
10517
10518 2018-04-30  Tom Tromey  <tom@tromey.com>
10519
10520         * jit.c (jit_read_code_entry): Use type_align.
10521         * i386-tdep.c (i386_gdbarch_init): Don't call
10522         set_gdbarch_long_long_align_bit.
10523         * gdbarch.sh: Remove long_long_align_bit.
10524         * gdbarch.c, gdbarch.h: Rebuild.
10525         * arc-tdep.c (arc_type_align): New function.
10526         (arc_gdbarch_init): Use arc_type_align.  Don't call
10527         set_gdbarch_long_long_align_bit.
10528
10529 2018-04-30  Tom Tromey  <tom@tromey.com>
10530
10531         * rust-lang.c (rust_type_alignment): Remove.
10532         (rust_composite_type): Use type_align.
10533
10534 2018-04-30  Tom Tromey  <tom@tromey.com>
10535
10536         * NEWS: Mention Type.align.
10537         * python/py-type.c (typy_get_alignof): New function.
10538         (type_object_getset): Add "alignof".
10539
10540 2018-04-30  Tom Tromey  <tom@tromey.com>
10541
10542         PR exp/17095:
10543         * NEWS: Update.
10544         * std-operator.def (UNOP_ALIGNOF): New operator.
10545         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
10546         New.
10547         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
10548         * c-lang.c (c_op_print_tab): Add alignof.
10549         * c-exp.y (ALIGNOF): New token.
10550         (exp): Add "ALIGNOF" production.
10551         (ident_tokens): Add _Alignof and alignof.
10552
10553 2018-04-30  Tom Tromey  <tom@tromey.com>
10554
10555         * i386-tdep.c (i386_type_align): New function.
10556         (i386_gdbarch_init): Update.
10557         * gdbarch.sh (type_align): New method.
10558         * gdbarch.c, gdbarch.h: Rebuild.
10559         * arch-utils.h (default_type_align): Declare.
10560         * arch-utils.c (default_type_align): New function.
10561         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
10562         (struct type) <align_log2>: New field.
10563         <instance_flags>: Now a bitfield.
10564         (TYPE_RAW_ALIGN): New macro.
10565         (type_align, type_raw_align, set_type_align): Declare.
10566         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
10567         functions.
10568         * dwarf2read.c (quirk_rust_enum): Set type alignment.
10569         (get_alignment, maybe_set_alignment): New functions.
10570         (read_structure_type, read_enumeration_type, read_array_type)
10571         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
10572         (read_subrange_type, read_base_type): Set type alignment.
10573
10574 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
10575
10576         * dwarf2read.c (read_index_from_section): Use bool.
10577
10578 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
10579
10580         PR gdb/22950
10581         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
10582         with #ifdef.
10583
10584 2018-04-29  John Reiser  <jreiser@BitWagon.com>
10585
10586         PR build/22873
10587         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
10588         last step, and do it atomically.
10589
10590 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
10591
10592         * compile/compile-c-types.c (convert_int, convert_float):
10593         Update for C FE v1.
10594
10595 2018-04-27  Tom Tromey  <tom@tromey.com>
10596
10597         PR rust/22545:
10598         * rust-lang.c (rust_inclusive_range_type_p): New function.
10599         (rust_range): Handle inclusive ranges.
10600         (rust_compute_range): Likewise.
10601         * rust-exp.y (struct rust_op) <inclusive>: New field.
10602         (DOTDOTEQ): New constant.
10603         (range_expr): Add "..=" productions.
10604         (operator_tokens): Add "..=" token.
10605         (ast_range): Add "inclusive" parameter.
10606         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
10607         ranges.
10608         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
10609         bounds values.
10610         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
10611         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
10612         Update comments.
10613         * expprint.c (print_subexp_standard): Handle new bounds values.
10614         (dump_subexp_body_standard): Likewise.
10615
10616 2018-04-27  Tom Tromey  <tom@tromey.com>
10617
10618         * configure: Rebuild.
10619         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
10620         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
10621         "OVERRIDE".
10622         (class symbol_needs_eval_context): Likewise.
10623         * dwarf2read.c (mock_mapped_index::symbol_name_count)
10624         (mock_mapped_index::symbol_name_at): Use "override".  Remove
10625         "virtual".
10626         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
10627         "override".
10628         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
10629         * aarch64-tdep.c (instruction_reader::read): Use "override".
10630         (instruction_reader_test::read): Likewise.
10631         * arm-tdep.c (instruction_reader::read): Use "override".
10632         (instruction_reader_thumb::read): Likewise.
10633
10634 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
10635
10636         PR remote/9665
10637         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
10638         instead of remote_send.
10639         (remote_send): Remove.
10640
10641 2018-04-26  Pedro Alves  <palves@redhat.com>
10642
10643         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
10644         find_function_start_sal instead of find_pc_line.
10645
10646 2018-04-26  Pedro Alves  <palves@redhat.com>
10647
10648         * breakpoint.c (set_breakpoint_location_function): Handle
10649         mst_data_gnu_ifunc.
10650         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
10651         * elfread.c (elf_symtab_read): Give data symbols with
10652         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
10653         (elf_rel_plt_read): Update comment.
10654         * linespec.c (convert_linespec_to_sals): Handle
10655         mst_data_gnu_ifunc.
10656         (minsym_found): Handle mst_data_gnu_ifunc.
10657         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
10658         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
10659         * parse.c (find_minsym_type_and_address): Handle
10660         mst_data_gnu_ifunc.
10661         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
10662         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
10663         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
10664         comment.
10665         <mst_data_gnu_ifunc>: New enumerator.
10666
10667 2018-04-26  Pedro Alves  <palves@redhat.com>
10668
10669         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
10670         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
10671         'want_trampoline' parameter by a lookup_msym_prefer parameter.
10672         Handle it.
10673         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
10674         (lookup_minimal_symbol_by_pc): Adjust.
10675         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
10676         (lookup_solib_trampoline_symbol_by_pc): Adjust.
10677         * minsyms.h (lookup_msym_prefer): New enum.
10678         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10679         parameter by a lookup_msym_prefer parameter.
10680
10681 2018-04-26  Pedro Alves  <palves@redhat.com>
10682
10683         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
10684         ends in "@plt" instead of looking at the symbol's section.
10685
10686 2018-04-26  Pedro Alves  <palves@redhat.com>
10687
10688         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
10689         all references.
10690         (find_pc_partial_function_gnu_ifunc): Rename to ...
10691         (find_pc_partial_function): ... this, and remove references to
10692         'is_gnu_ifunc_p'.
10693         (find_pc_partial_function): Delete old implementation.
10694         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
10695
10696 2018-04-26  Pedro Alves  <palves@redhat.com>
10697
10698         * linespec.c (struct bound_minimal_symbol_search_key): New.
10699         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
10700         skip first line if we found a GNU ifunc minimal symbol by name.
10701         (compare_msymbols): Change parameters to work with a destructured
10702         lhs minsym.
10703         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
10704         functions.
10705
10706 2018-04-26  Pedro Alves  <palves@redhat.com>
10707
10708         * breakpoint.c (set_breakpoint_location_function): Don't resolve
10709         ifunc targets here.  Instead, if we have an ifunc minsym, use its
10710         address/name.
10711         (add_location_to_breakpoint): Store the minsym and the objfile in
10712         the breakpoint location.
10713         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
10714         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
10715         Record the minsym in the sal.
10716         * symtab.h (symtab_and_line) <msymbol>: New field.
10717
10718 2018-04-26  Pedro Alves  <palves@redhat.com>
10719
10720         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
10721         unless we actually resolved the ifunc.
10722
10723 2018-04-26  Pedro Alves  <palves@redhat.com>
10724
10725         * c-exp.y (variable production): Prefer ifunc minsyms over
10726         regular function symbols.
10727         * symtab.c (find_gnu_ifunc): New function.
10728         * minsyms.h (lookup_msym_prefer): New enum.
10729         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
10730         parameter by a lookup_msym_prefer parameter.
10731         * symtab.h (find_gnu_ifunc): New declaration.
10732
10733 2018-04-26  Pedro Alves  <palves@redhat.com>
10734
10735         * blockframe.c (find_gnu_ifunc_target_type): New function.
10736         (find_function_type): New.
10737         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
10738         return a value with a memory address.
10739         (eval_call): For calls to GNU ifunc functions, try to find the
10740         type of the target function from the type that the resolver
10741         returns.
10742         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
10743         symbols.
10744         * infcall.c (find_function_return_type): Delete.
10745         (find_function_addr): Add 'function_type' parameter.  For calls to
10746         GNU ifunc functions, try to find the type of the target function
10747         from the type that the resolver returns, and return it via
10748         FUNCTION_TYPE.
10749         (call_function_by_hand_dummy): Adjust to use the function type
10750         returned by find_function_addr.
10751         (find_function_addr): Add 'function_type' parameter and move
10752         description here.
10753         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
10754         declarations.
10755
10756 2018-04-26  Pedro Alves  <palves@redhat.com>
10757
10758         * c-exp.y (variable production): Skip finding an alias for ifunc
10759         symbols.
10760
10761 2018-04-26  Pedro Alves  <palves@redhat.com>
10762
10763         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
10764
10765 2018-04-25  Pedro Alves  <palves@redhat.com>
10766
10767         * infcmd.c (kill_command): Print the pid as string, not the whole
10768         thread's ptid.  Add comment.  s/has been killed/killed/ in output
10769         message.
10770         * remote.c (remote_detach_1): Print the pid as string, not the
10771         whole thread's ptid.
10772
10773 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
10774             Sergio Durigan Junior  <sergiodj@redhat.com>
10775             Pedro Alves  <palves@redhat.com>
10776
10777         * infcmd.c (kill_command): Print message when inferior has
10778         been killed.
10779         * inferior.c (print_inferior_events): Remove 'static'.  Set as
10780         '1'.
10781         (add_inferior): Improve message printed when
10782         'print_inferior_events' is on.
10783         (exit_inferior): Remove message printed when
10784         'print_inferior_events' is on.
10785         (detach_inferior): Improve message printed when
10786         'print_inferior_events' is on.
10787         (initialize_inferiors): Use 'add_inferior_silent' to set
10788         'current_inferior_'.
10789         * inferior.h (print_inferior_events): Declare here as
10790         'extern'.
10791         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
10792         '[Detaching...]' messages when 'print_inferior_events' is on.
10793         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
10794         as prefix/suffix for messages.  Remove periods.  Fix erroneous
10795         'Detaching after fork from child...', replace it by '... from
10796         parent...'.
10797         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
10798         prefix/suffix when printing 'Detaching...' messages.  Print
10799         them when 'print_inferior_events' is on.
10800         * remote.c (remote_detach_1): Print message when detaching
10801         from inferior and '!is_fork_parent'.
10802
10803 2018-04-24  Tom Tromey  <tom@tromey.com>
10804
10805         * cli-out.h: Reindent.
10806
10807 2018-04-24  Tom Tromey  <tom@tromey.com>
10808
10809         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
10810         (cli_ui_out::do_field_string): Use fputs_filtered.
10811         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
10812
10813 2018-04-23  Tom Tromey  <tom@tromey.com>
10814
10815         * guile/scm-frame.c (gdbscm_frame_read_var): Use
10816         gdb::unique_xmalloc_ptr.
10817
10818 2018-04-23  Tom Tromey  <tom@tromey.com>
10819
10820         * configure: Rebuild.
10821
10822 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
10823
10824         PR gdb/23095
10825         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
10826         prepare_for_testing.  Set normal_bp to r_debug_state if target
10827         is bsd.
10828
10829 2018-04-21  Pedro Alves  <palves@redhat.com>
10830             Rajendra SY  <rajendra.sy@gmail.com>
10831
10832         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
10833         * remote.c (extended_remote_attach): In all-stop mode, mark the
10834         thread as executing.
10835
10836 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10837
10838         * thread.c (thread_apply_all_command): Fix comment.
10839         (thread_command): Fix comment.
10840
10841 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
10842
10843         * common/tdesc.h (tdesc_create_feature): Remove xml filename
10844         parameter.
10845         * features/aarch64-core.c (create_feature_aarch64_core):
10846         Regenerate.
10847         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
10848         Likewise.
10849         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
10850         Likewise.
10851         * features/i386/32bit-avx512.c
10852         (create_feature_i386_32bit_avx512): Likewise.
10853         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
10854         Likewise.
10855         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
10856         Likewise.
10857         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
10858         Likewise.
10859         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
10860         Likewise.
10861         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
10862         Likewise.
10863         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
10864         Likewise.
10865         * features/i386/64bit-avx512.c
10866         (create_feature_i386_64bit_avx512): Likewise.
10867         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
10868         Likewise.
10869         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
10870         Likewise.
10871         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
10872         Likewise.
10873         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
10874         Likewise.
10875         * features/i386/64bit-segments.c
10876         (create_feature_i386_64bit_segments): Likewise.
10877         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
10878         Likewise.
10879         * features/i386/x32-core.c
10880         (create_feature_i386_x32_core): Likewise.
10881         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
10882         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
10883         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
10884         * target-descriptions.c: In generated code, don't pass xml
10885         filename.
10886
10887 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10888
10889         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
10890         (print_xml_feature::visit_post): Likewise.
10891         (print_xml_feature::visit): Likewise.
10892         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
10893         (print_xml_feature): Add new class.
10894         * regformats/regdat.sh: Null xmltarget on feature targets.
10895         * target-descriptions.c (struct target_desc): Add xmltarget.
10896         (maintenance_check_tdesc_xml_convert): Add unittest function.
10897         (tdesc_get_features_xml): Add function to get xml.
10898         (maintenance_check_xml_descriptions): Test xml generation.
10899         * xml-tdesc.c (string_read_description_xml): Add function.
10900         * xml-tdesc.h (string_read_description_xml): Add declaration.
10901
10902 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10903
10904         * features/Makefile: Add feature marker to targets with new style
10905         target descriptions.
10906         * regformats/aarch64.dat: Regenerate.
10907         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
10908         * regformats/i386/amd64-avx-linux.dat: Likewise.
10909         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
10910         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
10911         * regformats/i386/amd64-linux.dat: Likewise.
10912         * regformats/i386/amd64-mpx-linux.dat: Likewise.
10913         * regformats/i386/amd64.dat: Likewise.
10914         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
10915         * regformats/i386/i386-avx-linux.dat: Likewise.
10916         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
10917         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
10918         * regformats/i386/i386-linux.dat: Likewise.
10919         * regformats/i386/i386-mmx-linux.dat: Likewise.
10920         * regformats/i386/i386-mpx-linux.dat: Likewise.
10921         * regformats/i386/i386.dat: Likewise.
10922         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
10923         * regformats/i386/x32-avx-linux.dat: Likewise.
10924         * regformats/i386/x32-linux.dat: Likewise.
10925         * regformats/tic6x-c62x-linux.dat: Likewise.
10926         * regformats/tic6x-c64x-linux.dat: Likewise.
10927         * regformats/tic6x-c64xp-linux.dat: Likewise.
10928         * regformats/regdat.sh: Parse feature marker.
10929
10930 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10931
10932         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
10933         (tdesc_osabi_name): Likewise.
10934         * target-descriptions.c (tdesc_architecture_name): Add new
10935         function.
10936         (tdesc_osabi_name): Likewise.
10937
10938 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10939
10940         * common/tdesc.c (tdesc_predefined_type): Move to here.
10941         (tdesc_named_type): Likewise.
10942         (tdesc_create_vector): Likewise.
10943         (tdesc_create_struct): Likewise.
10944         (tdesc_set_struct_size): Likewise.
10945         (tdesc_create_union): Likewise.
10946         (tdesc_create_flags): Likewise.
10947         (tdesc_create_enum): Likewise.
10948         (tdesc_add_field): Likewise.
10949         (tdesc_add_typed_bitfield): Likewise.
10950         (tdesc_add_bitfield): Likewise.
10951         (tdesc_add_flag): Likewise.
10952         (tdesc_add_enum_value): Likewise.
10953         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
10954         (struct tdesc_type_vector): Likewise.
10955         (struct tdesc_type_field): Likewise.
10956         (struct tdesc_type_with_fields): Likewise.
10957         (tdesc_create_enum): Add declaration.
10958         (tdesc_add_typed_bitfield): Likewise.
10959         (tdesc_add_enum_value): Likewise.
10960         * target-descriptions.c (tdesc_type_field): Move from here.
10961         (tdesc_type_builtin): Likewise.
10962         (tdesc_type_vector): Likewise.
10963         (tdesc_type_with_fields): Likewise.
10964         (tdesc_predefined_types): Likewise.
10965         (tdesc_named_type): Likewise.
10966         (tdesc_create_vector): Likewise.
10967         (tdesc_create_struct): Likewise.
10968         (tdesc_set_struct_size): Likewise.
10969         (tdesc_create_union): Likewise.
10970         (tdesc_create_flags): Likewise.
10971         (tdesc_create_enum): Likewise.
10972         (tdesc_add_field): Likewise.
10973         (tdesc_add_typed_bitfield): Likewise.
10974         (tdesc_add_bitfield): Likewise.
10975         (tdesc_add_flag): Likewise.
10976         (tdesc_add_enum_value): Likewise.
10977         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
10978         (tdesc_add_typed_bitfield): Likewise.
10979         (tdesc_add_enum_value): Likewise.
10980
10981 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10982
10983         * common/tdesc.c (tdesc_feature::accept): Move to here.
10984         (tdesc_feature::operator==): Likewise.
10985         (tdesc_create_reg): Likewise.
10986         * common/tdesc.h (tdesc_type_kind): Likewise.
10987         (struct tdesc_type): Likewise.
10988         (struct tdesc_feature): Likewise.
10989         * regformats/regdat.sh: Create a feature.
10990         * target-descriptions.c (tdesc_type_kind): Move from here.
10991         (tdesc_type): Likewise.
10992         (tdesc_type_up): Likewise.
10993         (tdesc_feature): Likewise.
10994         (tdesc_create_reg): Likewise.
10995
10996 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
10997
10998         * Makefile.in: Add arch/tdesc.c
10999         * common/tdesc.c: New file.
11000         * common/tdesc.h (tdesc_element_visitor): Move to here.
11001         (tdesc_element): Likewise.
11002         (tdesc_reg): Likewise.
11003         (tdesc_reg_up): Likewise.
11004         * regformats/regdef.h (reg): Add offset to constructors.
11005         * target-descriptions.c (tdesc_element_visitor): Move from here.
11006         (tdesc_element): Likewise.
11007         (tdesc_reg): Likewise.
11008         (tdesc_reg_up): Likewise.
11009
11010 2018-04-17  Tom Tromey  <tom@tromey.com>
11011
11012         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
11013         discriminant field.
11014
11015 2018-04-17  Tom Tromey  <tom@tromey.com>
11016
11017         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
11018
11019 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11020
11021         * symtab.c (print_symbol_info): Skip printing filename and line
11022         number when `last' is NULL.
11023         (symtab_symbol_info): Use empty string instead of NULL for first
11024         invocation of print_symbol_info.
11025         (rbreak_command): Pass NULL to `last' parameter of
11026         print_symbol_info.
11027
11028 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
11029
11030         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
11031         instead of nullptr.
11032
11033 2018-04-16  Pedro Alves  <palves@redhat.com>
11034
11035         * MAINTAINERS (sh): Remove.
11036         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
11037         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
11038         (ALLDEPFILES): Remove sh64-tdep.c.
11039         * NEWS: Mentions that support for SH-5/SH64 is removed.
11040         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
11041         (sh*-*-openbsd*): Ditto.
11042         (sh64-*-elf*): Remove.
11043         (sh*): Remove.
11044         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
11045         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
11046         * sh-tdep.c: No longer include "sh64-tdep.h".
11047         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
11048         * sh64-tdep.c, sh64-tdep.h: Remove files.
11049
11050 2018-04-16  Pedro Alves  <palves@redhat.com>
11051
11052         * MAINTAINERS: Remove m88k.
11053         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
11054         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
11055         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
11056         * NEWS: Mention that support for m88k was removed.
11057         * configure.host (m88*-*-*): Remove support.
11058         * configure.nat (m88k-*-*): Remove support.
11059         * configure.tgt (m88*-*-openbsd*): Remove.
11060         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
11061
11062 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
11063
11064         * configure.tgt (x86_tobjs): New variable.
11065         (amd64_tobjs, i386_tobjs): Use it.
11066
11067 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
11068
11069         * symtab.c (print_symbol_info): Precede the symbol definition by
11070         the line number when available.
11071         * NEWS: Advertise this enhancement.
11072
11073 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11074
11075         * NEWS (New options): announce set/show record btrace cpu.
11076         * btrace.c: Include record-btrace.h.
11077         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
11078         the vendor is unknown.
11079         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
11080         Maybe overwrite the btrace configuration's cpu.
11081         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
11082         (btrace_fetch): Add cpu parameter.  Update callers.
11083         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
11084         Maybe overwrite the btrace configuration's cpu.  Skip enabling
11085         errata workarounds if the vendor is unknown.
11086         * python/py-record-btrace.c: Include record-btrace.h.
11087         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
11088         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
11089         * record-btrace.c (record_btrace_cpu_state_kind): New.
11090         (record_btrace_cpu): New.
11091         (set_record_btrace_cpu_cmdlist): New.
11092         (record_btrace_get_cpu): New.
11093         (require_btrace_thread, record_btrace_info)
11094         (record_btrace_resume_thread): Call record_btrace_get_cpu.
11095         (cmd_set_record_btrace_cpu_none): New.
11096         (cmd_set_record_btrace_cpu_auto): New.
11097         (cmd_set_record_btrace_cpu): New.
11098         (cmd_show_record_btrace_cpu): New.
11099         (_initialize_record_btrace): Initialize set/show record btrace cpu
11100         commands.
11101         * record-btrace.h (record_btrace_get_cpu): New.
11102
11103 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11104
11105         * record.c (set_record_command): Fix typo in message.
11106
11107 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11108
11109         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
11110
11111 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
11112
11113         * infrun.c (process_event_stop_test): Call
11114         gdbarch_in_indirect_branch_thunk.
11115         * gdbarch.sh (in_indirect_branch_thunk): New.
11116         * gdbarch.c: Regenerated.
11117         * gdbarch.h: Regenerated.
11118         * x86-tdep.h: New.
11119         * x86-tdep.c: New.
11120         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
11121         (HFILES_NO_SRCDIR): Add x86-tdep.h.
11122         (ALLDEPFILES): Add x86-tdep.c.
11123         * arch-utils.h (default_in_indirect_branch_thunk): New.
11124         * arch-utils.c (default_in_indirect_branch_thunk): New.
11125         * i386-tdep: Include x86-tdep.h.
11126         (i386_in_indirect_branch_thunk): New.
11127         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
11128         function.
11129         * amd64-tdep: Include x86-tdep.h.
11130         (amd64_in_indirect_branch_thunk): New.
11131         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
11132
11133 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
11134
11135         PR gdb/23053
11136         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
11137         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
11138         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
11139         regression.
11140
11141 2018-04-12  Tom Tromey  <tom@tromey.com>
11142
11143         * rust-lang.c (rust_print_struct_def): Remove univariant code.
11144         (rust_evaluate_subexp): Likewise.
11145
11146 2018-04-12  Pedro Alves  <palves@redhat.com>
11147
11148         * procfs.c (procfs_detach): Make forward declaration's prototype
11149         match definition's protototype.
11150         (proc_get_LDT_entry): Remove stale do_cleanups call.
11151
11152 2018-04-12  Pedro Alves  <palves@redhat.com>
11153
11154         * target.h (target_ops::to_has_exited): Delete.
11155         (target_has_exited): Delete.
11156         * target-delegates.c: Regenerate.
11157
11158 2018-04-11  Pedro Alves  <palves@redhat.com>
11159
11160         * target.c (fileio_fh_t::t): Add comment.
11161         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11162         (target_fileio_close): Handle a NULL target.
11163         (invalidate_fileio_fh): New.
11164         (target_close): Call it.
11165         * remote.c (remote_hostio_send_command): No longer check whether
11166         remote_desc is open.
11167
11168 2018-04-11  Pedro Alves  <palves@redhat.com>
11169
11170         * target.c (fileio_fh_t): Make it a named struct instead of a
11171         typedef.
11172         (fileio_fh_t::is_closed): New method.
11173         (DEF_VEC_O (fileio_fh_t)): Remove.
11174         (fileio_fhandles): Now a std::vector.
11175         (is_closed_fileio_fh): Delete.
11176         (acquire_fileio_fd): Adjust.  Rename parameters.
11177         (release_fileio_fd): Adjust.
11178         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
11179         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
11180         (target_fileio_close): Adjust.
11181
11182 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
11183
11184         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
11185         index.
11186
11187 2018-04-10  Pedro Alves  <palves@redhat.com>
11188
11189         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
11190         (scoped_finish_thread_state): New class.
11191         * infcmd.c (run_command_1): Use it instead of finish_thread_state
11192         cleanup.
11193         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
11194         (fetch_inferior_event, normal_stop): Likewise.
11195         * thread.c (finish_thread_state_cleanup): Delete.
11196
11197 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11198             Pedro Alves  <palves@redhat.com>
11199
11200         * value.c: Include "selftest.h" and "common/array-view.h".
11201         (struct range) <operator ==>: New.
11202         (test_ranges_contain): New.
11203         (check_ranges_vector): New.
11204         (test_insert_into_bit_range_vector): New.
11205         (_initialize_values): Register selftests.
11206         * common/array-view.h (operator==, operator!=): New.
11207
11208 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11209
11210         * common/gdb_vecs.h (unordered_remove): Add overload that takes
11211         an iterator.
11212         * inline-frame.c: Include <algorithm>.
11213         (struct inline_state): Add constructor.
11214         (inline_state_s): Remove.
11215         (DEF_VEC_O(inline_state_s)): Remove.
11216         (inline_states): Change type to std::vector.
11217         (find_inline_frame_state): Adjust to std::vector.
11218         (allocate_inline_frame_state): Remove.
11219         (clear_inline_frame_state): Adjust to std::vector.
11220         (skip_inline_frames): Adjust to std::vector.
11221
11222 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11223
11224         * tracepoint.h (struct trace_state_variable): Add constructor.
11225         <name>: Change type to std::string.
11226         * tracepoint.c (tsv_s): Remove.
11227         (DEF_VEC_O(tsv_s)): Remove.
11228         (tvariables): Change to std::vector.
11229         (create_trace_state_variable): Adjust to std::vector.
11230         (find_trace_state_variable): Likewise.
11231         (find_trace_state_variable_by_number): Likewise.
11232         (delete_trace_state_variable): Likewise.
11233         (trace_variable_command): Adjust to std::string.
11234         (delete_trace_variable_command): Likewise.
11235         (tvariables_info_1): Adjust to std::vector.
11236         (save_trace_state_variables): Likewise.
11237         (start_tracing): Likewise.
11238         (merge_uploaded_trace_state_variables): Adjust to std::vector
11239         and std::string.
11240         * target.h (struct target_ops)
11241         <to_download_trace_state_variable>: Pass reference to
11242         trace_state_variable.
11243         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
11244         * target-delegates.c: Re-generate.
11245         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
11246         (mi_tsv_deleted): Likewise.
11247         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
11248         * remote.c (remote_download_trace_state_variable): Change
11249         pointer to reference and adjust.
11250         * make-target-delegates (parse_argtypes): Handle references.
11251         (write_function_header): Likewise.
11252         (munge_type): Likewise.
11253
11254 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11255
11256         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
11257         string_view-selftests.c.
11258         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
11259         testsuite.
11260         * unittests/basic_string_view/cons/char/1.cc: Likewise.
11261         * unittests/basic_string_view/cons/char/2.cc: Likewise.
11262         * unittests/basic_string_view/cons/char/3.cc: Likewise.
11263         * unittests/basic_string_view/element_access/char/1.cc:
11264         Likewise.
11265         * unittests/basic_string_view/element_access/char/empty.cc:
11266         Likewise.
11267         * unittests/basic_string_view/element_access/char/front_back.cc:
11268         Likewise.
11269         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
11270         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
11271         Likewise.
11272         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
11273         Likewise.
11274         * unittests/basic_string_view/modifiers/swap/char/1.cc:
11275         Likewise.
11276         * unittests/basic_string_view/operations/compare/char/1.cc:
11277         Likewise.
11278         * unittests/basic_string_view/operations/compare/char/13650.cc:
11279         Likewise.
11280         * unittests/basic_string_view/operations/copy/char/1.cc:
11281         Likewise.
11282         * unittests/basic_string_view/operations/data/char/1.cc:
11283         Likewise.
11284         * unittests/basic_string_view/operations/find/char/1.cc:
11285         Likewise.
11286         * unittests/basic_string_view/operations/find/char/2.cc:
11287         Likewise.
11288         * unittests/basic_string_view/operations/find/char/3.cc:
11289         Likewise.
11290         * unittests/basic_string_view/operations/find/char/4.cc:
11291         Likewise.
11292         * unittests/basic_string_view/operations/rfind/char/1.cc:
11293         Likewise.
11294         * unittests/basic_string_view/operations/rfind/char/2.cc:
11295         Likewise.
11296         * unittests/basic_string_view/operations/rfind/char/3.cc:
11297         Likewise.
11298         * unittests/basic_string_view/operations/substr/char/1.cc:
11299         Likewise.
11300         * unittests/basic_string_view/operators/char/2.cc: Likewise.
11301         * unittests/string_view-selftests.c: New file.
11302
11303 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11304
11305         * unittests/basic_string_view/capacity/1.cc: New file.
11306         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
11307         * unittests/basic_string_view/cons/char/1.cc: New file.
11308         * unittests/basic_string_view/cons/char/2.cc: New file.
11309         * unittests/basic_string_view/cons/char/3.cc: New file.
11310         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
11311         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
11312         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
11313         * unittests/basic_string_view/element_access/char/1.cc: New file.
11314         * unittests/basic_string_view/element_access/char/2.cc: New file.
11315         * unittests/basic_string_view/element_access/char/empty.cc: New file.
11316         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
11317         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
11318         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
11319         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
11320         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
11321         * unittests/basic_string_view/include.cc: New file.
11322         * unittests/basic_string_view/inserters/char/1.cc: New file.
11323         * unittests/basic_string_view/inserters/char/2.cc: New file.
11324         * unittests/basic_string_view/inserters/char/3.cc: New file.
11325         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
11326         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
11327         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
11328         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
11329         * unittests/basic_string_view/literals/types.cc: New file.
11330         * unittests/basic_string_view/literals/values.cc: New file.
11331         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
11332         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
11333         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
11334         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
11335         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
11336         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
11337         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
11338         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
11339         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
11340         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
11341         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
11342         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
11343         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
11344         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
11345         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
11346         * unittests/basic_string_view/operations/data/char/1.cc: New file.
11347         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
11348         * unittests/basic_string_view/operations/find/char/1.cc: New file.
11349         * unittests/basic_string_view/operations/find/char/2.cc: New file.
11350         * unittests/basic_string_view/operations/find/char/3.cc: New file.
11351         * unittests/basic_string_view/operations/find/char/4.cc: New file.
11352         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
11353         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
11354         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
11355         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
11356         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
11357         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
11358         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
11359         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
11360         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
11361         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
11362         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
11363         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
11364         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
11365         * unittests/basic_string_view/operators/char/2.cc: New file.
11366         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
11367         * unittests/basic_string_view/range_access/char/1.cc: New file.
11368         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
11369         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
11370         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
11371         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
11372         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
11373         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
11374         * unittests/basic_string_view/requirements/typedefs.cc: New file.
11375         * unittests/basic_string_view/typedefs.cc: New file.
11376         * unittests/basic_string_view/types/1.cc: New file.
11377
11378 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11379
11380         * common/gdb_string_view.h: Remove libstdc++ implementation
11381         details, adjust to gdb reality.
11382         * common/gdb_string_view.tcc: Likewise.
11383         * cli/cli-script.c (struct string_view): Remove.
11384         (user_args) <m_args>: Change element type to gdb::string_view.
11385         (user_args::insert_args): Adjust.
11386
11387 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11388
11389         * common/gdb_string_view.h: New file.
11390         * common/gdb_string_view.tcc: New file.
11391
11392 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
11393
11394         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
11395         * configure: Re-generate.
11396
11397 2018-04-09  Pedro Alves  <palves@redhat.com>
11398
11399         * gdbarch.sh: Include "observable.h" instead of "observer.h".
11400         (set_target_gdbarch): Call
11401         gdb::observers::architecture_changed.notify instead of
11402         observer_notify_architecture_changed.
11403
11404 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11405
11406         * tracepoint.c (struct current_traceframe_cleanup): Remove.
11407         (do_restore_current_traceframe_cleanup): Remove.
11408         (restore_current_traceframe_cleanup_dtor): Remove.
11409         (make_cleanup_restore_current_traceframe): Remove.
11410         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
11411         New.
11412         * tracepoint.h (struct scoped_restore_current_traceframe): New.
11413         * infrun.c (fetch_inferior_event): Use
11414         scoped_restore_current_traceframe.
11415
11416 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11417
11418         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
11419         Remove.
11420         <n_allocated_type_units>: Remove.
11421         <all_type_units>: Change to std::vector.
11422         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11423         to std::vector change.
11424         (dwarf2_per_objfile::get_cutu): Likewise.
11425         (dwarf2_per_objfile::get_tu): Likewise.
11426         (create_signatured_type_table_from_index): Likewise.
11427         (create_signatured_type_table_from_debug_names): Likewise.
11428         (dw2_symtab_iter_next): Likewise.
11429         (dw2_print_stats): Likewise.
11430         (dw2_expand_all_symtabs): Likewise.
11431         (dw2_expand_marked_cus): Likewise.
11432         (dw2_debug_names_iterator::next): Likewise.
11433         (dwarf2_initialize_objfile): Likewise.
11434         (add_signatured_type_cu_to_table): Likewise.
11435         (create_all_type_units): Likewise.
11436         (add_type_unit): Likewise.
11437         (struct tu_abbrev_offset): Add constructor.
11438         (build_type_psymtabs_1): Adjust to std::vector change.
11439         (print_tu_stats): Likewise.
11440         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11441         (write_debug_names): Likewise.
11442
11443 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11444
11445         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
11446         Make an std::vector.
11447         <n_comp_units>: Remove.
11448         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
11449         to std::vector change.
11450         (dwarf2_per_objfile::get_cutu): Likewise.
11451         (dwarf2_per_objfile::get_cu): Likewise.
11452         (create_cus_from_index): Likewise.
11453         (create_addrmap_from_index): Likewise.
11454         (create_addrmap_from_aranges): Likewise.
11455         (dwarf2_read_index): Likewise.
11456         (dw2_find_last_source_symtab): Likewise.
11457         (dw2_map_symtabs_matching_filename): Likewise.
11458         (dw2_symtab_iter_next): Likewise.
11459         (dw2_print_stats): Likewise.
11460         (dw2_expand_all_symtabs): Likewise.
11461         (dw2_expand_symtabs_with_fullname): Likewise.
11462         (dw2_expand_marked_cus): Likewise.
11463         (dw2_map_symbol_filenames): Likewise.
11464         (create_cus_from_debug_names): Likewise.
11465         (dwarf2_read_debug_names): Likewise.
11466         (dw2_debug_names_iterator::next): Likewise.
11467         (dwarf2_initialize_objfile): Likewise.
11468         (set_partial_user): Likewise.
11469         (dwarf2_build_psymtabs_hard): Likewise.
11470         (read_comp_units_from_section): Remove arguments, adjust to
11471         std::vector change.
11472         (create_all_comp_units): Adjust to std::vector and
11473         read_comp_units_from_section changes.
11474         (dwarf2_find_containing_comp_unit): Adjust to std::vector
11475         change.
11476         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
11477         (psyms_seen_size): Likewise.
11478         (write_gdbindex): Likewise.
11479         (write_debug_names): Likewise.
11480
11481 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11482
11483         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
11484         with dwarf2_per_objfile.
11485         (create_cus_from_index): Likewise.
11486         (create_signatured_type_table_from_index): Likewise.
11487         (dwarf2_read_index): Likewise.
11488         (dwarf2_initialize_objfile): Likewise.
11489         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
11490         per_cu rather than get_dwarf2_per_objfile.
11491
11492 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11493
11494         * dwarf2read.h (struct signatured_type): Forward declare.
11495         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
11496         New methods.
11497         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
11498         (dw2_get_cutu): ...this.
11499         (dwarf2_per_objfile::get_cu): Rename from...
11500         (dw2_get_cu): ...this.
11501         (dwarf2_per_objfile::get_tu): New.
11502         (create_addrmap_from_index): Adjust.
11503         (create_addrmap_from_aranges): Adjust.
11504         (dw2_find_last_source_symtab): Adjust.
11505         (dw2_map_symtabs_matching_filename): Adjust.
11506         (dw2_symtab_iter_next): Adjust.
11507         (dw2_print_stats): Adjust.
11508         (dw2_expand_all_symtabs): Adjust.
11509         (dw2_expand_symtabs_with_fullname): Adjust.
11510         (dw2_expand_marked_cus): Adjust.
11511         (dw_expand_symtabs_matching_file_matcher): Adjust.
11512         (dw2_map_symbol_filenames): Adjust.
11513         (dw2_debug_names_iterator::next): Adjust.
11514         (dwarf2_initialize_objfile): Adjust.
11515         (set_partial_user): Adjust.
11516         (dwarf2_build_psymtabs_hard): Adjust.
11517
11518 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11519
11520         * dwarf2read.c (create_signatured_type_table_from_debug_names):
11521         Remove unused variables.
11522         (dw2_map_symtabs_matching_filename): Likewise.
11523         (dwarf2_record_block_ranges): Likewise.
11524         (dwarf2_read_addr_index): Likewise.
11525         (follow_die_offset): Likewise.
11526
11527 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11528
11529         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
11530         to symbol_file_add_main.
11531
11532 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11533
11534         PR mi/22299
11535         * mi/mi-console.c (do_fputc_async_safe): New.
11536         (mi_console_file::write_async_safe): New.
11537         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
11538         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
11539         New.
11540         * ui-file.c (ui_file::putstrn): Adjust call to
11541         fputstrn_unfiltered.
11542         * utils.c (printchar): Replace do_fputs and do_fprintf
11543         parameters by do_fputc.
11544         (fputstr_filtered): Adjust call to printchar.
11545         (fputstr_unfiltered): Likewise.
11546         (fputstrn_filtered): Likewise.
11547         (fputstrn_unfiltered): Add do_fputc parameter, pass to
11548         printchar.
11549         * utils.h (do_fputc_ftype): New typedef.
11550         (fputstrn_unfiltered): Add do_fputc parameter.
11551
11552 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
11553
11554         * regformats/i386/i386-avx.dat: Remove.
11555
11556 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11557
11558         PR gdb/22979
11559         * amd64-tdep.c (amd64_none_init_abi): New function.
11560         (amd64_x32_none_init_abi): New function.
11561         (_initialize_amd64_tdep): Register handlers for x86-64 and
11562         x64_32 with GDB_OSABI_NONE.
11563         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
11564         GDB_OSABI_NONE osabi.
11565
11566 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11567
11568         PR gdb/22980
11569         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
11570         GDB_OSABI_NONE.
11571         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
11572         * osabi.c (gdb_osabi_names): Add "unknown" entry.
11573
11574 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
11575
11576         * common/byte-vector.h (char_vector): New type.
11577         * target.h (target_read_alloc): Return
11578         gdb::optional<byte_vector>.
11579         (target_read_stralloc): Return gdb::optional<char_vector>.
11580         (target_get_osdata): Return gdb::optional<char_vector>.
11581         * target.c (target_read_alloc_1): Templatize.  Replacement
11582         manual memory management with vector.
11583         (target_read_alloc): Change return type, adjust.
11584         (target_read_stralloc): Change return type, adjust.
11585         (target_get_osdata): Change return type, adjust.
11586         * auxv.c (struct auxv_info) <length>: Remove.
11587         <data>: Change type to gdb::optional<byte_vector>.
11588         (auxv_inferior_data_cleanup): Free auxv_info with delete.
11589         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
11590         (target_auxv_search): Adjust.
11591         (fprint_target_auxv): Adjust.
11592         * avr-tdep.c (avr_io_reg_read_command): Adjust.
11593         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
11594         (linux_make_corefile_notes): Adjust.
11595         * osdata.c (get_osdata): Adjust.
11596         * remote.c (remote_get_threads_with_qxfer): Adjust.
11597         (remote_memory_map): Adjust.
11598         (remote_traceframe_info): Adjust.
11599         (btrace_read_config): Adjust.
11600         (remote_read_btrace): Adjust.
11601         (remote_pid_to_exec_file): Adjust.
11602         * solib-aix.c (solib_aix_get_library_list): Adjust.
11603         * solib-dsbt.c (decode_loadmap): Don't free buf.
11604         (dsbt_get_initial_loadmaps): Adjust.
11605         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
11606         * solib-target.c (solib_target_current_sos): Adjust.
11607         * tracepoint.c (sdata_make_value): Adjust.
11608         * xml-support.c (xinclude_start_include): Adjust.
11609         (xml_fetch_content_from_file): Adjust.
11610         * xml-support.h (xml_fetch_another): Change return type.
11611         (xml_fetch_content_from_file): Change return type.
11612         * xml-syscall.c (xml_init_syscalls_info): Adjust.
11613         * xml-tdesc.c (file_read_description_xml): Adjust.
11614         (fetch_available_features_from_target): Change return type.
11615         (target_fetch_description_xml): Adjust.
11616         (target_read_description_xml): Adjust.
11617
11618 2018-04-06  Tom Tromey  <tom@tromey.com>
11619
11620         * value.c (~value): Update.
11621         (struct value) <contents>: Now unique_xmalloc_ptr.
11622         (value_contents_bits_eq, allocate_value_contents)
11623         (value_contents_raw, value_contents_all_raw)
11624         (value_contents_for_printing, value_contents_for_printing_const)
11625         (set_value_enclosing_type): Update.
11626
11627 2018-04-06  Tom Tromey  <tom@tromey.com>
11628
11629         * value.c (range_s): Remove typedef, VEC.
11630         (struct range): Add operator<.
11631         (range_lessthan): Remove.
11632         (ranges_contain): Change type.
11633         (~value): Update.
11634         (struct value) <unavailable, optimized_out>: Now std::vector.
11635         (value_entirely_available)
11636         (value_entirely_covered_by_range_vector)
11637         (value_entirely_unavailable, value_entirely_optimized_out):
11638         Update.
11639         (insert_into_bit_range_vector): Change argument type.
11640         (find_first_range_overlap): Likewise.
11641         (struct ranges_and_idx, value_contents_bits_eq)
11642         (require_not_optimized_out, require_available): Update.
11643         (ranges_copy_adjusted): Change argument types.
11644         (value_optimized_out, value_copy, value_fetch_lazy): Update.
11645
11646 2018-04-06  Tom Tromey  <tom@tromey.com>
11647
11648         * value.c (~value): Update.
11649         (struct value) <parent>: Now a value_ref_ptr.
11650         (value_parent, set_value_parent, value_address, value_copy):
11651         Update.
11652
11653 2018-04-06  Tom Tromey  <tom@tromey.com>
11654
11655         * value.c (struct value): Add constructor, destructor, and member
11656         initializers.
11657         (allocate_value_lazy, value_decref): Update.
11658
11659 2018-04-06  Tom Tromey  <tom@tromey.com>
11660
11661         * value.c (struct value) <released, next>: Remove.
11662         (all_values): Now a std::vector.
11663         (allocate_value_lazy): Update.
11664         (value_next): Remove.
11665         (value_mark, value_free_to_mark, release_value)
11666         (value_release_to_mark): Update.
11667
11668 2018-04-06  Tom Tromey  <tom@tromey.com>
11669
11670         * value.h (fetch_subexp_value, value_release_to_mark): Update.
11671         (free_value_chain): Remove.
11672         * value.c (free_value_chain): Remove.
11673         (value_release_to_mark): Return a std::vector.
11674         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
11675         std::vector.
11676         (check_condition): Update.
11677         * eval.c (fetch_subexp_value): Change "val_chain" to a
11678         std::vector.
11679         * breakpoint.c (update_watchpoint): Update.
11680         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
11681
11682 2018-04-06  Tom Tromey  <tom@tromey.com>
11683
11684         * value.h (free_all_values): Remove.
11685         * value.c (free_all_values): Remove.
11686
11687 2018-04-06  Tom Tromey  <tom@tromey.com>
11688
11689         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
11690         (value_history_chain, value_history_count): Remove.
11691         (value_history): New global.
11692         (record_latest_value, access_value_history, show_values)
11693         (preserve_values): Update.
11694
11695 2018-04-06  Tom Tromey  <tom@tromey.com>
11696
11697         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
11698         * varobj.c (varobj_set_display_format, varobj_set_value)
11699         (install_default_visualizer, construct_visualizer)
11700         (install_new_value, ~varobj, varobj_get_value_type)
11701         (my_value_of_variable, varobj_editable_p): Update.
11702         * c-varobj.c (c_describe_child, c_value_of_variable)
11703         (cplus_number_of_children, cplus_describe_child): Update.
11704         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
11705         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
11706         (ada_value_of_variable, ada_value_is_changeable_p): Update.
11707
11708 2018-04-06  Tom Tromey  <tom@tromey.com>
11709
11710         * printcmd.c (last_examine_address): Change type to
11711         value_ref_ptr.
11712         (do_examine, x_command): Update.
11713
11714 2018-04-06  Tom Tromey  <tom@tromey.com>
11715
11716         * value.c (release_value): Update.
11717         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
11718         (struct bpstats) <val>: Now a value_ref_ptr.
11719         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11720         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11721         (~watchpoint, print_it_watchpoint, watch_command_1)
11722         (invalidate_bp_value_on_memory_change): Update.
11723
11724 2018-04-06  Tom Tromey  <tom@tromey.com>
11725
11726         * varobj.c (varobj_clear_saved_item)
11727         (update_dynamic_varobj_children, install_new_value, ~varobj):
11728         Update.
11729         * value.h (value_incref): Move declaration earlier.
11730         (value_decref): Rename from value_free.
11731         (struct value_ref_policy): New.
11732         (value_ref_ptr): New typedef.
11733         (struct value_deleter): Remove.
11734         (gdb_value_up): Remove typedef.
11735         (release_value): Change return type.
11736         (release_value_or_incref): Remove.
11737         * value.c (set_value_parent): Update.
11738         (value_incref): Change return type.
11739         (value_decref): Rename from value_free.
11740         (value_free_to_mark, free_all_values, free_value_chain): Update.
11741         (release_value): Return value_ref_ptr.
11742         (release_value_or_incref): Remove.
11743         (record_latest_value, set_internalvar, clear_internalvar):
11744         Update.
11745         * stack.c (info_frame_command): Don't call value_free.
11746         * python/py-value.c (valpy_dealloc, valpy_new)
11747         (value_to_value_object): Update.
11748         * printcmd.c (do_examine): Update.
11749         * opencl-lang.c (lval_func_free_closure): Update.
11750         * mi/mi-main.c (register_changed_p): Don't call value_free.
11751         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
11752         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
11753         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
11754         value_free.
11755         * guile/scm-value.c (vlscm_free_value_smob)
11756         (vlscm_scm_from_value): Update.
11757         * frame.c (frame_register_unwind, frame_unwind_register_signed)
11758         (frame_unwind_register_unsigned, get_frame_register_bytes)
11759         (put_frame_register_bytes): Don't call value_free.
11760         * findvar.c (address_from_register): Don't call value_free.
11761         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
11762         * dwarf2loc.c (entry_data_value_free_closure)
11763         (value_of_dwarf_reg_entry, free_pieced_value_closure)
11764         (dwarf2_evaluate_loc_desc_full): Update.
11765         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
11766         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
11767         (~watchpoint, watch_command_1)
11768         (invalidate_bp_value_on_memory_change): Update.
11769         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
11770
11771 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
11772
11773         PR gdb/23022
11774         * warning.m4: Add -Wno-error=deprecated-register.
11775         * configure: Re-generate.
11776
11777 2018-04-05  Tom Tromey  <tom@tromey.com>
11778
11779         * linespec.h: Remove include of "vec.h".
11780
11781 2018-04-05  Tom Tromey  <tom@tromey.com>
11782
11783         * linespec.c (typep): Remove typedef.
11784         (find_methods, find_superclass_methods): Take a std::vector.
11785         (find_method): Use std::vector.
11786
11787 2018-04-05  Tom Tromey  <tom@tromey.com>
11788
11789         * utils.c (compare_strings): Remove.
11790         * utils.h (compare_strings): Remove.
11791         * objc-lang.h (find_imps): Update.
11792         * objc-lang.c (find_methods): Take a std::vector.
11793         (uniquify_strings, find_imps): Likewise.
11794         * linespec.c (find_methods): Take a std::vector.
11795         (decode_objc): Use std::vector.
11796         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
11797         a std::vector.
11798         (find_method, find_function_symbols): Use std::vector.
11799
11800 2018-04-05  Tom Tromey  <tom@tromey.com>
11801
11802         * completer.c (completion_tracker::completion_tracker): Remove
11803         cast.
11804         (completion_tracker::discard_completions): Likewise.
11805         * breakpoint.c (ambiguous_names_p): Remove cast.
11806         * ada-lang.c (_initialize_ada_language): Remove cast.
11807         * utils.h (streq): Update.
11808         (streq_hash): Add new declaration.
11809         * utils.c (streq): Return bool.
11810         (streq_hash): New function.
11811
11812 2018-04-05  Tom Tromey  <tom@tromey.com>
11813
11814         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
11815         Remove a string copy.
11816
11817 2018-04-05  Tom Tromey  <tom@tromey.com>
11818
11819         * linespec.c (filter_results): Use std::vector.
11820         (decode_line_2, decode_line_full): Update.
11821
11822 2018-04-05  Tom Tromey  <tom@tromey.com>
11823
11824         * linespec.c (canonical_to_fullform): Return std::string.
11825         (filter_results): Update.
11826         (struct decode_line_2_item): Add constructor.
11827         <fullform, displayform>: Now std::string.
11828         (decode_line_2_compare_items): Now a std::sort comparator.
11829         (decode_line_2): Update.
11830
11831 2018-04-05  Tom Tromey  <tom@tromey.com>
11832
11833         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
11834         (unexpected_linespec_error): Update.
11835         (linespec_parse_basic, parse_linespec): Update.
11836
11837 2018-04-05  Tom Tromey  <tom@tromey.com>
11838
11839         * linespec.c (linespec_parse_basic): Reindent.
11840
11841 2018-04-05  Tom Tromey  <tom@tromey.com>
11842
11843         * minsyms.h (iterate_over_minimal_symbols): Update.
11844         * minsyms.c (iterate_over_minimal_symbols): Take a
11845         gdb::function_view.
11846         * linespec.c (struct collect_minsyms): Remove.
11847         (compare_msyms): Now a std::sort comparator.
11848         (add_minsym): Add parameters.
11849         (search_minsyms_for_name): Update.  Use std::vector.
11850
11851 2018-04-03  Tom Tromey  <tom@tromey.com>
11852
11853         * mipsread.c (read_alphacoff_dynamic_symtab): Use
11854         gdb::byte_vector.
11855
11856 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11857
11858         * MAINTAINERS (Write After Approval): Add Weimin Pan.
11859
11860 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
11861
11862         PR gdb/16959
11863         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
11864         printing static type.
11865
11866 2018-04-01  Tom Tromey  <tom@tromey.com>
11867
11868         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
11869         (rs6000_xfer_shared_libraries): Update.
11870
11871 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
11872
11873         * common/gdb_vecs.h (char_ptr): Remove.
11874         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
11875
11876 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11877
11878         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
11879         with std::vector.
11880         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
11881
11882 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
11883
11884         * tracepoint.h (struct uploaded_tp): Initialize fields.
11885         <actions, step_actions, cmd_strings>: Change type to
11886         std::vector<char *>.
11887         * tracepoint.c (get_uploaded_tp): Allocate with new.
11888         (free_uploaded_tps): Free with delete.
11889         (parse_tracepoint_definition): Adjust to std::vector change.
11890         * breakpoint.c (read_uploaded_action): Likewise.
11891         (create_tracepoint_from_upload): Likewise.
11892         * ctf.c (ctf_write_uploaded_tp): Likewise.
11893         (SET_ARRAY_FIELD): Likewise.
11894         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
11895
11896 2018-03-30  Tom Tromey  <tom@tromey.com>
11897
11898         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
11899         std::unique_ptr.
11900         (svr4_keep_data_in_core): Update.
11901         (svr4_read_so_list): Update.
11902
11903 2018-03-30  Tom Tromey  <tom@tromey.com>
11904
11905         * windows-nat.c (handle_output_debug_string, handle_exception):
11906         Update.
11907         * target.h (target_read_string): Update.
11908         * target.c (target_read_string): Change "string" to
11909         unique_xmalloc_ptr.
11910         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
11911         Update.
11912         * solib-frv.c (frv_current_sos): Update.
11913         * solib-dsbt.c (dsbt_current_sos): Update.
11914         * solib-darwin.c (darwin_current_sos): Update.
11915         * linux-thread-db.c (inferior_has_bug): Update.
11916         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
11917         Update.  Remove alloca.
11918         * ada-lang.c (ada_main_name): Update.
11919
11920 2018-03-30  Tom Tromey  <tom@tromey.com>
11921
11922         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
11923         (struct dwo_file_deleter): New.
11924         (dwo_file_up): New typedef.
11925         (open_and_init_dwo_file): Use dwo_file_up.
11926         (free_dwo_file_cleanup): Remove.
11927
11928 2018-03-30  Tom Tromey  <tom@tromey.com>
11929
11930         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
11931         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
11932
11933 2018-03-30  Tom Tromey  <tom@tromey.com>
11934
11935         * dwarf2read.c (class free_cached_comp_units): New class.
11936         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
11937         (free_cached_comp_units): Remove function.
11938
11939 2018-03-30  Tom Tromey  <tom@tromey.com>
11940
11941         * utils.h (make_cleanup_unpush_target): Remove.
11942         * inf-ptrace.c (struct target_unpusher): New.
11943         (target_unpush_up) New typedef.
11944         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
11945         target_unpush_up.
11946         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
11947
11948 2018-03-27  Tom Tromey  <tom@tromey.com>
11949
11950         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
11951
11952 2018-03-27  Pedro Alves  <palves@redhat.com>
11953             Tom Tromey  <tom@tromey.com>
11954
11955         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
11956         destructor.  Now a class.
11957         (gdb_readline_wrapper_cleanup): Remove function.
11958         (gdb_readline_wrapper): Remove cleanups.
11959
11960 2018-03-27  Tom Tromey  <tom@tromey.com>
11961
11962         * typeprint.h (struct type_print_options) <local_typedefs,
11963         global_typedefs>: Remove "struct" keyword.
11964         (class typedef_hash_table): New class.
11965         (recursively_update_typedef_hash, add_template_parameters)
11966         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
11967         (find_typedef_in_hash): Don't declare.
11968         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
11969         (typedef_hash_table::recursively_update): Rename from
11970         recursively_update_typedef_hash.  Now a member.
11971         (typedef_hash_table::add_template_parameters): Rename from
11972         add_template_parameters.  Now a member.
11973         (typedef_hash_table::typedef_hash_table): Now a constructor;
11974         rename from create_typedef_hash.
11975         (typedef_hash_table::~typedef_hash_table): Now a destructor;
11976         rename from free_typedef_hash.
11977         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
11978         (do_free_global_table): Remove.
11979         (typedef_hash_table::typedef_hash_table): New constructor; renamed
11980         from copy_type_recursive.
11981         (create_global_typedef_table): Remove.
11982         (typedef_hash_table::find_global_typedef): Now a member of
11983         typedef_hash_table.
11984         (typedef_hash_table::find_typedef): Rename from
11985         find_typedef_in_hash; now a member.
11986         (whatis_exp): Update.
11987         * extension.h (struct ext_lang_type_printers): Add constructor and
11988         destructor.
11989         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
11990         declare.
11991         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
11992         Now a constructor; rename from start_ext_lang_type_printers.
11993         (ext_lang_type_printers): Now a destructor; rename from
11994         free_ext_lang_type_printers.
11995         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
11996         Update.
11997         (c_type_print_base_struct_union): Update.  Remove cleanups.
11998
11999 2018-03-27  Tom Tromey  <tom@tromey.com>
12000
12001         * dwarf-index-write.c: Include <cmath>.
12002
12003 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12004
12005         * NEWS: Add entry describing new "set|show varsize-limit" command.
12006         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
12007         command.
12008         * printcmd.c (_initialize_printcmd): Add "set var" alias of
12009         "set variable".
12010
12011 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
12012
12013         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
12014         dwarf-index-write.c
12015         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
12016         * dwarf-index-common.c: New file.
12017         * dwarf-index-common.h: New file.
12018         * dwarf-index-write.c: New file.
12019         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
12020         (struct dwarf2_section_info): Move from here.
12021         (dwarf2_section_info_def): Likewise.
12022         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
12023         (offset_type): Likewise.
12024         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
12025         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
12026         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
12027         (byte_swap): Likewise.
12028         (MAYBE_SWAP): Likewise.
12029         (dwarf2_per_cu_ptr): Likewise.
12030         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
12031         (struct tu_stats): Likewise.
12032         (struct dwarf2_per_objfile): Likewise.
12033         (struct dwarf2_per_cu_data): Likewise.
12034         (struct signatured_type): Likewise.
12035         (sig_type_ptr): Likewise.
12036         (DEF_VEC_P (sig_type_ptr)): Likewise.
12037         (INDEX4_SUFFIX): Likewise.
12038         (INDEX5_SUFFIX): Likewise.
12039         (DEBUG_STR_SUFFIX): Likewise.
12040         (dwarf2_read_section): Make non-static.
12041         (mapped_index_string_hash): Move from here.
12042         (dwarf5_djb_hash): Likewise.
12043         (file_write): Likewise.
12044         (class data_buf): Likewise.
12045         (struct symtab_index_entry): Likewise.
12046         (struct mapped_symtab): Likewise.
12047         (find_slot): Likewise.
12048         (hash_expand): Likewise.
12049         (add_index_entry): Likewise.
12050         (uniquify_cu_indices): Likewise.
12051         (class c_str_view): Likewise.
12052         (class c_str_view_hasher): Likewise.
12053         (class vector_hasher): Likewise.
12054         (write_hash_table): Likewise.
12055         (psym_index_map): Likewise.
12056         (struct addrmap_index_data): Likewise.
12057         (add_address_entry): Likewise.
12058         (add_address_entry_worker): Likewise.
12059         (write_address_map): Likewise.
12060         (symbol_kind): Likewise.
12061         (write_psymbols): Likewise.
12062         (struct signatured_type_index_data): Likewise.
12063         (write_one_signatured_type): Likewise.
12064         (recursively_count_psymbols): Likewise.
12065         (recursively_write_psymbols): Likewise.
12066         (class debug_names): Likewise.
12067         (check_dwarf64_offsets): Likewise.
12068         (psyms_seen_size): Likewise.
12069         (write_gdbindex): Likewise.
12070         (write_debug_names): Likewise.
12071         (assert_file_size): Likewise.
12072         (write_psymtabs_to_index): Likewise.
12073         (save_gdb_index_command): Likewise.
12074         (_initialize_dwarf2_read): Don't register the "save gdb-index"
12075         command.
12076         * dwarf2read.h: New file.
12077
12078 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
12079
12080         PR gdb/22670
12081         * dwarf2read.c (dwarf2_physname): Do not return the demangled
12082         symbol name if the CU's language stores symbol names in linkage
12083         format.
12084         * language.h (struct language_defn)
12085         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
12086         all instances of this struct.
12087
12088 2018-03-26  Tom Tromey  <tom@tromey.com>
12089
12090         * stack.c (backtrace_command_1): Remove verbose code.
12091
12092 2018-03-26  Tom Tromey  <tom@tromey.com>
12093
12094         * python/py-framefilter.c (py_print_type): Don't catch
12095         exceptions.  Return void.
12096         (py_print_value): Likewise.
12097         (py_print_single_arg): Likewise.
12098         (enumerate_args): Don't catch exceptions.
12099         (py_print_args): Likewise.
12100         (py_print_frame): Likewise.
12101         (gdbpy_apply_frame_filter): Catch exceptions here.
12102
12103 2018-03-26  Tom Tromey  <tom@tromey.com>
12104
12105         * stack.c (_initialize_stack): Remove trailing newlines from help
12106         text.  Add "Usage" line to "backtrace" help.
12107
12108 2018-03-26  Tom Tromey  <tom@tromey.com>
12109
12110         PR python/16486:
12111         * python/py-framefilter.c (py_print_args): Call wrap_hint.
12112
12113 2018-03-26  Tom Tromey  <tom@tromey.com>
12114
12115         * python/py-framefilter.c (py_print_single_arg): Return
12116         EXT_LANG_BT_ERROR from catch.
12117
12118 2018-03-26  Tom Tromey  <tom@tromey.com>
12119
12120         PR backtrace/15584:
12121         * stack.c (backtrace_command_1): Move some code into no-filters
12122         "if".
12123
12124 2018-03-26  Tom Tromey  <tom@tromey.com>
12125
12126         * python/py-framefilter.c (throw_quit_or_print_exception): New
12127         function.
12128         (gdbpy_apply_frame_filter): Use it.
12129
12130 2018-03-26  Tom Tromey  <tom@tromey.com>
12131
12132         PR cli/17716:
12133         * python/py-framefilter.c (py_print_type, py_print_value)
12134         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
12135         RETURN_MASK_ERROR.
12136
12137 2018-03-26  Tom Tromey  <tom@tromey.com>
12138
12139         * python/py-framefilter.c (enumerate_args): Use
12140         gdb::unique_xmalloc_ptr.
12141
12142 2018-03-26  Tom Tromey  <tom@tromey.com>
12143
12144         * python/py-framefilter.c (py_print_frame): Return
12145         EXT_LANG_BT_OK.
12146         (gdbpy_apply_frame_filter): Update comment.
12147         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
12148         Remove.
12149         <EXT_LANG_BT_NO_FILTERS>: Change value.
12150
12151 2018-03-26  Tom Tromey  <tom@tromey.com>
12152
12153         PR backtrace/15582:
12154         * stack.c (backtrace_command): Parse "hide" argument.
12155         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
12156         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
12157         constant.
12158
12159 2018-03-26  Tom Tromey  <tom@tromey.com>
12160
12161         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
12162         add "flags".
12163         (backtrace_command): Remove "fulltrace", add "flags".
12164
12165 2018-03-26  Tom Tromey  <tom@tromey.com>
12166
12167         * stack.c (backtrace_command): Rewrite command line parsing.
12168
12169 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12170
12171         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
12172
12173 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
12174
12175         * filename-seen-cache.h: Add include guard.
12176
12177 2018-03-26  Keith Seitz  <keiths@redhat.com>
12178
12179         * symfile.c (place_section): Remove "struct" from section_addr_info
12180         in comment.
12181         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
12182         "struct" keyword from section_addr_info.
12183
12184 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
12185
12186         * regformats/regdef.h (reg): Add constructors.
12187
12188 2018-03-25  Pedro Alves  <palves@redhat.com>
12189
12190         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
12191         if then/else bodies in var_func_name extraction.
12192
12193 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
12194
12195         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
12196         lookup_minimal_symbol() to find symbol entry.
12197         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
12198
12199 2018-03-23  Keith Seitz  <keiths@redhat.com>
12200
12201         PR c++/22968
12202         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
12203         nested type definitions for C++, too.
12204
12205 2018-03-23  Tom Tromey  <tom@tromey.com>
12206
12207         * machoread.c (struct oso_el): Add a constructor.  Don't define as
12208         a typedef.
12209         (macho_register_oso): Remove.
12210         (macho_symtab_read): Take a std::vector.
12211         (oso_el_compare_name): Now a std::sort comparator.
12212         (macho_symfile_read_all_oso): Take a std::vector.
12213         (macho_symfile_read): Use std::vector.  Remove cleanups.
12214
12215 2018-03-22  Tom Tromey  <tom@tromey.com>
12216
12217         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
12218         (record_full_goto_bookmark): Use std::string.
12219
12220 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12221
12222         PR tdep/18295
12223         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
12224         a single mask.
12225
12226 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12227
12228         * rs6000-tdep.c (store_insn_p): New function.
12229         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
12230         and cr_reg to their unshifted values. Use store_insn_p to
12231         match LR saves using either R1 or fdata->alloca_reg. Use
12232         store_insn_p to match CR saves. Set alloca_reg_offset
12233         when alloca_reg and framep are set. Remove lr_reg shift
12234         when assigning to fdata->lr_register.
12235
12236 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12237
12238         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
12239         command line args instead of emitting a warning.
12240
12241 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12242
12243         * tracepoint.h (struct static_tracepoint_marker): Initialize
12244         fields, define default constructor, move constructor and move
12245         assignment, disable the rest.
12246         <str_id, extra>: Make std::string.
12247         (release_static_tracepoint_marker): Remove.
12248         (free_current_marker): Remove.
12249         * tracepoint.c (free_current_marker): Remove.
12250         (parse_static_tracepoint_marker_definition): Adjust to
12251         std::string, use new hex2str overload.
12252         (release_static_tracepoint_marker): Remove.
12253         (print_one_static_tracepoint_marker): Get marker by reference
12254         and adjust to std::string.
12255         (info_static_tracepoint_markers_command): Adjust to std::vector
12256         changes
12257         * target.h (static_tracepoint_marker_p): Remove typedef.
12258         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
12259         (struct target_ops) <to_static_tracepoint_marker_at>: Return
12260         bool.
12261         <to_static_tracepoint_markers_by_strid>: Return std::vector.
12262         * target-debug.h
12263         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
12264         (target_debug_print_std_vector_static_tracepoint_marker): New.
12265         (target_debug_print_struct_static_tracepoint_marker_p): Rename
12266         to...
12267         (target_debug_print_static_tracepoint_marker_p): ... this.
12268         * target-delegates.c: Re-generate.
12269         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
12270         Make std::string.
12271         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
12272         (decode_static_tracepoint_spec): Adjust to std::vector.
12273         (tracepoint_print_one_detail): Adjust to std::string.
12274         (strace_marker_decode_location): Adjust to std::string.
12275         (update_static_tracepoint): Adjust to std::string, remove call
12276         to release_static_tracepoint_marker.
12277         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
12278         Adjust to std::vector.
12279         * remote.c (remote_static_tracepoint_marker_at): Return bool.
12280         (remote_static_tracepoint_markers_by_strid): Adjust to
12281         std::vector.
12282         * common/rsp-low.h (hex2str): New overload with explicit count
12283         of bytes.
12284         * common/rsp-low.c (hex2str): New overload with explicit count
12285         of bytes.
12286         * unittests/rsp-low-selftests.c (test_hex2str): New function.
12287         (_initialize_rsp_low_selftests): Add test_hex2str test.
12288         * unittests/tracepoint-selftests.c
12289         (test_parse_static_tracepoint_marker_definition): Adjust to
12290         std::string.
12291
12292 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
12293
12294         * tracepoint.c (parse_static_tracepoint_marker_definition):
12295         Consider case where the definition is followed by more
12296         definitions.
12297         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12298         tracepoint-selftests.c.
12299         * unittests/tracepoint-selftests.c: New.
12300
12301 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
12302
12303         * MAINTAINERS (Write After Approval): Add Pedro Franco de
12304         Carvalho.
12305
12306 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12307
12308         * symtab.c (find_pc_sect_line): fixed indentation.
12309
12310 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
12311
12312         * symtab.c (find_pc_sect_line): now uses binary search.
12313
12314 2018-03-19  Tom Tromey  <tom@tromey.com>
12315
12316         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
12317         "IDENT" production.
12318
12319 2018-03-19  Pedro Alves  <palves@redhat.com>
12320             Tom Tromey  <tom@tromey.com>
12321
12322         * unittests/observable-selftests.c: New file.
12323         * common/observable.h: New file.
12324         * observable.h: New file.
12325         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
12326         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
12327         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
12328         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
12329         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
12330         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
12331         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
12332         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
12333         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
12334         python/py-breakpoint.c, python/py-finishbreakpoint.c,
12335         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
12336         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
12337         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
12338         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
12339         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
12340         tui/tui-interp.c, valops.c: Update all users.
12341         * tui/tui-hooks.c (tui_bp_created_observer)
12342         (tui_bp_deleted_observer, tui_bp_modified_observer)
12343         (tui_inferior_exit_observer, tui_before_prompt_observer)
12344         (tui_normal_stop_observer, tui_register_changed_observer):
12345         Remove.
12346         (tui_observers_token): New global.
12347         (attach_or_detach, tui_attach_detach_observers): New functions.
12348         (tui_install_hooks, tui_remove_hooks): Use
12349         tui_attach_detach_observers.
12350         * record-btrace.c (record_btrace_thread_observer): Remove.
12351         (record_btrace_thread_observer_token): New global.
12352         * observer.sh: Remove.
12353         * observer.c: Rename to observable.c.
12354         * observable.c (namespace gdb_observers): Define new objects.
12355         (observer_debug): Move into gdb_observers namespace.
12356         (struct observer, struct observer_list, xalloc_observer_list_node)
12357         (xfree_observer_list_node, generic_observer_attach)
12358         (generic_observer_detach, generic_observer_notify): Remove.
12359         (_initialize_observer): Update.
12360         Don't include observer.inc.
12361         * Makefile.in (generated_files): Remove observer.h, observer.inc.
12362         (clean mostlyclean): Likewise.
12363         (observer.h, observer.inc): Remove targets.
12364         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
12365         (COMMON_SFILES): Use observable.c, not observer.c.
12366         * .gitignore: Remove observer.h.
12367
12368 2018-03-18  Tom Tromey  <tom@tromey.com>
12369
12370         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
12371         gdb::def_vector.
12372         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
12373
12374 2018-03-17  Tom Tromey  <tom@tromey.com>
12375
12376         * auto-load.c (auto_load_objfile_script_1): Use std::string.
12377
12378 2018-03-17  Tom Tromey  <tom@tromey.com>
12379
12380         * target.c (class scoped_target_fd): New.
12381         (target_fileio_close_cleanup): Remove.
12382         (target_fileio_read_alloc_1): Use scoped_target_fd.
12383
12384 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
12385
12386         * silent-rules.mk: New.
12387         * Makefile.in: Include silent-rules.mk
12388         (srcdir, VPATH, top_srcdir): Move up.
12389         (COMPILE): Add ECHO_CXX.
12390         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
12391         (init.c): Add ECHO_INIT_C.
12392         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
12393         (version.c): Add ECHO_GEN.
12394         (printcmd.o): Add ECHO_CXX.
12395         (target-float.o): Add ECHO_CXX.
12396         (ada-exp.o): Add ECHO_CXX.
12397         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
12398         (insight$(EXEEXT)): Add ECHO_CXXLD.
12399         * gnulib/configure.ac: Add AM_SILENT_RULES.
12400         * gnulib/aclocal.m4: Re-generate.
12401         * gnulib/configure: Re-generate.
12402         * gnulib/import/Makefile.in: Re-generate.
12403
12404 2018-03-16  Tom Tromey  <tom@tromey.com>
12405
12406         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
12407         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
12408         * utils.c (do_free_section_addr_info)
12409         (make_cleanup_free_section_addr_info): Remove.
12410         * symfile.h (struct other_sections): Add constructor.
12411         (struct section_addr_info): Remove.
12412         (section_addr_info): New typedef.
12413         (struct sym_fns) <sym_offsets>: Change type of parameter.
12414         (build_section_addr_info_from_objfile)
12415         (relative_addr_info_to_section_offsets, addr_info_make_relative)
12416         (default_symfile_offsets, symbol_file_add)
12417         (symbol_file_add_from_bfd)
12418         (build_section_addr_info_from_section_table): Update.
12419         (alloc_section_addr_info, free_section_addr_info): Don't declare.
12420         * symfile.c (alloc_section_addr_info): Remove.
12421         (build_section_addr_info_from_section_table): Change return type.
12422         Update.
12423         (build_section_addr_info_from_bfd)
12424         (build_section_addr_info_from_objfile): Likewise.
12425         (free_section_addr_info): Remove.
12426         (relative_addr_info_to_section_offsets): Change type of "addrs".
12427         (addrs_section_compar): Now a std::sort comparator.
12428         (addrs_section_sort): Change return type.
12429         (addr_info_make_relative): Change type of "addrs".  Update.
12430         (default_symfile_offsets, syms_from_objfile_1)
12431         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
12432         (symbol_file_add_separate): Update.
12433         (symbol_file_add): Change type of "addrs".  Update.
12434         (add_symbol_file_command): Update.  Remove cleanups.
12435         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
12436         cleanups.
12437         * symfile-debug.c (debug_sym_offsets): Change type of "info".
12438         * solib.c (solib_read_symbols): Update.
12439         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
12440         * machoread.c (macho_symfile_offsets): Update.
12441         * jit.c (jit_bfd_try_read_symtab): Update.
12442
12443 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
12444
12445         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12446         unittests/utils-selftests.c.
12447         * unittests/utils-selftests.c: New file.
12448
12449 2018-03-14  Tom Tromey  <tom@tromey.com>
12450
12451         PR cli/14977:
12452         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
12453         for NULL.
12454
12455 2018-03-14  Tom Tromey  <tom@tromey.com>
12456
12457         PR cli/19918:
12458         * printcmd.c (printf_pointer): Allow "-" in format.
12459
12460 2018-03-14  Tom Tromey  <tom@tromey.com>
12461
12462         * printcmd.c (_initialize_printcmd): Add usage to printf.
12463
12464 2018-03-14  Yao Qi  <qiyao@sourceware.org>
12465
12466         * MAINTAINERS: Update my email address.
12467
12468 2018-03-13  Tom Tromey  <tom@tromey.com>
12469
12470         * machoread.c (macho_check_dsym): Change filenamep to a
12471         std::string*.
12472         (macho_symfile_read): Update.
12473         * symfile.c (load_command): Use std::string.
12474
12475 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
12476
12477         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
12478         to error message string.
12479         (riscv_register_name): Use xsnprintf instead of sprintf.
12480         (riscv_insn::fetch_instruction): Use gdb_assert instead of
12481         internal_error.
12482         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
12483         error.
12484         (riscv_push_dummy_call): Likewise.
12485
12486 2018-03-12  Tom Tromey  <tom@tromey.com>
12487
12488         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
12489         Use gdb::byte_vector.
12490         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
12491
12492 2018-03-12  Yao Qi  <yao.qi@linaro.org>
12493
12494         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
12495         parameter type to readable_regcache.
12496         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
12497         the declaration.
12498
12499 2018-03-11  Tom Tromey  <tom@tromey.com>
12500
12501         * dwarf2read.c (struct nextfield): Add initializers.
12502         (struct nextfnfield): Remove.
12503         (struct fnfieldlist): Add initializers.  Remove "length" and
12504         "head", use std::vector.
12505         (struct decl_field_list): Remove.
12506         (struct field_info): Add initializers.
12507         <fields, baseclasses>: Now std::vector.
12508         <nbaseclasses, nfnfields, typedef_field_list_count,
12509         nested_types_list_count>: Remove.
12510         (dwarf2_add_field, dwarf2_add_type_defn)
12511         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
12512         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
12513         (process_structure_scope): Update.
12514
12515 2018-03-11  Tom Tromey  <tom@tromey.com>
12516
12517         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
12518         for use by std::sort.
12519         (build_type_psymtabs_1): Use std::vector.
12520
12521 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
12522
12523         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
12524         and LIBMPFR in the printed configuration.
12525
12526 2018-03-08  Tom Tromey  <tom@tromey.com>
12527
12528         * source.c (get_filename_and_charpos): Use scoped_fd.
12529         * nto-procfs.c (procfs_open_1): Use scoped_fd.
12530         (procfs_pidlist): Likewise.
12531         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
12532         (iterate_over_mappings): Likewise.
12533
12534 2018-03-08  Tom Tromey  <tom@tromey.com>
12535
12536         * infcall.c (struct call_return_meta_info)
12537         <stack_temporaries_enabled>: Remove.
12538         (get_call_return_value, call_function_by_hand_dummy): Update.
12539         * thread.c (disable_thread_stack_temporaries): Remove.
12540         (enable_thread_stack_temporaries): Remove.
12541         (thread_stack_temporaries_enabled_p): Return bool.
12542         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
12543         (get_last_thread_stack_temporary): Update.
12544         * eval.c (evaluate_subexp): Update.
12545         * gdbthread.h (class enable_thread_stack_temporaries): Now a
12546         class, not a function.
12547         (value_ptr, value_vec): Remove typedefs.
12548         (class thread_info) <stack_temporaries_enabled>: Now bool.
12549         <stack_temporaries>: Now a std::vector.
12550         (thread_stack_temporaries_enabled_p)
12551         (value_in_thread_stack_temporaries): Return bool.
12552
12553 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
12554
12555         * remote.c (putpkt_binary): Fix omitted bytes reporting.
12556         (getpkt_or_notif_sane_1): Likewise.
12557
12558 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12559
12560         * build-id.c (build_id_to_debug_bfd): Use std::string.
12561
12562 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12563
12564         * build-id.c (find_separate_debug_file_by_buildid): Return
12565         std::string.
12566         * build-id.h (find_separate_debug_file_by_buildid): Return
12567         std::string.
12568         * coffread.c (coff_symfile_read): Adjust to std::string.
12569         * elfread.c (elf_symfile_read): Adjust to std::string.
12570         * symfile.c (separate_debug_file_exists): Change parameter to
12571         std::string.
12572         (find_separate_debug_file): Return std::string.
12573         (find_separate_debug_file_by_debuglink): Return std::string.
12574         * symfile.h (find_separate_debug_file_by_debuglink): Return
12575         std::string.
12576
12577 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
12578
12579         * common/xml-utils.c (xml_escape_text): Move code to...
12580         (xml_escape_text_append): ... this new function.
12581         * common/xml-utils.h (xml_escape_text_append): New declaration.
12582         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
12583         New function.
12584         (_initialize_xml_utils): register test_xml_escape_text_append as
12585         a selftest.
12586
12587 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
12588
12589         * defs.h: Remove MAX_REGISTER_SIZE.
12590         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
12591         asserts.
12592         * python/py-unwind.c (pyuw_sniffer): Likewise.
12593
12594 2018-03-07  Tom Tromey  <tom@tromey.com>
12595
12596         * linux-tdep.c (linux_info_proc): Update.
12597         * target.h (struct target_ops) <to_fileio_readlink>: Return
12598         optional<string>.
12599         (target_fileio_readlink): Return optional<string>.
12600         * remote.c (remote_hostio_readlink): Return optional<string>.
12601         * inf-child.c (inf_child_fileio_readlink): Return
12602         optional<string>.
12603         * target.c (target_fileio_readlink): Return optional<string>.
12604
12605 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
12606
12607         * regcache.c (cooked_read_test): Add riscv to the list of
12608         architectures that have a save_reggroup.
12609
12610 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12611
12612         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
12613         value is not a dynamic class object.
12614
12615 2018-03-06  Tom Tromey  <tom@tromey.com>
12616
12617         * rust-exp.y: Formatting fixes.
12618
12619 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12620
12621         * riscv-tdep.c (riscv_register_name): Remove target description
12622         support.
12623         (riscv_gdbarch_init): Remove target description check.
12624
12625 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12626
12627         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
12628         comment.
12629         * riscv-tdep.h: Likewise.
12630
12631 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12632
12633         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
12634         (riscv_pseudo_register_write): Delete.
12635         (riscv_gdbarch_init): Remove all use of pseudo registers.
12636
12637 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12638
12639         * record-btrace.c (btrace_print_lines): Replace cleanup
12640         parameter with RAII equivalents.
12641         (btrace_insn_history): Replace cleanup with RAII equivalents.
12642         * ui-out.h (make_cleanup_ui_out_list_begin_end,
12643         make_cleanup_ui_out_tuple_begin_end): Remove.
12644         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
12645         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
12646         make_cleanup_ui_out_list_begin_end): Remove.
12647
12648 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12649
12650         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
12651         parameter types to std::vector.  Use bool.
12652         (record_btrace_wait): Replace VEC(tp_t) with
12653         std::vector<thread_info *>.
12654         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
12655
12656 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
12657
12658         * record-btrace.c (record_btrace_disable_callback): Remove.
12659         (struct scoped_btrace_disable): New.
12660         (record_btrace_open): Use scoped_btrace_disable.
12661
12662 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12663
12664         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
12665         reading values from registers.
12666
12667 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12668
12669         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
12670         where appropriate.
12671
12672 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12673
12674         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
12675         change parameter type.  Use GDB's print functions, and use
12676         core_addr_to_string where appropriate.
12677         (riscv_push_dummy_call): Use core_addr_to_string where
12678         appropriate, update call to riscv_print_arg_location, and reindent
12679         a few lines.
12680         (riscv_return_value): Update call to riscv_print_arg_location.
12681
12682 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12683             Tim Newsome <tim@sifive.com>
12684             Albert Ou <a0u@eecs.berkeley.edu>
12685             Darius Rad <darius@bluespec.com>
12686
12687         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
12688         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
12689         (ALLDEPFILES): Add riscv-tdep.c
12690         * configure.tgt: Add riscv support.
12691         * riscv-tdep.c: New file.
12692         * riscv-tdep.h: New file.
12693         * NEWS: Mention new target.
12694         * MAINTAINERS: Add entry for riscv.
12695
12696 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
12697
12698         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
12699         fields within aggregates.
12700
12701 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
12702
12703         * record-btrace.c (btrace_print_lines): Change type of flags to
12704         gdb_disassembly_flags.
12705
12706 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12707
12708         * fbsd-nat.c: Include "inf-ptrace.h".
12709         (USE_SIGTRAP_SIGINFO): Conditionally define.
12710         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
12711         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
12712         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
12713         function.
12714         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
12715         Likewise.
12716         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
12717         Likewise.
12718         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
12719         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
12720         "supports_stopped_by_hw_breakpoint" target methods.
12721
12722 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12723
12724         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
12725         * fbsd-nat.c (debug_fbsd_nat): New variable.
12726         (show_fbsd_nat_debug): New function.
12727         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
12728         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
12729
12730 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
12731
12732         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
12733         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
12734         prototype.
12735         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
12736         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
12737         method.
12738
12739 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12740
12741         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
12742         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
12743
12744 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12745
12746         * charset.c (struct charset_vector): New.
12747         (charsets): Change type to charset_vector.
12748         (find_charset_names): Adjust.
12749         (add_one): Adjust.
12750         (_initialize_charset): Adjust.
12751
12752 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12753
12754         * progspace.h (struct program_space) <deleted_solibs>: Change
12755         type to std::vector<std::string>.
12756         * progspace.c (clear_program_space_solib_cache): Adjust.
12757         * breakpoint.c (print_solib_event): Adjust.
12758         (check_status_catch_solib): Adjust.
12759         * solib.c (update_solib_list): Adjust.
12760         * ui-out.h (class ui_out) <field_string>: New overload.
12761         * ui-out.c (ui_out::field_string): New overload.
12762
12763 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12764
12765         * progspace.h (struct program_space): Add constructor and
12766         destructor, initialize fields.
12767         (add_program_space): Remove.
12768         * progspace.c (add_program_space): Rename to...
12769         (program_space::program_space): ... this.
12770         (release_program_space): Rename to...
12771         (program_space::~program_space): ... this.
12772         (delete_program_space): Use delete to delete program_space.
12773         (initialize_progspace): Use new to allocate program_space.
12774         * inferior.c (add_inferior_with_spaces): Likewise.
12775         (clone_inferior_command): Likewise.
12776         * infrun.c (follow_fork_inferior): Likewise.
12777         (handle_vfork_child_exec_or_exit): Likewise.
12778
12779 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
12780
12781         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
12782         (delim_string_to_char_ptr_vec): Return std::vector of
12783         gdb::unique_xmalloc_ptr.
12784         (dirnames_to_char_ptr_vec_append): Take std::vector of
12785         gdb::unique_xmalloc_ptr.
12786         (dirnames_to_char_ptr_vec): Return std::vector of
12787         gdb::unique_xmalloc_ptr.
12788         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
12789         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
12790         (delim_string_to_char_ptr_vec): Return an std::vector of
12791         gdb::unique_xmalloc_ptr, adjust the code.
12792         (dirnames_to_char_ptr_vec_append): Take an std::vector of
12793         gdb::unique_xmalloc_ptr, adjust the code.
12794         (dirnames_to_char_ptr_vec): Return an std::vector of
12795         gdb::unique_xmalloc_ptr, adjust the code.
12796         * auto-load.c (auto_load_safe_path_vec): Change type to
12797         std::vector of gdb::unique_xmalloc_ptr.
12798         (auto_load_expand_dir_vars): Return an std::vector of
12799         gdb::unique_xmalloc_ptr, adjust the code.
12800         (auto_load_safe_path_vec_update): Adjust.
12801         (filename_is_in_auto_load_safe_path_vec): Adjust.
12802         (auto_load_objfile_script_1): Adjust.
12803         * build-id.c (build_id_to_debug_bfd): Adjust.
12804         * linux-thread-db.c (thread_db_load_search): Adjust.
12805         * source.c (add_path): Adjust.
12806         (openp): Adjust.
12807         * symfile.c (find_separate_debug_file): Adjust.
12808         * utils.c (do_free_char_ptr_vec): Remove.
12809         (make_cleanup_free_char_ptr_vec): Remove.
12810
12811 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
12812
12813         PR gdb/22907
12814         * common/pathstuff.c: Conditionally include "<windows.h>".
12815
12816 2018-03-01  Georg Sauthoff  <mail@georg.so>
12817
12818         PR gdb/22888
12819         * gcore.in: Quote variables and switch interpreter to bash.
12820
12821 2018-03-01  Tom Tromey  <tom@tromey.com>
12822
12823         * dwarf2read.c (alloc_discriminant_info): Fix default_index
12824         assertion.  Add assertion for discriminant_index.
12825         (quirk_rust_enum): Use correct base type name in univariant case.
12826
12827 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
12828
12829         * record.c (get_call_history_modifiers): Return a
12830         record_print_flags.
12831         (cmd_record_call_history): Adjust.
12832         * record-btrace.c (record_btrace_call_history): Adjust.
12833         (record_btrace_call_history_range): Adjust.
12834         (record_btrace_call_history_from): Adjust.
12835         * target-debug.h (target_debug_print_record_print_flags): New.
12836         * target-delegates.c: Re-generate.
12837         * target.c (target_call_history): Change flags type.
12838         (target_call_history_from): Likewise.
12839         (target_call_history_range): Likewise.
12840         * target.h (struct target_ops) <target_call_history>: Likewise.
12841         (target_call_history_from): Likewise.
12842         (target_call_history_range): Likewise.
12843
12844 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12845             Simon Marchi  <simon.marchi@polymtl.ca>
12846
12847         * common/common-utils.c: Include "sys/stat.h".
12848         (is_regular_file): Move here from "source.c"; change return
12849         type to "bool".
12850         * common/common-utils.h (is_regular_file): New prototype.
12851         * common/pathstuff.c (contains_dir_separator): New function.
12852         * common/pathstuff.h (contains_dir_separator): New prototype.
12853         * source.c: Don't include "sys/stat.h".
12854         (is_regular_file): Move to "common/common-utils.c".
12855
12856 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
12857
12858         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
12859         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
12860         * auto-load.c: Include "common/pathstuff.h".
12861         * common/common-def.h (current_directory): Move here.
12862         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
12863         function.
12864         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
12865         prototype.
12866         * common/pathstuff.c: New file.
12867         * common/pathstuff.h: New file.
12868         * compile/compile.c: Include "common/pathstuff.h".
12869         * defs.h (current_directory): Move to "common/common-defs.h".
12870         * dwarf2read.c: Include "common/pathstuff.h".
12871         * exec.c: Likewise.
12872         * guile/scm-safe-call.c: Likewise.
12873         * linux-thread-db.c: Likewise.
12874         * main.c: Likewise.
12875         * nto-tdep.c: Likewise.
12876         * objfiles.c: Likewise.
12877         * source.c: Likewise.
12878         * symtab.c: Likewise.
12879         * utils.c: Include "common/pathstuff.h".
12880         (gdb_realpath): Move to "common/pathstuff.c".
12881         (gdb_realpath_keepfile): Likewise.
12882         (gdb_abspath): Likewise.
12883         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
12884         (gdb_realpath_keepfile): Likewise.
12885         (gdb_abspath): Likewise.
12886
12887 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
12888
12889         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
12890         wildcard process pid for super_resume for kernels with a
12891         specific bug.
12892
12893 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
12894
12895         * compile/compile.c (get_args): Add additional comments
12896         explaining function.
12897
12898 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
12899             Tom Tromey  <tom@tromey.com>
12900
12901         * target.h (memory_write_request_s): Remove typedef.  Don't define
12902         VEC.
12903         (target_write_memory_blocks): Change argument to std::vector.
12904         (struct memory_write_request): Add constructor.
12905         * target-memory.c (compare_block_starting_address): Return bool.
12906         Change argument types.
12907         (claim_memory): Change arguments to use std::vector.
12908         (split_regular_and_flash_blocks, blocks_to_erase)
12909         (compute_garbled_blocks): Likewise.
12910         (cleanup_request_data, cleanup_write_requests_vector): Remove.
12911         (target_write_memory_blocks): Change argument to std::vector.
12912         * symfile.c (struct load_section_data): Add constructor and
12913         destructor.  Use std::vector for "requests".
12914         (struct load_progress_data): Add initializers.
12915         (load_section_callback): Update.  Use "new".
12916         (clear_memory_write_data): Remove.
12917         (generic_load): Update.
12918
12919 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
12920
12921         * arch/aarch64.h: Use common/tdesc.h.
12922
12923 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12924
12925         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
12926         architecture with a 64-bit ABI.
12927
12928 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
12929
12930         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
12931         ahead of target description loading.
12932
12933 2018-02-26  Tom Tromey  <tom@tromey.com>
12934
12935         * stack.c (backtrace_command_1): Update.
12936         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
12937         of "flags".
12938         * python/py-framefilter.c (py_print_frame)
12939         (gdbpy_apply_frame_filter): Change type of "flags".
12940         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
12941         of "flags".
12942         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
12943         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
12944         * extension.h (enum frame_filter_flag): Rename from
12945         frame_filter_flags.
12946         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
12947         (apply_ext_lang_frame_filter): Change type of "flags".
12948         * extension.c (apply_ext_lang_frame_filter): Change type of
12949         "flags".
12950         * extension-priv.h (struct extension_language_ops)
12951         <apply_frame_filter>: Change type of "flags".
12952
12953 2018-02-26  Tom Tromey  <tom@tromey.com>
12954
12955         PR python/16497:
12956         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
12957         off-by-one in py_end computation.
12958         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
12959         PRINT_MORE_FRAMES.
12960         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
12961         constant.
12962
12963 2018-02-26  Tom Tromey  <tom@tromey.com>
12964
12965         * dwarf2read.c (struct variant_field): New.
12966         (struct nextfield) <variant>: New field.
12967         (dwarf2_add_field): Handle DW_TAG_variant_part.
12968         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
12969         discriminated union.
12970         (read_structure_type): Handle DW_TAG_variant_part.
12971         (handle_struct_member_die): New function, extracted from
12972         process_structure_scope.  Handle DW_TAG_variant.
12973         (process_structure_scope): Handle discriminated unions.  Call
12974         handle_struct_member_die.
12975
12976 2018-02-26  Tom Tromey  <tom@tromey.com>
12977
12978         * rust-lang.h (rust_last_path_segment): Declare.
12979         * rust-lang.c (rust_last_path_segment): Now public.  Change
12980         contract.
12981         (struct disr_info): Remove.
12982         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
12983         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
12984         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
12985         (rust_enum_p, rust_enum_variant): New function.
12986         (rust_underscore_fields): Remove "offset" parameter.
12987         (rust_print_enum): New function.
12988         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
12989         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
12990         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
12991         enums.
12992         (rust_internal_print_type): New function, from rust_print_type.
12993         Remove enum code.
12994         (rust_print_type): Call rust_internal_print_type.
12995         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
12996         Update enum handling.
12997         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
12998         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
12999         (rust_union_quirks): New functions.
13000         (process_full_comp_unit, process_full_type_unit): Call
13001         rust_union_quirks.
13002         (process_structure_scope): Update rust_unions if necessary.
13003
13004 2018-02-26  Tom Tromey  <tom@tromey.com>
13005
13006         * value.h (value_union_variant): Declare.
13007         * valops.c (value_union_variant): New function.
13008         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
13009         (struct discriminant_info): New.
13010         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
13011         enumerator.
13012         (struct main_type) <flag_discriminated_union>: New field.
13013
13014 2018-02-26  Tom Tromey  <tom@tromey.com>
13015
13016         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13017         unittests/unpack-selftests.c.
13018         * unittests/unpack-selftests.c: New file.
13019         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
13020
13021 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13022
13023         * dwarf2read.c (struct partial_die_info) <read>: New method.
13024         (read_partial_die): Remove the declaration.
13025         (load_partial_dies): Update.
13026         (partial_die_info::partial_die_info):
13027         (read_partial_die): Change it to partial_die_info::read.
13028
13029 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13030
13031         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
13032         (fixup_partial_die): Remove declaration.
13033         (scan_partial_symbols): Update.
13034         (partial_die_parent_scope): Likewise.
13035         (partial_die_full_name): Likewise.
13036         (fixup_partial_die): Change it to partial_die_info::fixup.
13037
13038 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13039
13040         * dwarf2read.c (read_partial_die): Update the declaration.
13041         (load_partial_dies): Caller update.
13042         (read_partial_die): Remove one argument abbrev_len.
13043
13044 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13045
13046         * dwarf2read.c (struct partial_die_info): Add ctor, delete
13047         assignment operator.
13048         (load_partial_dies): Use ctor and copy ctor.
13049         (read_partial_die): Update.
13050         (dwarf2_cu::find_partial_die): Use ctor.
13051
13052 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13053
13054         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
13055         (find_partial_die_in_comp_unit): Change it to
13056         dwarf2_cu::find_partial_die.
13057         (find_partial_die): Update.
13058
13059 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13060
13061         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
13062         is NULL.
13063
13064 2018-02-26  Yao Qi  <yao.qi@linaro.org>
13065
13066         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
13067
13068 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
13069
13070         * arch/amd64.h: Use common/tdesc.h.
13071         * arch/i386.c: Likewise.
13072         * arch/i386.h: Likewise.
13073         * arch/tic6x.c: Likewise.
13074         * arch/tdesc.h: Move file from here...
13075         * common/tdesc.h: ...to here.
13076         * features/aarch64-core.c: Regenerate.
13077         * features/aarch64-fpu.c: Regenerate.
13078         * features/i386/32bit-avx.c: Regenerate.
13079         * features/i386/32bit-avx512.c: Regenerate.
13080         * features/i386/32bit-core.c: Regenerate.
13081         * features/i386/32bit-linux.c: Regenerate.
13082         * features/i386/32bit-mpx.c: Regenerate.
13083         * features/i386/32bit-pkeys.c: Regenerate.
13084         * features/i386/32bit-sse.c: Regenerate.
13085         * features/i386/64bit-avx.c: Regenerate.
13086         * features/i386/64bit-avx512.c: Regenerate.
13087         * features/i386/64bit-core.c: Regenerate.
13088         * features/i386/64bit-linux.c: Regenerate.
13089         * features/i386/64bit-mpx.c: Regenerate.
13090         * features/i386/64bit-pkeys.c: Regenerate.
13091         * features/i386/64bit-segments.c: Regenerate.
13092         * features/i386/64bit-sse.c: Regenerate.
13093         * features/i386/x32-core.c: Regenerate.
13094         * features/tic6x-c6xp.c: Regenerate.
13095         * features/tic6x-core.c: Regenerate.
13096         * features/tic6x-gp.c: Regenerate.
13097         * target-descriptions.c: Use common/tdesc.h.
13098         * target-descriptions.h: Likewise.
13099
13100 2018-02-24  Tom Tromey  <tom@tromey.com>
13101
13102         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
13103         (try_thread_db_load_from_dir, thread_db_load_search): Use
13104         std::string.
13105         (info_auto_load_libthread_db_compare): Return bool.  Change
13106         argument types.
13107         (info_auto_load_libthread_db): Use std::vector, std::string.
13108         Remove cleanups.
13109
13110 2018-02-24  Tom Tromey  <tom@tromey.com>
13111
13112         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
13113         std::string.
13114         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
13115         std::string*.
13116         * gdbarch.c: Rebuild.
13117         * gdbarch.h: Rebuild.
13118         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
13119         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
13120         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
13121         std::string*.
13122
13123 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
13124
13125         * gdbtypes.h (sect_offset): Change type to uint64_t.
13126         (sect_offset_str): New function.
13127         * dwarf2read.c (create_addrmap_from_aranges): Use
13128         sect_offset_str.
13129         (error_check_comp_unit_head): Likewise.
13130         (create_debug_type_hash_table): Likewise.
13131         (read_cutu_die_from_dwo): Likewise.
13132         (init_cutu_and_read_dies): Likewise.
13133         (init_cutu_and_read_dies_no_follow): Likewise.
13134         (process_psymtab_comp_unit_reader): Likewise.
13135         (partial_die_parent_scope): Likewise.
13136         (peek_die_abbrev): Likewise.
13137         (process_queue): Likewise.
13138         (dwarf2_physname): Likewise.
13139         (read_namespace_alias): Likewise.
13140         (read_import_statement): Likewise.
13141         (create_dwo_cu_reader): Likewise.
13142         (create_cus_hash_table): Likewise.
13143         (lookup_dwo_cutu): Likewise.
13144         (inherit_abstract_dies): Likewise.
13145         (read_func_scope): Likewise.
13146         (read_call_site_scope): Likewise.
13147         (dwarf2_add_member_fn): Likewise.
13148         (read_common_block): Likewise.
13149         (read_module_type): Likewise.
13150         (read_typedef): Likewise.
13151         (read_subrange_type): Likewise.
13152         (load_partial_dies): Likewise.
13153         (read_partial_die): Likewise.
13154         (find_partial_die): Likewise.
13155         (read_str_index): Likewise.
13156         (dwarf2_string_attr): Likewise.
13157         (build_error_marker_type): Likewise.
13158         (lookup_die_type): Likewise.
13159         (dump_die_shallow): Likewise.
13160         (follow_die_ref): Likewise.
13161         (dwarf2_fetch_die_loc_sect_off): Likewise.
13162         (dwarf2_fetch_constant_bytes): Likewise.
13163         (follow_die_sig): Likewise.
13164         (get_signatured_type): Likewise.
13165         (get_DW_AT_signature_type): Likewise.
13166         (dwarf2_find_containing_comp_unit): Likewise.
13167         (set_die_type): Likewise.
13168
13169 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
13170
13171         * arch/aarch64.c: Include "common-defs.h".
13172         * arch/amd64.c: Likewise.
13173         * arch/i386.c: Likewise.
13174
13175 2018-02-21  Tom Tromey  <tom@tromey.com>
13176
13177         * value.h: (extract_field_op): Update.
13178         * eval.c (extract_field_op): Return a const char *.
13179         * expression.h (parse_expression_for_completion): Update.
13180         * completer.c (complete_expression): Update.
13181         (add_struct_fields): Make fieldname const.
13182         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
13183         (mark_completion_tag, parse_exp_in_context_1): Update.
13184         (parse_expression_for_completion): Change "name" to
13185         unique_xmalloc_ptr*.
13186
13187 2018-02-21  Tom Tromey  <tom@tromey.com>
13188
13189         * infcall.c (call_function_by_hand_dummy): Use std::vector.
13190
13191 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13192
13193         * avr-tdep.c (avr_read_pc): Change parameter type to
13194         readable_regcache.
13195         * gdbarch.sh (read_pc): Likewise.
13196         * gdbarch.c: Re-generated.
13197         * gdbarch.h: Re-generated.
13198         * hppa-tdep.c (hppa_read_pc): Change parameter type to
13199         readable_regcache.
13200         * ia64-tdep.c (ia64_read_pc): Likewise.
13201         * mips-tdep.c (mips_read_pc): Likewise.
13202         * spu-tdep.c (spu_read_pc): Likewise.
13203
13204 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13205
13206         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
13207         * regcache-dump.c: New file.
13208         * regcache.c: Move register_dump to regcache-dump.c.
13209         (maintenance_print_registers): Likewise.
13210         (maintenance_print_raw_registers): Likewise.
13211         (maintenance_print_cooked_registers): Likewise.
13212         (maintenance_print_register_groups): Likewise.
13213         (maintenance_print_remote_registers): Likewise.
13214         (_initialize_regcache): Likewise.
13215         * regcache.h (register_dump): Moved from regcache.c.
13216
13217 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13218
13219         * regcache.c (regcache::regcache): Update.
13220         (regcache::invalidate): Move it to detached_regcache::invalidate.
13221         (get_thread_arch_aspace_regcache): Update.
13222         (regcache::raw_update): Update.
13223         (regcache::cooked_read): Remove some code.
13224         (regcache::cooked_read_value): Likewise.
13225         (regcache::raw_write): Remove assert on m_readonly_p.
13226         (regcache::raw_supply_integer): Move it to
13227         detached_regcache::raw_supply_integer.
13228         (regcache::raw_supply_zeroed): Likewise.
13229         * regcache.h (detached_regcache) <raw_supply_integer>: New
13230         declaration.
13231         <raw_supply_zeroed, invalidate>: Likewise.
13232         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
13233         <invalidate>: Likewise.
13234         <m_readonly_p>: Removed.
13235
13236 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13237
13238         * infcmd.c (get_return_value): Let stop_regs point to
13239         get_current_regcache.
13240         * regcache.c (regcache::regcache): Remove.
13241         (register_dump_reg_buffer): New class.
13242         (regcache_print): Adjust.
13243         * regcache.h (regcache): Remove constructors.
13244
13245 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13246
13247         * regcache.c (class register_dump): New class.
13248         (register_dump_regcache, register_dump_none): New class.
13249         (register_dump_remote, register_dump_groups): New class.
13250         (regcache_print): Update.
13251         * regcache.h (regcache_dump_what): Move it to regcache.c.
13252         (regcache) <dump>: Remove.
13253
13254 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13255
13256         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
13257          reg_buffer_rw *.
13258         (jit_unwind_reg_set_impl): Call raw_supply.
13259         (jit_frame_sniffer): Use reg_buffer_rw.
13260         * record-full.c (record_full_core_regbuf): Change its type.
13261         (record_full_core_open_1): Use reg_buffer_rw.
13262         (record_full_close): Likewise.
13263         (record_full_core_fetch_registers): Use regcache->raw_supply.
13264         (record_full_core_store_registers): Likewise.
13265         * regcache.c (regcache::get_register_status): Move it to
13266         reg_buffer.
13267         (regcache_raw_set_cached_value): Remove.
13268         (regcache::raw_set_cached_value): Remove.
13269         (regcache::raw_write): Call raw_supply.
13270         (regcache::raw_supply): Move it to reg_buffer_rw.
13271         * regcache.h (regcache_raw_set_cached_value): Remove.
13272         (reg_buffer_rw): New class.
13273
13274 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13275
13276         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
13277         readonly_detached_regcache.
13278         (dummy_frame_prev_register): Use regcache->cooked_read.
13279         * frame.c (frame_save_as_regcache): Change return type.
13280         (frame_pop): Update.
13281         * frame.h (frame_save_as_regcache): Update declaration.
13282         * inferior.h (get_infcall_suspend_state_regcache): Update
13283         declaration.
13284         * infrun.c (infcall_suspend_state) <registers>: use
13285         readonly_detached_regcache.
13286         (save_infcall_suspend_state): Don't use regcache_dup.
13287         (get_infcall_suspend_state_regcache): Change return type.
13288         * linux-fork.c (struct fork_info) <savedregs>: Change to
13289         readonly_detached_regcache.
13290         <pc>: New field.
13291         (fork_save_infrun_state): Don't use regcache_dup.
13292         (info_checkpoints_command): Adjust.
13293         * mi/mi-main.c (register_changed_p): Update declaration.
13294         (mi_cmd_data_list_changed_registers): Use
13295         readonly_detached_regcache.
13296         (register_changed_p): Change parameter type to
13297         readonly_detached_regcache.
13298         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
13299         readonly_detached_regcache.
13300         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
13301         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
13302         New.
13303         (regcache::save): Move it to reg_buffer.
13304         (regcache::restore): Change parameter type.
13305         (regcache_dup): Remove.
13306         * regcache.h (reg_buffer) <save>: New method.
13307         (readonly_detached_regcache): New class.
13308         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
13309         readonly_detached_regcache.
13310         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
13311
13312 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13313
13314         * frame.c (frame_save_as_regcache): Use regcache method save.
13315         (frame_pop): Use regcache method restore.
13316         * infrun.c (restore_infcall_suspend_state): Likewise.
13317         * linux-fork.c (fork_load_infrun_state): Likewise.
13318         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
13319         save.
13320         * regcache.c (regcache_save): Remove.
13321         (regcache::restore): More asserts.
13322         (regcache_cpy): Remove.
13323         * regcache.h (regcache_save): Remove the declaration.
13324         (regcache::restore): Move from private to public.
13325         Remove the friend declaration of regcache_cpy.
13326         (regcache_cpy): Remove declaration.
13327
13328 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13329
13330         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
13331         parameter type to 'readable_regcache *'.
13332         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
13333         * arm-tdep.c (arm_neon_quad_read): Likewise.
13334         (arm_pseudo_read): Likewise.
13335         * avr-tdep.c (avr_pseudo_register_read): Likewise.
13336         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
13337         * frv-tdep.c (frv_pseudo_register_read): Likewise.
13338         * gdbarch.c: Re-generated.
13339         * gdbarch.h: Re-generated.
13340         * gdbarch.sh (pseudo_register_read): Change parameter type to
13341         'readable_regcache *'.
13342         (pseudo_register_read_value): Likewise.
13343         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
13344         (h8300_pseudo_register_read): Likewise.
13345         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
13346         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
13347         (i386_pseudo_register_read_into_value): Likewise.
13348         (i386_pseudo_register_read_value): Likewise.
13349         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
13350         declaration.
13351         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
13352         * m32c-tdep.c (m32c_raw_read): Likewise.
13353         (m32c_read_flg): Likewise.
13354         (m32c_banked_register): Likewise.
13355         (m32c_banked_read): Likewise.
13356         (m32c_sb_read): Likewise.
13357         (m32c_part_read): Likewise.
13358         (m32c_cat_read): Likewise.
13359         (m32c_r3r2r1r0_read): Likewise.
13360         (m32c_pseudo_register_read): Likewise.
13361         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
13362         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
13363         (mep_pseudo_cr64_read): Likewise.
13364         (mep_pseudo_register_read): Likewise.
13365         * mips-tdep.c (mips_pseudo_register_read): Likewise.
13366         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
13367         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
13368         * regcache.c (regcache::raw_read): Move it to readable_regcache.
13369         (regcache::cooked_read): Likewise.
13370         (regcache::cooked_read_value): Likewise.
13371         (regcache_cooked_read_signed):
13372         (regcache::cooked_read): Likewise.
13373         * regcache.h (readable_regcache): New class.
13374         (regcache): Inherit readable_regcache.  Move some methods to
13375         readable_regcache.
13376         * rl78-tdep.c (rl78_pseudo_register_read): Change
13377         parameter type to 'readable_regcache *'.
13378         * rs6000-tdep.c (do_regcache_raw_read): Remove.
13379         (e500_pseudo_register_read): Change parameter type to
13380         'readable_regcache *'.
13381         (dfp_pseudo_register_read): Likewise.
13382         (vsx_pseudo_register_read): Likewise.
13383         (efpr_pseudo_register_read): Likewise.
13384         * s390-tdep.c (s390_pseudo_register_read): Likewise.
13385         * sh-tdep.c (sh_pseudo_register_read): Likewise.
13386         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
13387         (sh64_pseudo_register_read): Likewise.
13388         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
13389         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
13390         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
13391         (spu_pseudo_register_read): Likewise.
13392         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
13393         (xtensa_pseudo_register_read): Likewise.
13394
13395 2018-02-21  Yao Qi  <yao.qi@linaro.org>
13396
13397         * regcache.c (regcache::regcache): Call reg_buffer ctor.
13398         (regcache::arch): Move it to reg_buffer::arch.
13399         (regcache::register_buffer): Likewise.
13400         (regcache::assert_regnum): Likewise.
13401         (regcache::num_raw_registers): Likewise.
13402         * regcache.h (reg_buffer): New class.
13403         (regcache): Inherit reg_buffer.
13404
13405 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
13406
13407         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
13408         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
13409
13410 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
13411
13412         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
13413
13414 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
13415
13416         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
13417         (SFILES): Remove common/*.c files.
13418         (COMMON_OBS): Remove some *.o files built from common/*.c files.
13419         * common/common.host: Add common reference.
13420         * configure.ac: Likewise.
13421         * configure: Regenerate.
13422
13423 2018-02-16  Yao Qi  <yao.qi@linaro.org>
13424
13425         * block.c (block_namespace_info): Inherit allocate_on_obstack.
13426         (block_initialize_namespace): Use new.
13427         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
13428         (dwarf2_free_objfile): Use delete.
13429         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
13430         (copy_type_recursive): Use new.
13431         * gdb_obstack.h (allocate_on_obstack): New.
13432
13433 2018-02-15  Yao Qi  <yao.qi@linaro.org>
13434
13435         PR gdb/22849
13436         * inferior.c (exit_inferior_1): Reset inf->control.
13437
13438 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
13439
13440         * ada-lang.c (ada_to_fixed_value_create): Delete advance
13441         declaration.
13442
13443 2018-02-14  Pedro Alves  <palves@redhat.com>
13444
13445         * frame-unwind.c (frame_unwind_try_unwinder): Always call
13446         frame_cleanup_after_sniffer on exception.
13447
13448 2018-02-14  Tom Tromey  <tom@tromey.com>
13449
13450         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
13451         const.
13452         (solib_bfd_open): Make pathname const.
13453         * solib.c (solib_bfd_open): Make pathname const.
13454         * solib-spu.c (spu_bfd_fopen): Make name const.
13455         (spu_bfd_open): Make pathname const.
13456         * solib-darwin.c (darwin_bfd_open): Make pathname const.
13457         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
13458
13459 2018-02-14  Tom Tromey  <tom@tromey.com>
13460
13461         * symfile.c (symfile_bfd_open): Update.
13462         * source.h (openp, source_full_path_of, find_and_open_source):
13463         Change argument type to unique_xmalloc_ptr.
13464         * source.c (openp): Take a unique_xmalloc_ptr.
13465         (source_full_path_of, find_and_open_source): Likewise.
13466         (open_source_file, symtab_to_fullname): Update.
13467         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
13468         unique_xmalloc_ptr.
13469         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
13470         (exec_file_find): Update.
13471         * psymtab.c (psymtab_to_fullname): Update.
13472         * nto-tdep.h (nto_find_and_open_solib): Update.
13473         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
13474         unique_xmalloc_ptr.
13475         * exec.c (exec_file_attach): Update.
13476         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
13477         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
13478
13479 2018-02-14  Tom Tromey  <tom@tromey.com>
13480
13481         * solib.c: Include source.h.
13482         * nto-tdep.c: Include source.h.
13483         * mi/mi-cmd-env.c: Include source.h.
13484         * infcmd.c: Include source.h.
13485         * exec.c: Include source.h.
13486         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
13487         (add_path, directory_switch, source_path, init_source_path): Move
13488         declarations...
13489         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
13490         (add_path, directory_switch, source_path, init_source_path):
13491         ...here.
13492
13493 2018-02-14  Tom Tromey  <tom@tromey.com>
13494
13495         * solist.h (exec_file_find, solib_find): Return
13496         unique_xmalloc_ptr.
13497         (solib_bfd_fopen): Take a const char *.
13498         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
13499         (exec_file_find, solib_find): Likewise.
13500         (solib_bfd_fopen): Do not take ownership of "pathname".
13501         (solib_bfd_open): Use unique_xmalloc_ptr.
13502         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
13503         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
13504         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
13505         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
13506
13507 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
13508
13509         * ada-lang.c (name_match_type_from_name): Remove reference to
13510         ada_name_for_lookup in function's documentation.
13511         * ada-lang.h (ada_name_for_lookup): Delete declaration.
13512
13513 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13514
13515         * defs.h (enum openp_flags): New enum.
13516         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
13517         Move to enum openp_flags.
13518         (openp_flags): New enum flags.
13519         (openp): Change parameter type to openp_flags.
13520         * source.c (openp): Change parameter type to openp_flags.
13521         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
13522         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
13523
13524 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
13525
13526         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
13527         per-command.
13528
13529 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13530
13531         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
13532         into...
13533         (class dwarf2_queue_guard): ...the destructor of this new class.
13534         (dw2_do_instantiate_symtab): Create instance of the new class
13535         dwarf2_queue_guard, remove cleanup.
13536
13537 2018-02-09  Tom Tromey  <tom@tromey.com>
13538
13539         * source.c (find_source_lines): Don't reference past the end of
13540         the vector.
13541
13542 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13543
13544         * remote.c (remote_btrace_maybe_reopen): Change error message.
13545         * btrace.c (btrace_enable): Likewise.
13546         (parse_xml_btrace): Likewise.
13547         (parse_xml_btrace_conf): Likewise.
13548
13549 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13550
13551         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
13552         (linux_enable_pt, linux_enable_bts): Call
13553         diagnose_perf_event_open_fail.
13554
13555 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13556
13557         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
13558         Remove parameter and change return type.  Update callers.  Move it.
13559         (linux_enable_bts, linux_enable_pt): Improve error message.
13560         (linux_enable_pt): Remove zero buffer size check.
13561         (linux_enable_btrace): Improve error messages.  Remove NULL return
13562         check.
13563
13564 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13565
13566         * btrace.c (btrace_enable): Remove target_supports_btrace call.
13567         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
13568         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
13569         (linux_supports_pt, linux_supports_btrace): Remove.
13570         (linux_enable_bts): Call cpu_supports_bts.
13571         * nat/linux-btrace.h (linux_supports_btrace): Remove.
13572         * remote.c (remote_supports_btrace): Remove.
13573         (init_remote_ops): Remove remote_supports_btrace.
13574         * target-delegates.c: Regenerated.
13575         * target.c (target_supports_btrace): Remove.
13576         * target.h (target_ops) <to_supports_btrace>: Remove
13577         (target_supports_btrace): Remove.
13578         * x86-linux-nat.c (x86_linux_create_target): Remove
13579         linux_supports_btrace.
13580
13581 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13582
13583         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
13584         btrace failed.
13585         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
13586         exception and use message in own exception.
13587
13588 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13589
13590         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
13591         (perf_event_pt_event_type): Use gdb_file_up.
13592         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
13593         scoped_fd, and scoped_mmap.
13594
13595 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13596
13597         * common/scoped_mmap.h: New.
13598         * unittests/scoped_mmap-selftest.c: New.
13599         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13600         unittests/scoped_mmap-selftest.c.
13601
13602 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
13603
13604         * common/scoped_fd.h: New.
13605         * unittests/scoped_fd-selftest.c: New.
13606         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13607         unittests/scoped_fd-selftest.c.
13608
13609 2018-02-09  Tom Tromey  <tom@tromey.com>
13610
13611         * auto-load.c (auto_load_section_scripts): Use
13612         gdb::unique_xmalloc_ptr.
13613
13614 2018-02-09  Tom Tromey  <tom@tromey.com>
13615
13616         * auto-load.c (execute_script_contents): Use std::string.
13617
13618 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
13619
13620         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
13621         Python function, rather than a new command.
13622
13623 2018-02-08  Tom Tromey  <tom@tromey.com>
13624
13625         * solib.c (solib_find_1): Use std::string.
13626         (solib_bfd_fopen): Use unique_xmalloc_ptr.
13627
13628 2018-02-08  Tom Tromey  <tom@tromey.com>
13629
13630         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
13631
13632 2018-02-08  Tom Tromey  <tom@tromey.com>
13633
13634         * source.c (find_source_lines): Use gdb::def_vector.
13635
13636 2018-02-08  Tom Tromey  <tom@tromey.com>
13637
13638         * macrocmd.c (struct temporary_macro_definition): New.
13639         (macro_define_command): Use temporary_macro_definition.  Remove
13640         cleanups.
13641         (free_macro_definition_ptr): Remove.
13642
13643 2018-02-08  Tom Tromey  <tom@tromey.com>
13644
13645         * macroexp.c (maybe_expand): Use std::string.
13646
13647 2018-02-08  Tom Tromey  <tom@tromey.com>
13648
13649         * macroexp.c (struct macro_buffer): Add initializers for some
13650         members.
13651         (init_buffer, init_shared_buffer, free_buffer)
13652         (free_buffer_return_text): Remove.
13653         (macro_buffer): New constructors.
13654         (~macro_buffer): New destructor.
13655         (macro_buffer::set_shared): New method.
13656         (macro_buffer::resize_buffer, macro_buffer::appendc)
13657         (macro_buffer::appendmem): Now methods, not free functions.
13658         (set_token, append_tokens_without_splicing, stringify)
13659         (macro_stringify): Update.
13660         (gather_arguments): Change return type.  Remove argc_p argument,
13661         add args_ptr argument.  Use std::vector.
13662         (substitute_args): Remove argc argument.  Accept std::vector.
13663         (expand): Update.  Use std::vector.
13664         (scan, macro_expand, macro_expand_next): Update.
13665
13666 2018-02-08  Tom Tromey  <tom@tromey.com>
13667
13668         * symtab.c (default_collect_symbol_completion_matches_break_on):
13669         Use unique_xmalloc_ptr.
13670         * macroscope.h: (sal_macro_scope, user_macro_scope)
13671         (default_macro_scope): Return unique_xmalloc_ptr.
13672         * macroscope.c (sal_macro_scope, user_macro_scope)
13673         (default_macro_scope): Return unique_xmalloc_ptr.
13674         * macroexp.h (macro_expand, macro_expand_once): Return
13675         unique_xmalloc_ptr.
13676         * macroexp.c (macro_expand, macro_expand_once): Return
13677         unique_xmalloc_ptr.
13678         * macrocmd.c (macro_expand_command, macro_expand_once_command)
13679         (info_macro_command, info_macros_command): Use
13680         unique_xmalloc_ptr.
13681         * compile/compile-c-support.c (write_macro_definitions): Use
13682         unique_xmalloc_ptr.
13683         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
13684
13685 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
13686
13687         * value.c (value_static_field): Assign field type instead of
13688         containing type when returning an optimized out value.
13689
13690 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13691
13692         * ft32-tdep.c (ft32_read_pc): Remove.
13693         (ft32_write_pc): Remove.
13694         (ft32_gdbarch_init): Update.
13695         * m32r-tdep.c (m32r_read_pc): Remove.
13696         (m32r_gdbarch_init): Update.
13697         * mep-tdep.c (mep_read_pc): Remove.
13698         (mep_gdbarch_init): Update.
13699         * microblaze-tdep.c (microblaze_write_pc): Remove.
13700         (microblaze_gdbarch_init): Update.
13701         * mn10300-tdep.c (mn10300_read_pc): Remove.
13702         (mn10300_write_pc): Remove.
13703         (mn10300_gdbarch_init): Update.
13704         * moxie-tdep.c (moxie_read_pc): Remove.
13705         (moxie_write_pc): Remove.
13706         (moxie_gdbarch_init): Update.
13707
13708 2018-02-06  Yao Qi  <yao.qi@linaro.org>
13709
13710         * expprint.c (print_subexp_standard): Handle
13711         OP_F77_UNDETERMINED_ARGLIST.
13712         (dump_subexp_body_standard): Likewise.
13713
13714 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
13715
13716         * target-descriptions.c (tdesc_element_visitor) Add empty
13717         implementations.
13718         (tdesc_type): Move make_gdb_type from here.
13719         (tdesc_type_builtin): Likewise.
13720         (tdesc_type_vector): Likewise.
13721         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
13722         (make_gdb_type_struct): Move from tdesc_type_with_fields.
13723         (make_gdb_type_union): Likewise.
13724         (make_gdb_type_flags): Likewise.
13725         (make_gdb_type_enum): Likewise.
13726         (make_gdb_type): New function.
13727         (tdesc_register_type): Use static make_gdb_type.
13728
13729 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
13730
13731         * infcmd.c (default_print_one_register_info): Align natural-format
13732         column values consistently one under another.
13733         (pad_to_column): New function.
13734
13735 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
13736
13737         * dwarf2read.c (dwarf2_physname): Move commment.
13738
13739 2018-02-01  Leszek Swirski  <leszeks@google.com>
13740
13741         * varobj.c (varobj_formatted_print_options): Allow recursive
13742         pretty printing if pretty printing is enabled.
13743
13744 2018-02-01  Leszek Swirski  <leszeks@google.com>
13745
13746         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
13747         names after a structop as a filename.
13748
13749 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13750
13751         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
13752         (arm_record_coproc_data_proc): Likewise.
13753
13754 2018-02-01  Yao Qi  <yao.qi@linaro.org>
13755
13756         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
13757
13758 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
13759
13760         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
13761         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
13762
13763 2018-01-31  Pedro Alves  <palves@redhat.com>
13764
13765         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
13766         * inflow.c (child_terminal_save_inferior): Wrap reference to
13767         tcgetpgrp in HAVE_TERMIOS_H.
13768         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
13769         _WIN32.
13770         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
13771         always iterate over all inferiors.
13772         (gdbsim_cntrl_c): Adjust.
13773         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
13774
13775 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13776
13777         * gdbtypes.c (lookup_array_range_type): Make sure the array's
13778         index type is objfile-owned if the element type is as well.
13779
13780 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
13781
13782         GDB 8.1 released.
13783
13784 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13785
13786         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
13787         "features/s390x-linux64.c".
13788         (_initialize_s390_linux_tdep): Remove initialization of tdescs
13789         s390_linux32 and s390x_linux64.
13790         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
13791         default tdesc.
13792         * s390-tdep.c: Include "features/s390-linux32.c" and
13793         "features/s390x-linux64.c".
13794         (s390_tdesc_valid): Add check for tdesc_has_registers.
13795         (s390_gdbarch_init): Make sure there is always a valid tdesc.
13796         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
13797         tdesc_s390x_linux64.
13798         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
13799         tdesc_s390x_linux64 to...
13800         * s390-tdep.h: ...here.
13801
13802 2018-01-30  Pedro Alves  <palves@redhat.com>
13803
13804         PR gdb/13211
13805         * config.in, configure: Regenerate.
13806         * configure.ac: Check for getpgid.
13807         * go32-nat.c (go32_pass_ctrlc): New.
13808         (go32_target): Install it.
13809         * inf-child.c (inf_child_target): Install
13810         child_terminal_save_inferior, child_pass_ctrlc and
13811         child_interrupt.
13812         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
13813         (inf_ptrace_target): No longer install it.
13814         * infcmd.c (interrupt_target_1): Adjust.
13815         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
13816         (child_interrupt): Declare.
13817         (inferior::terminal_state): New.
13818         * inflow.c (struct terminal_info): Update comments.
13819         (inferior_process_group): Delete.
13820         (terminal_is_ours): Delete.
13821         (gdb_tty_state): New.
13822         (child_terminal_init): Adjust.
13823         (is_gdb_terminal, sharing_input_terminal_1)
13824         (sharing_input_terminal): New functions.
13825         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
13826         Set the process's actual process group in the foreground if
13827         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
13828         mark terminal as the inferior's if not sharing GDB's terminal.
13829         Don't check attach_flag.
13830         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
13831         pass down a target_terminal_state.
13832         (child_terminal_save_inferior): New, factored out from ...
13833         (child_terminal_ours_1): ... this.  Handle
13834         target_terminal_state::is_ours_for_output.
13835         (child_interrupt, child_pass_ctrlc): New.
13836         (inflow_inferior_exit): Clear the inferior's terminal_state.
13837         (copy_terminal_info): Copy the inferior's terminal state.
13838         (_initialize_inflow): Remove reference to terminal_is_ours.
13839         * inflow.h (inferior_process_group): Delete.
13840         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
13841         * procfs.c (procfs_target): Don't install procfs_interrupt.
13842         (procfs_interrupt): Delete.
13843         * remote.c (remote_serial_quit_handler): Adjust.
13844         (remote_interrupt): Remove ptid parameter.  Adjust.
13845         * target-delegates.c: Regenerate.
13846         * target.c: Include "terminal.h".
13847         (target_terminal::terminal_state): Rename to ...
13848         (target_terminal::m_terminal_state): ... this.
13849         (target_terminal::init): Adjust.
13850         (target_terminal::inferior): Adjust to per-inferior
13851         terminal_state.
13852         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
13853         (target_terminal::ours, target_terminal::ours_for_output): Use
13854         target_terminal_is_ours_kind.
13855         (target_interrupt): Remove ptid parameter.  Adjust.
13856         (default_target_pass_ctrlc): Adjust.
13857         * target.h (target_ops::to_terminal_save_inferior): New field.
13858         (target_ops::to_interrupt): Remove ptid_t parameter.
13859         (target_interrupt): Remove ptid_t parameter.  Update comment.
13860         (target_pass_ctrlc): Update comment.
13861         * target/target.h (target_terminal_state): New scoped enum,
13862         factored out of ...
13863         (target_terminal::terminal_state): ... here.
13864         (target_terminal::inferior): Update comments.
13865         (target_terminal::restore_inferior): New.
13866         (target_terminal::is_inferior, target_terminal::is_ours)
13867         (target_terminal::is_ours_for_output): Adjust.
13868         (target_terminal::scoped_restore_terminal_state): Adjust to
13869         rename, and call restore_inferior() instead of inferior().
13870         (target_terminal::scoped_restore_terminal_state::m_state): Change
13871         type.
13872         (target_terminal::terminal_state): Rename to ...
13873         (target_terminal::m_terminal_state): ... this and change type.
13874
13875 2018-01-30  Pedro Alves  <palves@redhat.com>
13876
13877         * linux-nat.c (wait_for_signal): New function.
13878         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
13879         directly.
13880         (async_terminal_is_ours)
13881         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
13882         (linux_nat_add_target): Don't override
13883         to_terminal_inferior/to_terminal_ours.
13884
13885 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
13886
13887         * remote.c (remote_follow_fork): Don't call "detach_inferior".
13888
13889 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
13890
13891         * dwarf2read.c (free_dwo_files): Add forward-declaration.
13892         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
13893         dwarf2_per_objfile_free here.
13894         (dwarf2_per_objfile_free): Remove.
13895         (_initialize_dwarf2_read): Don't register
13896         dwarf2_per_objfile_free as a registry cleanup.
13897
13898 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
13899
13900         Avoid compilation errors in MinGW native builds
13901
13902         The error is triggered by including python-internal.h, and the
13903         error message is:
13904
13905              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
13906                       from build-gnulib/import/math.h:27,
13907                       from d:/usr/Python26/include/pyport.h:235,
13908                       from d:/usr/Python26/include/Python.h:58,
13909                       from python/python-internal.h:94,
13910                       from python/py-arch.c:24:
13911              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
13912         using ::hypot;
13913                 ^~~~~
13914
13915         This happens because Python headers define 'hypot' to expand t
13916         '_hypot' in the Windows builds.
13917         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
13918         'hypoth'.  This avoids a compilation error.
13919
13920 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13921
13922         * MAINTAINERS (Write After Approval): Fix ordering.
13923
13924 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
13925
13926         * MAINTAINERS (Write After Approval): Add Alan Hayward.
13927
13928 2018-01-26  Alan Modra  <amodra@gmail.com>
13929
13930         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
13931         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
13932         Remove nop.  Make const.  Comment.
13933         (powerpc32_plt_stub_so_2): New.
13934         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
13935         Correct count.  Update uses.
13936         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
13937         Move common code reading PLT entry word.  Correct
13938         powerpc32_plt_stub PLT address calculation.
13939         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
13940         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
13941         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
13942         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
13943         (ppc64_standard_linkage8): Likewise.
13944         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
13945         Correct insns description.
13946         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
13947
13948 2018-01-24  Pedro Alves  <palves@redhat.com>
13949
13950         GCC PR libstdc++/83906
13951         * gdbtypes.c (operator==(const dynamic_prop &,
13952         const dynamic_prop &)): New.
13953         (operator==(const range_bounds &, const range_bounds &)): New.
13954         (check_types_equal): Use them instead of memcmp.
13955         * gdbtypes.h (operator==(const dynamic_prop &,
13956         const dynamic_prop &)): Declare.
13957         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
13958         (operator==(const range_bounds &, const range_bounds &)): Declare.
13959         (operator!=(const range_bounds &, const range_bounds &)): Declare.
13960
13961 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13962
13963         * s390-linux-tdep.c (s390_record_address_mask)
13964         (s390_record_calc_disp_common, s390_record_calc_disp)
13965         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13966         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13967         (s390_process_record): Move to s390-tdep.c.
13968         (s390_linux_init_abi_any): Adjust.
13969         * s390-tdep.c (s390_record_address_mask)
13970         (s390_record_calc_disp_common, s390_record_calc_disp)
13971         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
13972         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
13973         (s390_process_record): Moved from s390-linux-tdep.c
13974         (s390_gdbarch_init): Adjust.
13975
13976 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
13977
13978         * s390-linux-nat.c (s390-tdep.h): New include.
13979         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
13980         (HFILES_NO_SRCDIR): Add s390-tdep.h.
13981         (ALLDEPFILES): Add s390-tdep.c.
13982         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
13983         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
13984         * s390-tdep.h: ...this.  New file.
13985         * s390-linux-tdep.c (s390-tdep.h): New include.
13986         (_initialize_s390_tdep): Rename to...
13987         (_initialize_s390_linux_tdep): ...this and adjust.
13988         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
13989         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
13990         s390-tdep.h.
13991         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
13992         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
13993         (s390_is_partial_instruction, s390_software_single_step)
13994         (is_non_branch_ril, s390_displaced_step_copy_insn)
13995         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
13996         (s390_prologue_data, s390_addr, s390_store, s390_load)
13997         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
13998         (s390_register_call_saved, s390_guess_tracepoint_registers)
13999         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
14000         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
14001         (s390_pseudo_register_name, s390_pseudo_register_type)
14002         (s390_pseudo_register_read, s390_pseudo_register_write)
14003         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
14004         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
14005         (s390_addr_bits_remove, s390_address_class_type_flags)
14006         (s390_address_class_type_flags_to_name)
14007         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
14008         (s390_function_arg_float, s390_function_arg_vector)
14009         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
14010         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
14011         (s390_frame_align, s390_register_return_value, s390_return_value)
14012         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
14013         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
14014         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
14015         (s390_trad_frame_prev_register, s390_unwind_cache)
14016         (s390_prologue_frame_unwind_cache)
14017         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
14018         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
14019         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
14020         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
14021         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
14022         (s390_frame_base_address, s390_local_base_address)
14023         (s390_frame_base, s390_gcc_target_options)
14024         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
14025         (s390_validate_reg_range, s390_tdesc_valid)
14026         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
14027         * s390-tdep.c: ...this.  New file.
14028
14029 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14030
14031         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
14032         (s390_process_record, s390_gdbarch_tdep_alloc)
14033         (s390_linux_init_abi_any): Use/set new hook.
14034
14035 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14036
14037         * s390-linux-tdep.c (osabi.h): New include.
14038         (s390_linux_init_abi_31, s390_linux_init_abi_64)
14039         (s390_linux_init_abi_any): New functions.
14040         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
14041
14042 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14043
14044         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
14045         tdesc_has_registers check
14046
14047 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14048
14049         * s390-linux-tdep.c (s390_tdesc_valid): New function.
14050         (s390_validate_reg_range): New macro.
14051         (s390_gdbarch_init): Adjust.
14052
14053 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14054
14055         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
14056         (s390_gdbarch_tdep_alloc): Adjust.
14057         (s390_gdbarch_init): Adjust.
14058
14059 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14060
14061         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
14062         <have_tdb>: Change type to bool.
14063         (s390_gdbarch_tdep_alloc): Adjust.
14064         (s390_gdbarch_init): Adjust.
14065
14066 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14067
14068         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
14069         (gdbarch_tdep) <have_upper, have_vx>: New fields.
14070         (s390_gdbarch_tdep_alloc): New function.
14071         (s390_gdbarch_init): Allocate tdep at start and use its fields
14072         instead of separate variables.
14073
14074 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14075
14076         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
14077         when looking for cached gdbarch and add comment for remaining.
14078
14079 2018-01-22  Pedro Alves  <palves@redhat.com>
14080             Sergio Durigan Junior  <sergiodj@redhat.com>
14081
14082         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
14083         case.
14084
14085 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
14086
14087         * MAINTAINERS: Update my company e-mail address.
14088
14089 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14090
14091         * regcache.c (cooked_write_test): New function.
14092         (_initialize_regcache): Register the test.
14093
14094 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14095
14096         * ia64-tdep.c (ia64_pseudo_register_read): Call
14097         regcache->cooked_read instead of regcache_cooked_read_unsigned.
14098         * m32c-tdep.c (m32c_cat_read): Likewise.
14099         (m32c_r3r2r1r0_read): Likewise.
14100         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14101         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14102
14103 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14104
14105         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
14106         method raw_read instead of regcache_raw_read.
14107         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14108         * arm-tdep.c (arm_neon_quad_read): Likewise.
14109         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14110         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14111         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14112         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
14113         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14114         (i386_pseudo_register_read_into_value): Likewise.
14115         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14116         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14117         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14118         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
14119         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
14120         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
14121         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14122         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
14123         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
14124
14125 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14126
14127         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
14128         * configure.tgt: Remove target mt.
14129         * mt-tdep.c: Remove.
14130         * regcache.c (cooked_read_test): Remove the check for mt.
14131
14132 2018-01-22  Yao Qi  <yao.qi@linaro.org>
14133
14134         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
14135         instead of gdbarch_pseudo_register_read_value.
14136
14137 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14138
14139         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
14140         language is Ada.
14141
14142 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
14143
14144         * linespec.c (create_sals_line_offset): Remove code that preserved
14145         the symtab_and_line's line number.
14146
14147 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14148
14149         * varobj.c (varobj_create): Don't set valid_block when creating a
14150         floating varobj.
14151
14152 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14153
14154         * varobj.c (varobj_create): Remove out of date comment.
14155
14156 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14157
14158         PR mi/20395
14159         * ada-exp.y (write_var_from_sym): Pass extra parameter when
14160         updating innermost block.
14161         * parse.c (innermost_block_tracker::update): Take extra type
14162         parameter, and check types match before updating innermost block.
14163         (write_dollar_variable): Update innermost block for registers.
14164         * parser-defs.h (enum innermost_block_tracker_type): New enum.
14165         (innermost_block_tracker::innermost_block_tracker): Initialise
14166         m_types member.
14167         (innermost_block_tracker::reset): Take type parameter.
14168         (innermost_block_tracker::update): Take type parameter, and pass
14169         type through as needed.
14170         (innermost_block_tracker::m_types): New member.
14171         * varobj.c (varobj_create): Pass type when reseting innermost
14172         block.
14173
14174 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14175
14176         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
14177         * ada-lang.c (resolve_subexp): Likewise.
14178         * breakpoint.c (set_breakpoint_condition) Likewise.
14179         (watch_command_1) Likewise.
14180         * c-exp.y (variable): Likewise.
14181         * d-exp.y (PrimaryExpression): Likewise.
14182         * f-exp.y (variable): Likewise.
14183         * go-exp.y (variable): Likewise.
14184         * m2-exp.y (variable): Likewise.
14185         * objfiles.c (objfile::~objfile): Likewise.
14186         * p-exp.y (variable): Likewise.
14187         * parse.c (innermost_block): Change type.
14188         * parser-defs.h (class innermost_block_tracker): New.
14189         (innermost_block): Change to innermost_block_tracker.
14190         * printcmd.c (display_command): Switch to innermost_block API.
14191         (do_one_display): Likewise.
14192         * rust-exp.y (do_one_display): Likewise.
14193         * symfile.c (clear_symtab_users): Likewise.
14194         * varobj.c (varobj_create): Switch to innermost_block API, replace
14195         use of innermost_block with block stored on varobj object.
14196
14197 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
14198
14199         * expression.h (innermost_block): Remove declaration.
14200         * varobj.c: Add 'parser-defs.h' include.
14201
14202 2018-01-19  Tom Tromey  <tom@tromey.com>
14203
14204         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
14205         symbols in the static and global blocks.
14206
14207 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
14208
14209         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
14210         gdb_ptrace.h, and move including gdb_wait.h ...
14211         * nat/linux-ptrace.h: ... to here.
14212
14213 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14214
14215         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
14216         inf_ptrace_detach_success.
14217         (inf_ptrace_detach_success): Add inferior parameter, use it
14218         instead of inferior_ptid, pass it to detach_inferior.
14219         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
14220         parameter.
14221         * inferior.c (detach_inferior): Add overload that takes an
14222         inferior object.
14223         * inferior.h (detach_inferior): Likewise.
14224         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
14225         use inferior_ptid, adjust call to inf_ptrace_detach_success.
14226         * linux-thread-db.c (thread_db_detach): Use inf parameter.
14227
14228 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14229
14230         * target.h (struct target_ops) <to_detach>: Add inferior
14231         parameter.
14232         (target_detach): Likewise.
14233         * target.c (dispose_inferior): Pass inferior down.
14234         (target_detach): Pass inferior down.  Assert that it is equal to
14235         the current inferior.
14236         * aix-thread.c (aix_thread_detach): Pass inferior down.
14237         * corefile.c (core_file_command): Pass current_inferior() down.
14238         * corelow.c (core_detach): Add inferior parameter.
14239         * darwin-nat.c (darwin_detach): Likewise.
14240         * gnu-nat.c (gnu_detach): Likewise.
14241         * inf-ptrace.c (inf_ptrace_detach): Likewise.
14242         * infcmd.c (detach_command): Pass current_inferior() down to
14243         target_detach.
14244         * infrun.c (follow_fork_inferior): Pass parent_inf to
14245         target_detach.
14246         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
14247         target_detach.
14248         * linux-nat.c (linux_nat_detach): Add inferior parameter.
14249         * linux-thread-db.c (thread_db_detach): Likewise.
14250         * nto-procfs.c (procfs_detach): Likewise.
14251         * procfs.c (procfs_detach): Likewise.
14252         * record.c (record_detach): Likewise.
14253         * record.h (struct inferior): Forward-declare.
14254         (record_detach): Add inferior parameter.
14255         * remote-sim.c (gdbsim_detach): Likewise.
14256         * remote.c (remote_detach_1): Likewise.
14257         (remote_detach): Likewise.
14258         (extended_remote_detach): Likewise.
14259         * sol-thread.c (sol_thread_detach): Likewise.
14260         * target-debug.h (target_debug_print_inferior_p): New macro.
14261         * target-delegates.c: Re-generate.
14262         * top.c (kill_or_detach): Pass inferior down to target_detach.
14263         * windows-nat.c (windows_detach): Add inferior parameter.
14264
14265 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
14266
14267         * target.h (struct target_ops) <to_detach>: Remove args
14268         parameter.
14269         (target_detach): Likewise.
14270         * target.c (dispose_inferior): Adjust.
14271         (target_detach): Remove args parameter, adjust.
14272         * aix-thread.c (aix_thread_detach): Adjust.
14273         * corefile.c (core_file_command): Adjust.
14274         * corelow.c (core_detach): Adjust.
14275         * darwin-nat.c (darwin_detach): Adjust.
14276         * gnu-nat.c (gnu_detach): Adjust.
14277         * inf-ptrace.c (inf_ptrace_detach): Adjust.
14278         * infcmd.c (detach_command): Adjust
14279         * infrun.c (follow_fork_inferior): Adjust.
14280         (handle_vfork_child_exec_or_exit): Adjust.
14281         * linux-fork.c (linux_fork_detach): Remove args parameter.
14282         * linux-fork.h (linux_fork_detach): Likewise.
14283         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
14284         * linux-thread-db.c (thread_db_detach): Likewise.
14285         * nto-procfs.c (procfs_detach): Likewise.
14286         * procfs.c (procfs_detach): Likewise.
14287         (do_detach): Remove signo parameter.
14288         * record.c (record_detach): Remove args parameter.
14289         * record.h (record_detach): Likewise.
14290         * remote-sim.c (gdbsim_detach): Likewise.
14291         * remote.c (remote_detach_1): Likewise.
14292         (remote_detach): Likewise.
14293         (extended_remote_detach): Likewise.
14294         * sol-thread.c (sol_thread_detach): Likewise.
14295         * target-delegates.c: Re-generate.
14296         * top.c (struct qt_args) <args>: Remove field.
14297         (kill_or_detach): Don't pass args.
14298         (quit_force): Don't set args.
14299         * windows-nat.c (windows_detach): Remove args parameter.
14300
14301 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14302
14303         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
14304         (arm_linux_init_abi): Install it.
14305
14306 2018-01-19  Yao Qi  <yao.qi@linaro.org>
14307
14308         * osabi.c (gdb_osabi_names): Extend the regexp for
14309         arm-linux-gnueabihf.
14310
14311 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14312
14313         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
14314         m_abbrevs.
14315         (abbrev_table::add_abbrev): Update.
14316         (abbrev_table::lookup_abbrev): Update.
14317
14318 2018-01-18  Yao Qi  <yao.qi@linaro.org>
14319
14320         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
14321
14322 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
14323
14324         * compile/compile.c (compile_to_object): Convert "triplet_rx"
14325         to "std::string".
14326
14327 2018-01-17  Tom Tromey  <tom@tromey.com>
14328
14329         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
14330
14331 2018-01-17  Tom Tromey  <tom@tromey.com>
14332
14333         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
14334         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
14335         (create_array_type_with_stride): Update.
14336         * dwarf2read.c (set_die_type): Update.
14337
14338 2018-01-17  Tom Tromey  <tom@tromey.com>
14339
14340         * dwarf2read.c (delayed_method_info): Remove typedef.
14341         (dwarf2_cu::method_info): Now a std::vector.
14342         (add_to_method_list): Update.
14343         (free_delayed_list): Remove.
14344         (compute_delayed_physnames): Update.
14345         (process_full_comp_unit, process_full_type_unit): Clear the method
14346         list.  Remove cleanups.
14347         (psymtab_include_file_name): Add name_holder parameter.  Use
14348         unique_xmalloc_ptr.
14349         (dwarf_decode_lines): Update.
14350
14351 2018-01-17  Tom Tromey  <tom@tromey.com>
14352             Simon Marchi  <simon.marchi@ericsson.com>
14353
14354         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
14355         (dwarf2_per_objfile::free_cached_comp_units)
14356         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14357         (init_cutu_and_read_dies_no_follow): Update.
14358         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
14359         (dwarf2_cu::~dwarf2_cu): New.
14360         (free_heap_comp_unit, free_stack_comp_unit): Remove.
14361         (age_cached_comp_units, free_one_cached_comp_unit): Update.
14362
14363 2018-01-17  Tom Tromey  <tom@tromey.com>
14364             Simon Marchi  <simon.marchi@ericsson.com>
14365
14366         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
14367         (struct die_reader_specs) <abbrev_table>: New member.
14368         (struct abbrev_table): Add constructor.
14369         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
14370         <abbrev_obstack>: Now an auto_obstack.
14371         (abbrev_table_up): New typedef.
14372         (init_cu_die_reader): Add abbrev_table parameter.
14373         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
14374         Add result_dwo_abbrev_table.
14375         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
14376         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
14377         Update.
14378         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
14379         parameter.
14380         (skip_children): Update.
14381         (abbrev_table::alloc_abbrev): Rename from
14382         abbrev_table_alloc_abbrev.
14383         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
14384         (abbrev_table::lookup_abbrev): Rename from
14385         abbrev_table_lookup_abbrev.
14386         (abbrev_table_read_table): Return abbrev_table_up.
14387         (abbrev_table_free, abbrev_table_free_cleanup)
14388         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
14389         (load_partial_dies): Update.
14390
14391 2018-01-17  Tom Tromey  <tom@tromey.com>
14392
14393         * dwarf2read.c (dwarf2_compute_name): Update comment.
14394         (read_func_scope, read_variable): Update.
14395         (new_symbol): Remove.
14396         (new_symbol_full): Rename to new_symbol.
14397
14398 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
14399
14400         PR gdb/16577
14401         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
14402         a warning instead of throwing an error, set section size to 0 and return
14403         NULL.
14404         * gdb_bfd.h (gdb_bfd_map_section): Update description.
14405
14406 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14407
14408         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
14409         std::string.
14410         (linux_ptrace_attach_fail_reason_string): Likewise.
14411         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
14412         Likewise.
14413         (linux_ptrace_attach_fail_reason_string): Likewise.
14414         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
14415
14416 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
14417
14418         * linux-nat.c (linux_nat_attach): Remove xstrdup.
14419
14420 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
14421
14422         PR gdb/21559
14423         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
14424         checking for fs_base/gs_base fields in struct user_regs_struct.
14425         * configure: Regenerate.
14426
14427 2018-01-17  Yao Qi  <yao.qi@linaro.org>
14428
14429         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
14430         function.
14431         (aarch64_linux_init_abi): Install it to gdbarch hook
14432         gcc_target_options.
14433
14434 2018-01-15  Pedro Alves  <palves@redhat.com>
14435
14436         * common/signals-state-save-restore.c
14437         (save_original_signals_state): Fix typos.
14438
14439 2017-01-12  Tom Tromey  <tom@tromey.com>
14440             Sergio Durigan Junior  <sergiodj@redhat.com>
14441
14442         * Makefile.in (install-only): Install gdb-add-index.
14443
14444 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
14445
14446         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
14447
14448 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14449
14450         * infrun.c (keep_going_pass_signal): Clear step-over info when
14451         insert_breakpoints fails.
14452
14453 2018-01-11  Pedro Alves  <palves@redhat.com>
14454
14455         PR gdb/22583
14456         * infrun.c (resume): Rename to ...
14457         (resume_1): ... this.
14458         (resume): Reimplement as wrapper around resume_1.
14459
14460 2018-01-11  Pedro Alves  <palves@redhat.com>
14461
14462         PR remote/22597
14463         * remote.c (remote_parse_stop_reply): Default to the last-set
14464         general thread instead of to 'magic_null_ptid'.
14465
14466 2018-01-10  Pedro Alves  <palves@redhat.com>
14467
14468         * language.h (language_get_symbol_name_matcher): Rename ...
14469         (get_symbol_name_matcher): ... this.
14470         * language.c (language_get_symbol_name_matcher): Ditto.
14471         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
14472         callers adjusted.
14473
14474 2018-01-10  Pedro Alves  <palves@redhat.com>
14475
14476         PR gdb/22670
14477         * dwarf2read.c
14478         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
14479         Adjust to use language_get_symbol_name_matcher instead of
14480         language_defn::la_get_symbol_name_matcher.
14481         * language.c (language_get_symbol_name_matcher): If in Ada mode
14482         and the lookup name is a verbatim match, return Ada's matcher.
14483         * language.h (language_get_symbol_name_matcher): Adjust comment.
14484         (ada_lookup_name_info::verbatim_p):: New method.
14485
14486 2018-01-10  Pedro Alves  <palves@redhat.com>
14487
14488         PR gdb/22670
14489         * ada-lang.c (ada_collect_symbol_completion_matches): If the
14490         minsym's language is language_auto or language_cplus, pass down
14491         language_ada instead.
14492         * symtab.c (compare_symbol_name): Don't frob symbol language here.
14493
14494 2018-01-10  Pedro Alves  <palves@redhat.com>
14495
14496         PR gdb/22670
14497         * minsyms.c (linkage_name_str): New function.
14498         (iterate_over_minimal_symbols): Use it.
14499
14500 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14501
14502         * NEWS: Document that 'info proc' now works on FreeBSD.
14503
14504 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14505
14506         * configure.ac: Check for kinfo_getfile in libutil.
14507         * configure: Regenerate.
14508         * config.in: Regenerate.
14509         * fbsd-nat.c: Include "fbsd-tdep.h".
14510         (fbsd_fetch_cmdline): New.
14511         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
14512         rather than calling error.
14513         (fbsd_info_proc): New.
14514         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
14515         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
14516         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
14517
14518 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14519
14520         * fbsd-nat.c (struct free_deleter): Remove.
14521         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
14522
14523 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14524
14525         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
14526         NULL for an empty pathname.
14527
14528 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
14529
14530         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
14531         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
14532         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
14533         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
14534         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
14535         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
14536         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
14537         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
14538         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
14539         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
14540         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
14541         (fbsd_core_fetch_timeval, fbsd_print_sigset)
14542         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
14543         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
14544         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
14545
14546 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
14547
14548         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
14549         (gnu_xfer_auxv): New function.
14550         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
14551         TARGET_OBJECT_AUXV.
14552
14553 2018-01-08  Yao Qi  <yao.qi@linaro.org>
14554             Simon Marchi  <simon.marchi@ericsson.com>
14555
14556         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
14557         common/selftest.c.
14558         (COMMON_OBS): Remove selftest.o.
14559         * configure.ac: Append selftest-arch.c and common/selftest.c to
14560         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
14561         * configure: Re-generated.
14562         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
14563         GDB_SELF_TEST.
14564         (maintenance_info_selftests): Likewise.
14565
14566 2018-01-08  Xavier Roirand  <roirand@adacore.com>
14567
14568         * ada-valprint.c (val_print_packed_array_elements): Use
14569         proper number of elements when printing an array indexed
14570         by an enumeration type.
14571
14572 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14573
14574         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
14575         (dw2_get_file_names_reader): Adjust.
14576         (lookup_dwo_signatured_type): Adjust.
14577         (lookup_dwp_signatured_type): Adjust.
14578         (lookup_signatured_type): Adjust.
14579         (create_type_unit_group): Adjust.
14580         (get_type_unit_group): Adjust.
14581         (process_psymtab_comp_unit_reader): Adjust.
14582         (build_type_psymtabs_reader): Adjust.
14583         (scan_partial_symbols): Adjust.
14584         (add_partial_symbol): Adjust.
14585         (add_partial_subprogram): Adjust.
14586         (peek_die_abbrev): Adjust.
14587         (fixup_go_packaging): Adjust.
14588         (process_imported_unit_die): Adjust.
14589         (dwarf2_compute_name): Adjust.
14590         (dwarf2_physname): Adjust.
14591         (read_import_statement): Adjust.
14592         (handle_DW_AT_stmt_list): Adjust.
14593         (read_file_scope): Adjust.
14594         (read_func_scope): Adjust.
14595         (read_lexical_block_scope): Adjust.
14596         (read_call_site_scope): Adjust.
14597         (read_variable): Adjust.
14598         (dwarf2_rnglists_process): Adjust.
14599         (dwarf2_ranges_process): Adjust.
14600         (dwarf2_ranges_read): Adjust.
14601         (dwarf2_get_pc_bounds): Adjust.
14602         (dwarf2_record_block_ranges): Adjust.
14603         (dwarf2_add_field): Adjust.
14604         (dwarf2_add_member_fn): Adjust.
14605         (read_structure_type): Adjust.
14606         (process_structure_scope): Adjust.
14607         (read_enumeration_type): Adjust.
14608         (read_array_type): Adjust.
14609         (mark_common_block_symbol_computed): Adjust.
14610         (read_common_block): Adjust.
14611         (read_namespace_type): Adjust.
14612         (read_namespace): Adjust.
14613         (read_module_type): Adjust.
14614         (read_tag_pointer_type): Adjust.
14615         (read_tag_ptr_to_member_type): Adjust.
14616         (read_tag_string_type): Adjust.
14617         (read_subroutine_type): Adjust.
14618         (read_typedef): Adjust.
14619         (read_base_type): Adjust.
14620         (attr_to_dynamic_prop): Adjust.
14621         (read_subrange_type): Adjust.
14622         (read_unspecified_type): Adjust.
14623         (dwarf2_read_abbrevs): Adjust.
14624         (load_partial_dies): Adjust.
14625         (read_partial_die): Adjust.
14626         (find_partial_die): Adjust.
14627         (guess_partial_die_structure_name): Adjust.
14628         (fixup_partial_die): Adjust.
14629         (read_attribute_value): Adjust.
14630         (read_addr_index): Adjust.
14631         (read_addr_index_from_leb128): Adjust.
14632         (read_str_index): Adjust.
14633         (dwarf2_string_attr): Adjust.
14634         (get_debug_line_section): Adjust.
14635         (dwarf_decode_line_header): Adjust.
14636         (lnp_state_machine::check_line_address): Adjust.
14637         (dwarf_decode_lines_1): Adjust.
14638         (dwarf_decode_lines): Adjust.
14639         (dwarf2_start_symtab): Adjust.
14640         (var_decode_location): Adjust.
14641         (new_symbol_full): Adjust.
14642         (dwarf2_const_value_data): Adjust.
14643         (dwarf2_const_value_attr): Adjust.
14644         (dwarf2_const_value): Adjust.
14645         (die_type): Adjust.
14646         (die_containing_type): Adjust.
14647         (build_error_marker_type): Adjust.
14648         (lookup_die_type): Adjust.
14649         (guess_full_die_structure_name): Adjust.
14650         (anonymous_struct_prefix): Adjust.
14651         (determine_prefix): Adjust.
14652         (dwarf2_name): Adjust.
14653         (follow_die_ref_or_sig): Adjust.
14654         (follow_die_offset): Adjust.
14655         (follow_die_ref): Adjust.
14656         (follow_die_sig_1): Adjust.
14657         (follow_die_sig): Adjust.
14658         (get_signatured_type): Adjust.
14659         (get_DW_AT_signature_type): Adjust.
14660         (decode_locdesc): Adjust.
14661         (dwarf_decode_macros): Adjust.
14662         (cu_debug_loc_section): Adjust.
14663         (fill_in_loclist_baton): Adjust.
14664         (dwarf2_symbol_mark_computed): Adjust.
14665         (init_one_comp_unit): Don't assign
14666         dwarf2_cu::dwarf2_per_objfile.
14667         (set_die_type): Adjust.
14668
14669 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14670
14671         * dwarf2read.c (struct mapped_debug_names): Add constructor.
14672         <dwarf2_per_objfile>: New field.
14673         (dwarf2_per_objfile): Remove global.
14674         (get_dwarf2_per_objfile): New function.
14675         (set_dwarf2_per_objfile): New function.
14676         (dwarf2_build_psymtabs_hard): Change objfile parameter to
14677         dwarf2_per_objfile.
14678         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14679         (read_abbrev_offset): Likewise.
14680         (read_indirect_string): Likewise.
14681         (read_indirect_line_string): Likewise.
14682         (read_indirect_string_at_offset): Likewise.
14683         (read_indirect_string_from_dwz): Likewise.
14684         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14685         dwarf2_per_objfile.
14686         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14687         (create_all_comp_units): Change objfile parameter to
14688         dwarf2_per_objfile.
14689         (create_all_type_units): Likewise.
14690         (process_queue): Add dwarf2_per_objfile parameter.
14691         (read_and_check_comp_unit_head): Likewise.
14692         (lookup_dwo_unit_in_dwp): Likewise.
14693         (get_dwp_file): Likewise.
14694         (process_cu_includes): Likewise.
14695         (struct free_dwo_file_cleanup_data): New struct.
14696         (dwarf2_has_info): Use get_dwarf2_per_objfile and
14697         set_dwarf2_per_objfile.
14698         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
14699         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
14700         context, adjust calls.
14701         (dw2_instantiate_symtab): Likewise.
14702         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
14703         (dw2_get_cu): Likewise.
14704         (create_cu_from_index_list): Change objfile parameter to
14705         dwarf2_per_objfile.
14706         (create_cus_from_index_list): Get dwarf2_per_objfile from
14707         context, adjust calls.
14708         (create_cus_from_index): Likewise.
14709         (create_signatured_type_table_from_index): Change objfile
14710         parameter to dwarf2_per_objfile.
14711         (create_signatured_type_table_from_debug_names): Change objfile
14712         parameter to dwarf2_per_objfile.
14713         (create_addrmap_from_index): Likewise.
14714         (create_addrmap_from_aranges): Likewise.
14715         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
14716         (dw2_setup): Remove.
14717         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
14718         context.
14719         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
14720         get_dwarf2_per_objfile.
14721         (dw2_forget_cached_source_info): Likewise.
14722         (dw2_map_symtabs_matching_filename): Likewise.
14723         (struct dw2_symtab_iterator) <index>: Remove.
14724         <dwarf2_per_objfile>: New field.
14725         (dw2_symtab_iter_init): Replace index parameter with
14726         dwarf2_per_objfile.
14727         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
14728         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
14729         (dw2_print_stats): Likewise.
14730         (dw2_dump): Likewise.
14731         (dw2_expand_symtabs_for_function): Likewise.
14732         (dw2_expand_all_symtabs): Likewise.
14733         (dw2_expand_symtabs_with_fullname): Likewise.
14734         (dw2_expand_marked_cus): Replace index and objfile parameters
14735         with dwarf2_per_objfile.
14736         (dw_expand_symtabs_matching_file_matcher): Add
14737         dwarf2_per_objfile parameter and adjust calls.
14738         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
14739         adjust calls.
14740         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
14741         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
14742         adjust calls.
14743         (create_cus_from_debug_names_list): Replace objfile parameter
14744         with dwarf2_per_objfile and adjust calls.
14745         (create_cus_from_debug_names): Likewise.
14746         (dwarf2_read_debug_names): Likewise.
14747         (mapped_debug_names::namei_to_name): Adjust call.
14748         (dw2_debug_names_iterator::next): Likewise.
14749         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
14750         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
14751         (dw2_debug_names_dump): Likewise.
14752         (dw2_debug_names_expand_symtabs_for_function): Likewise.
14753         (dw2_debug_names_expand_symtabs_matching): Likewise.
14754         (dwarf2_initialize_objfile): Likewise.
14755         (dwarf2_build_psymtabs): Likewise.
14756         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
14757         this_cu.
14758         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
14759         (read_and_check_comp_unit_head): Likewise.
14760         (read_abbrev_offset): Likewise.
14761         (create_debug_type_hash_table): Likewise.
14762         (create_debug_types_hash_table): Likewise.
14763         (create_all_type_units): Replace objfile parameter with
14764         dwarf2_per_objfile.
14765         (add_type_unit): Add dwarf2_per_objfile parameter.
14766         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
14767         with dwarf2_per_objfile.
14768         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
14769         (lookup_dwp_signatured_type): Likewise.
14770         (lookup_signatured_type): Likewise.
14771         (read_cutu_die_from_dwo): Likewise.
14772         (init_tu_and_read_dwo_dies): Likewise.
14773         (init_cutu_and_read_dies): Likewise.
14774         (init_cutu_and_read_dies_no_follow): Likewise.
14775         (allocate_type_unit_groups_table): Add objfile parameter.
14776         (create_type_unit_group): Use dwarf2_per_objfile from cu.
14777         (get_type_unit_group): Likewise.
14778         (process_psymtab_comp_unit): Update call.
14779         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
14780         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
14781         (print_tu_stats): Likewise.
14782         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
14783         in void* parameter.
14784         (build_type_psymtabs): Change objfile parameter to
14785         dwarf2_per_objfile.
14786         (process_skeletonless_type_unit): Use dwarf2_per_objfile
14787         passed in void* parameter.
14788         (process_skeletonless_type_units): Change objfile parameter to
14789         dwarf2_per_objfile.
14790         (set_partial_user): Likewise.
14791         (dwarf2_build_psymtabs_hard): Likewise.
14792         (read_comp_units_from_section): Likewise.
14793         (create_all_comp_units): Likewise.
14794         (scan_partial_symbols): Update calls.
14795         (add_partial_symbol): Likewise.
14796         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
14797         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
14798         (process_queue): Add dwarf2_per_objfile parameter.
14799         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
14800         (compute_compunit_symtab_includes): Likewise.
14801         (process_cu_includes): Add dwarf2_per_objfile parameter.
14802         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
14803         (process_full_type_unit): Likewise.
14804         (process_imported_unit_die): Update call.
14805         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
14806         (read_file_scope): Likewise.
14807         (allocate_dwo_file_hash_table): Add objfile parameter.
14808         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
14809         (create_cus_hash_table): Likewise.
14810         (create_dwp_hash_table): Likewise.
14811         (create_dwo_unit_in_dwp_v1): Likewise.
14812         (create_dwp_v2_section): Likewise.
14813         (create_dwo_unit_in_dwp_v2): Likewise.
14814         (lookup_dwo_unit_in_dwp): Likewise.
14815         (try_open_dwop_file): Likewise.
14816         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
14817         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
14818         cleanup to include a reference to dwarf2_per_objfile.
14819         (open_dwp_file): Add dwarf2_per_objfile parameter.
14820         (open_and_init_dwp_file): Likewise.
14821         (get_dwp_file): Likewise.
14822         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
14823         (queue_and_load_all_dwo_tus): Update call.
14824         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
14825         data.
14826         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
14827         (dwarf2_ranges_process): Likewise.
14828         (dwarf2_get_pc_bounds): Likewise.
14829         (mark_common_block_symbol_computed): Likewise.
14830         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
14831         (dwarf2_read_abbrevs): Update call.
14832         (read_partial_die): Use dwarf2_per_objfile from cu.
14833         (find_partial_die): Likewise.
14834         (fixup_partial_die): Likewise.
14835         (read_attribute_value): Likewise.
14836         (read_indirect_string_at_offset_from): Add objfile parameter.
14837         (read_indirect_string_at_offset): Add dwarf2_per_objfile
14838         parameter.
14839         (read_indirect_string_from_dwz): Add objfile parameter.
14840         (read_indirect_string): Add objfile parameter.
14841         (read_addr_index_1): Add dwarf2_per_objfile parameter.
14842         (read_addr_index): Use dwarf2_per_objfile from cu.
14843         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
14844         call dw2_setup.
14845         (read_str_index): Use dwarf2_per_objfile from cu.
14846         (get_debug_line_section): Likewise.
14847         (read_formatted_entries): Add dwarf2_per_objfile parameter.
14848         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
14849         (new_symbol_full): Use dwarf2_per_objfile from cu.
14850         (build_error_marker_type): Likewise.
14851         (lookup_die_type): Likewise.
14852         (determine_prefix): Likewise.
14853         (follow_die_offset): Likewise.
14854         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
14855         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
14856         (dwarf2_fetch_die_type_sect_off): Likewise.
14857         (dwarf2_get_die_type): Likewise.
14858         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
14859         (get_signatured_type): Likewise.
14860         (get_DW_AT_signature_type): Likewise.
14861         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
14862         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
14863         (cu_debug_loc_section): Likewise.
14864         (fill_in_loclist_baton): Likewise.
14865         (dwarf2_symbol_mark_computed): Likewise.
14866         (dwarf2_find_containing_comp_unit): Change objfile parameter to
14867         dwarf2_per_objfile.
14868         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
14869         parameter.
14870         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
14871         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
14872         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
14873         (set_die_type): Use dwarf2_free_objfile from cu.
14874         (get_die_type_at_offset): Likewise.
14875         (dwarf2_per_objfile_free): Don't assign global variable.
14876         (debug_names) <constructor>: Add dwarf2_per_objfile
14877         parameter, update m_debugstrlookup construction.
14878         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
14879         parameter.
14880         <m_dwarf2_per_objfile>: New field.
14881         <lookup>: Use m_dwarf2_per_objfile.
14882         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
14883         (psyms_seen_size): Likewise.
14884         (write_gdbindex): Replace objfile parameter with
14885         dwarf2_per_objfile.
14886         (write_debug_names): Likewise.
14887         (write_psymtabs_to_index): Likewise.
14888         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
14889         calls.
14890
14891 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14892
14893         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
14894         <dwarf2_per_objfile>: New field.
14895         (struct dwarf2_per_cu_data) <objfile>: Remove.
14896         <dwarf2_per_objfile>: New field.
14897         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
14898         of objfile.
14899         (create_signatured_type_table_from_index): Likewise.
14900         (create_debug_type_hash_table): Likewise.
14901         (fill_in_sig_entry_from_dwo_entry): Likewise.
14902         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
14903         (create_type_unit_group): Assign dwarf2_per_objfile instead of
14904         objfile.
14905         (create_partial_symtab): Access objfile through
14906         dwarf2_per_objfile.
14907         (process_psymtab_comp_unit_reader): Likewise.
14908         (read_comp_units_from_section): Likewise.
14909         (scan_partial_symbols): Likewise.
14910         (add_partial_symbol): Likewise.
14911         (add_partial_subprogram): Likewise.
14912         (peek_die_abbrev): Likewise.
14913         (fixup_go_packaging): Likewise.
14914         (process_full_comp_unit): Likewise.
14915         (process_full_type_unit): Likewise.
14916         (process_imported_unit_die): Likewise.
14917         (dwarf2_compute_name): Likewise.
14918         (dwarf2_physname): Likewise.
14919         (read_import_statement): Likewise.
14920         (create_cus_hash_table): Assign dwarf2_physname instead of
14921         objfile.
14922         (read_func_scope): Access objfile through dwarf2_per_objfile.
14923         (read_lexical_block_scope): Likewise.
14924         (read_call_site_scope): Likewise.
14925         (read_variable): Likewise.
14926         (dwarf2_rnglists_process): Likewise.
14927         (dwarf2_ranges_process): Likewise.
14928         (dwarf2_ranges_read): Likewise.
14929         (dwarf2_record_block_ranges): Likewise.
14930         (dwarf2_add_field): Likewise.
14931         (dwarf2_add_member_fn): Likewise.
14932         (read_structure_type): Likewise.
14933         (process_structure_scope): Likewise.
14934         (read_enumeration_type): Likewise.
14935         (read_array_type): Likewise.
14936         (read_common_block): Likewise.
14937         (read_namespace_type): Likewise.
14938         (read_namespace): Likewise.
14939         (read_module_type): Likewise.
14940         (read_tag_pointer_type): Likewise.
14941         (read_tag_ptr_to_member_type): Likewise.
14942         (read_tag_string_type): Likewise.
14943         (read_subroutine_type): Likewise.
14944         (read_typedef): Likewise.
14945         (read_base_type): Likewise.
14946         (attr_to_dynamic_prop): Likewise.
14947         (read_subrange_type): Likewise.
14948         (read_unspecified_type): Likewise.
14949         (load_partial_dies): Likewise.
14950         (read_partial_die): Likewise.
14951         (find_partial_die): Likewise.
14952         (guess_partial_die_structure_name): Likewise.
14953         (fixup_partial_die): Likewise.
14954         (read_attribute_value): Likewise.
14955         (read_addr_index_from_leb128): Likewise.
14956         (dwarf2_read_addr_index): Likewise.
14957         (dwarf2_string_attr): Likewise.
14958         (lnp_state_machine::check_line_address): Likewise.
14959         (dwarf_decode_lines_1): Likewise.
14960         (dwarf_decode_lines): Likewise.
14961         (dwarf2_start_symtab): Likewise.
14962         (var_decode_location): Likewise.
14963         (new_symbol_full): Likewise.
14964         (dwarf2_const_value_data): Likewise.
14965         (dwarf2_const_value_attr): Likewise.
14966         (dwarf2_const_value): Likewise.
14967         (die_type): Likewise.
14968         (die_containing_type): Likewise.
14969         (lookup_die_type): Likewise.
14970         (guess_full_die_structure_name): Likewise.
14971         (anonymous_struct_prefix): Likewise.
14972         (dwarf2_name): Likewise.
14973         (follow_die_ref_or_sig): Likewise.
14974         (follow_die_offset): Likewise.
14975         (follow_die_ref): Likewise.
14976         (dwarf2_fetch_die_loc_sect_off): Likewise.
14977         (dwarf2_fetch_constant_bytes): Likewise.
14978         (dwarf2_fetch_die_type_sect_off): Likewise.
14979         (dwarf2_get_die_type): Likewise.
14980         (follow_die_sig): Likewise.
14981         (decode_locdesc): Likewise.
14982         (dwarf2_per_cu_objfile): Likewise.
14983         (dwarf2_per_cu_text_offset): Likewise.
14984         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
14985         objfile.
14986         (set_die_type): Access objfile through
14987         dwarf2_per_objfile.
14988
14989 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
14990
14991         * valprint.c (converted_character_d): Remove typedef.
14992         (DEF_VEC_O (converted_character_d)): Remove.
14993         (count_next_character): Use std::vector.
14994         (print_converted_chars_to_obstack): Likewise.
14995         (generic_printstr): Likewise.
14996
14997 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
14998
14999         * xml-support.h (struct gdb_xml_value): Add constructor.
15000         <value>: Change type to unique_xmalloc_ptr.
15001         (gdb_xml_value_s): Remove typedef.
15002         (DEF_VEC_O (gdb_xml_value_s)): Remove.
15003         (gdb_xml_element_start_handler): Change parameter type to
15004         std::vector.
15005         (xml_find_attribute): Likewise.
15006         * xml-support.c (xml_find_attribute): Change parameter type to
15007         std::vector and adjust.
15008         (gdb_xml_values_cleanup): Remove.
15009         (gdb_xml_parser::start_element): Adjust to std::vector.
15010         (xinclude_start_include): Change paraeter type to std::vector
15011         and adjust.
15012         * btrace.c (check_xml_btrace_version): Likewise.
15013         (parse_xml_btrace_block): Likewise.
15014         (parse_xml_btrace_pt_config_cpu): Likewise.
15015         (parse_xml_btrace_pt): Likewise.
15016         (parse_xml_btrace_conf_bts): Likewise.
15017         (parse_xml_btrace_conf_pt): Likewise.
15018         * memory-map.c (memory_map_start_memory): Likewise.
15019         (memory_map_start_property): Likewise.
15020         * osdata.c (osdata_start_osdata): Likewise.
15021         (osdata_start_item): Likewise.
15022         (osdata_start_column): Likewise.
15023         * remote.c (start_thread): Likewise.
15024         * solib-aix.c (library_list_start_library): Likewise.
15025         (library_list_start_list): Likewise.
15026         * solib-svr4.c (library_list_start_library): Likewise.
15027         (svr4_library_list_start_list): Likewise.
15028         * solib-target.c (library_list_start_segment): Likewise.
15029         (library_list_start_section): Likewise.
15030         (library_list_start_library): Likewise.
15031         (library_list_start_list): Likewise.
15032         * tracepoint.c (traceframe_info_start_memory): Likewise.
15033         (traceframe_info_start_tvar): Likewise.
15034         * xml-syscall.c (syscall_start_syscall): Likewise.
15035         * xml-tdesc.c (tdesc_start_target): Likewise.
15036         (tdesc_start_feature): Likewise.
15037         (tdesc_start_reg): Likewise.
15038         (tdesc_start_union): Likewise.
15039         (tdesc_start_struct): Likewise.
15040         (tdesc_start_flags): Likewise.
15041         (tdesc_start_enum): Likewise.
15042         (tdesc_start_field): Likewise.
15043         (tdesc_start_enum_value): Likewise.
15044         (tdesc_start_vector): Likewise.
15045
15046 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15047
15048         * extension.h (struct xmethod_worker) <clone>: Remove.
15049         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
15050         Remove.
15051         (python_xmethod_worker::clone): Remove.
15052         * valops.c (find_overload_match): Use std::move instead of
15053         clone.
15054
15055 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15056
15057         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
15058         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
15059         <free_xmethod_worker_data>: Remove.
15060         <get_matching_xmethod_workers>: Chance VEC to std::vector.
15061         <get_xmethod_arg_types>: Remove.
15062         <get_xmethod_result_type>: Remove.
15063         <invoke_xmethod>: Remove.
15064         * extension.c (new_xmethod_worker): Remove.
15065         (clone_xmethod_worker): Remove.
15066         (get_matching_xmethod_workers): Return void, pass std::vector by
15067         pointer.
15068         (get_xmethod_arg_types): Rename to...
15069         (xmethod_worker::get_arg_types): ... this, and adjust.
15070         (get_xmethod_result_type): Rename to...
15071         (xmethod_worker::get_result_type): ... this, and adjust.
15072         (invoke_xmethod): Remove.
15073         (free_xmethod_worker): Remove.
15074         (free_xmethod_worker_vec): Remove.
15075         * extension.h (enum ext_lang_rc): Move here from
15076         extension-priv.h.
15077         (struct xmethod_worker): Add constructor and destructor.
15078         <data>: Remove.
15079         <value>: Remove.
15080         <invoke, clone, do_get_result_type, do_get_arg_types>: New
15081         virtual pure methods.
15082         <get_arg_types, get_result_type>: New methods.
15083         (xmethod_worker_ptr): Remove typedef.
15084         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
15085         (xmethod_worker_vec): Remove typedef.
15086         (xmethod_worker_up): New typedef.
15087         (invoke_xmethod): Remove.
15088         (clone_xmethod_worker): Remove.
15089         (free_xmethod_worker): Remove.
15090         (free_xmethod_worker_vec): Remove.
15091         (get_xmethod_arg_types): Remove.
15092         (get_xmethod_result_type): Remove.
15093         * valops.c (find_method_list): Use std::vector, don't use
15094         intermediate vector.
15095         (value_find_oload_method_list): Use std::vector.
15096         (find_overload_match): Use std::vector.
15097         (find_oload_champ): Use std::vector.
15098         * value.c (value_free): Use operator delete.
15099         (value_of_xmethod): Rename to...
15100         (value_from_xmethod): ... this.  Don't assign
15101         xmethod_worker::value, take rvalue-reference.
15102         (result_type_of_xmethod): Adjust.
15103         (call_xmethod): Adjust.
15104         * value.h: Include extension.h.
15105         (struct xmethod_worker): Don't forward-declare.
15106         (value_of_xmethod): Rename to...
15107         (value_from_xmethod): ... this, take rvalue-reference.
15108         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
15109         (struct python_xmethod_worker): ... this, add constructor and
15110         destructor.
15111         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
15112         (gdbpy_free_xmethod_worker_data): Rename to...
15113         (python_xmethod_worker::~python_xmethod_worker): ... this and
15114         adjust.
15115         (gdbpy_clone_xmethod_worker_data): Rename to...
15116         (python_xmethod_worker::clone): ... this and adjust.
15117         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
15118         temporary vector.
15119         (gdbpy_get_xmethod_arg_types): Rename to...
15120         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
15121         (gdbpy_get_xmethod_result_type): Rename to...
15122         (python_xmethod_worker::do_get_result_type): ... this and
15123         adjust.
15124         (gdbpy_invoke_xmethod): Rename to...
15125         (python_xmethod_worker::invoke): ... this and adjust.
15126         (new_python_xmethod_worker): Rename to...
15127         (python_xmethod_worker::python_xmethod_worker): ... this and
15128         adjust.
15129         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
15130         Remove.
15131         (gdbpy_free_xmethod_worker_data): Remove.
15132         (gdbpy_get_matching_xmethod_workers): Use std::vector.
15133         (gdbpy_get_xmethod_arg_types): Remove.
15134         (gdbpy_get_xmethod_result_type): Remove.
15135         (gdbpy_invoke_xmethod): Remove.
15136         * python/python.c (python_extension_ops): Remove obsolete
15137         callbacks.
15138
15139 2018-01-05  Pedro Alves  <palves@redhat.com>
15140
15141         PR gdb/18653
15142         * common/signals-state-save-restore.c
15143         (save_original_signals_state): New parameter 'quiet'.  Warn if we
15144         find a custom handler preinstalled, instead of internal erroring.
15145         But only warn if !quiet.
15146         * common/signals-state-save-restore.h
15147         (save_original_signals_state): New parameter 'quiet'.
15148         * main.c (captured_main_1): Move save_original_signals_state call
15149         after option handling, and pass QUIET.
15150
15151 2018-01-05  Pedro Alves  <palves@redhat.com>
15152
15153         * spu-tdep.c (spu_catch_start): Pass
15154         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
15155
15156 2018-01-05  Pedro Alves  <palves@redhat.com>
15157
15158         PR gdb/22670
15159         * ada-lang.c (literal_symbol_name_matcher): New function.
15160         (ada_get_symbol_name_matcher): Use it for
15161         symbol_name_match_type::SEARCH_NAME.
15162         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
15163         it down instead of assuming symbol_name_match_type::FULL.
15164         * block.h (block_lookup_symbol): New parameter 'match_type'.
15165         * c-valprint.c (print_unpacked_pointer): Use
15166         lookup_symbol_search_name instead of lookup_symbol.
15167         * compile/compile-object-load.c (get_out_value_type): Pass down
15168         symbol_name_match_type::SEARCH_NAME.
15169         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
15170         symbol_name_match_type::FULL.
15171         * cp-support.c (cp_get_symbol_name_matcher): Handle
15172         symbol_name_match_type::SEARCH_NAME.
15173         * infrun.c (insert_exception_resume_breakpoint): Use
15174         lookup_symbol_search_name.
15175         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
15176         * psymtab.c (maintenance_check_psymtabs): Use
15177         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
15178         * stack.c (print_frame_args): Use lookup_symbol_search_name and
15179         SYMBOL_SEARCH_NAME.
15180         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
15181         if symbol_name_match_type::SEARCH_NAME.
15182         (lookup_symbol_in_language): Pass down
15183         symbol_name_match_type::FULL.
15184         (lookup_symbol_search_name): New.
15185         (lookup_language_this): Pass down
15186         symbol_name_match_type::SEARCH_NAME.
15187         (lookup_symbol_aux, lookup_local_symbol): New parameter
15188         'match_type'.  Pass it down.
15189         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
15190         (lookup_symbol_search_name): New declaration.
15191         (lookup_symbol_in_block): New 'match_type' parameter.
15192
15193 2018-01-05  Pedro Alves  <palves@redhat.com>
15194
15195         PR gdb/22670
15196         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
15197         ada_lookup_symbol.
15198         (ada_lookup_symbol): Reimplement in terms of
15199         ada_lookup_symbol_list, bits factored out from
15200         ada_lookup_encoded_symbol.
15201
15202 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15203
15204         * ada-exp.y (write_object_renaming): When subscripting an array
15205         using a symbol as the index, pass the block in call to
15206         ada_lookup_encoded_symbol when looking that symbol up.
15207
15208 2018-01-05  Jerome Guitton  <guitton@adacore.com>
15209
15210         * ada-lang.c (ada_array_length): Use ada_index_type instead of
15211         TYPE_INDEX_TYPE.
15212
15213 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15214
15215         * ada-lang.c (ada_to_fixed_value_create): Add handling of
15216         the case where VALUE_LVAL (val0) is not lval_memory.
15217
15218 2018-01-05  Xavier Roirand  <roirand@adacore.com>
15219
15220         * ada-valprint.c (print_optional_low_bound): Handle
15221         character-indexed array printing like boolean-indexed array
15222         printing.
15223
15224 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15225
15226         * NEWS: Create a new section for the next release branch.
15227         Rename the section of the current branch, now that it has
15228         been cut.
15229
15230 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
15231
15232         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
15233         * version.in: Bump version to 8.1.50.DATE-git.
15234
15235 2018-01-03  Xavier Roirand  <roirand@adacore.com>
15236
15237         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
15238         Add field.
15239         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
15240         Add field.
15241         (default_exception_support_info) <catch_handlers_sym>: Add field.
15242         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
15243         (ada_exception_name_addr_1): Add "catch handlers" handling.
15244         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
15245         Update all callers.
15246         (create_excep_cond_exprs) <ex>: Add parameter.
15247         (re_set_exception): Update create_excep_cond_exprs call.
15248         (print_it_exception, print_one_exception, print_mention_exception)
15249         (print_recreate_exception): Add "catch handler" handling.
15250         (allocate_location_catch_handlers, re_set_catch_handlers)
15251         (check_status_catch_handlers, print_it_catch_handlers)
15252         (print_one_catch_handlers, print_mention_catch_handlers)
15253         (print_recreate_catch_handlers): New function.
15254         (catch_handlers_breakpoint_ops): New variable.
15255         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
15256         Add parameter.  Add "catch handler" handling.
15257         (ada_exception_sym_name, ada_exception_breakpoint_ops):
15258         Add "catch handler" handling.
15259         (ada_exception_catchpoint_cond_string): Add "catch handler"
15260         handling.
15261         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
15262         call.
15263         (catch_ada_handlers_command): New function.
15264         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
15265         operations structure.
15266         (_initialize_ada_language): Add "catch handlers" command entry.
15267         * NEWS: Document "catch handlers" feature.
15268
15269 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15270
15271         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
15272         account when creating the array type of the slice.
15273         (ada_value_slice): Likewise.
15274
15275 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15276
15277         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
15278         New enum value.
15279         (create_array_type_with_stride): Add byte_stride_prop parameter.
15280         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
15281         New parameter.  Update all callers in this file.
15282         (array_type_has_dynamic_stride): New function.
15283         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
15284         of arrays with dynamic byte strides.
15285         * dwarf2read.c (read_array_type): Add support for dynamic
15286         DW_AT_byte_stride attributes.
15287
15288 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
15289
15290         * dwarf2read.c (read_unspecified_type): Treat
15291         DW_TAG_enumeration_type DIEs from Ada units as stubs.
15292
15293 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15294
15295         Update copyright year range in all GDB files.
15296
15297 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
15298
15299         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
15300         and gdb/testsuite/gdb.base/step-line.c.
15301
15302 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15303
15304         * copyright.py (main): Dump the contents of
15305         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
15306         even if BY_HAND is empty.
15307
15308 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15309
15310         * top.c (print_gdb_version): Update Copyright year in version
15311         message.
15312
15313 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
15314
15315         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
15316
15317 For older changes see ChangeLog-2017.
15318 \f
15319 Local Variables:
15320 mode: change-log
15321 left-margin: 8
15322 fill-column: 74
15323 version-control: never
15324 coding: utf-8
15325 End: